App 2 Inventor de sayilarla ilgili sorularim

Başlatan Zoroaster, 08 Ağustos 2018, 17:01:16

Zoroaster

Herhangi bir degiskene her turlu veri atabiliyor olmamiz kafami karistiriyor.

Telefona blueTooth ile pespese 0x41, 0x42 verilerini yolladigimda bunu android tarafinda 16 bit integer olarak 0x4142  (yada farketmez 0x4241) seklinde degerlendirmek istersem ne yapacagim?

Ayni sekilde 0x41 ve 0x42 verilerini ekranda ASCI karakterler olarak AB (yada farketmez ASCI BA) olarak gostermek istersem ne yapacagim?

0x80..0xFF sayilar negatif sayi olarak ele aliniyor. Bunlari isaretsiz sayi olarak nasil degerlendirecegim.
Seytan deliginden kacti.

Kabil ATICI

Burada gönderdiğin verinin ne olduğunu biliyor ve ne şekilde geleceğinden emin isen, en azından belirttiğin rakamları her biri bir ASC karakter olacak şekilde gönder ve o şekilde alırsın. senin örnekteki gibi 0x34,0x31,0x34,0x32 gibi...ASC rakam karşılıkları...

Eğer rakamların bir karakteri temsil ediyorsa,A, ve B gibi... o zaman bu zaten gönderilen ASC karakteri, bu durumda zaten hex sayılar zaten char temsil ediyor  string olarak alıp kullanabilirsin.

Diğerlerini uygun şekilde parçala ve o şekilde gönder. Veri yoğunluğun artar gelen gidenden emin olursun...
ambar7

elektronik

#2



Zoroaster

#3
Gelen verileri Labelin Label.text içeriğine aktarırsam ve örneğin 0x41 alındı ise bunu ekranda 65 olarak görüyorum.

Halbuki mantıken A harfi görmeyi beklerim.

@elektronik cevabin bos gorunuyor fakat mesajindan alinti yaparsam cevap alani icinde iki tane carpi isareti olan kutucuk goruyorum.
Seytan deliginden kacti.

elektronik

hocam alırkende aynı yöntemi uygulayabilirisniz

Zoroaster

#5
Cevaplardan bir sey anlamadim.

Simdi bir degiskenim var. Karsidan 0x41 ve 0x42 yolladim. Bu degiskende 'AB' texti olusmasi icin ne yapmam lazim?

Diger durum da bu degiskende 0x4142 16 bitlik sayinin olusmasi icin ne yapmam lazim?

Yok oyle kirmizi text kutucugu ile veri verirsem sorun yok.

Sorunum blutoothdan n bye oku kutucugu ile okudugum degerlerle ilgi.
Seytan deliginden kacti.

elektronik

#6
hocam bu haliyle karşıya 4142 gönderip labelde 4142 görüyorum


Zoroaster

Kafam iyice karisti.

MCU ile telefona 0x41 0x42 0x43 0x44 0x12 0x84 verilerini yolluyorum.

Telefon ilk 4 karakterden string olustursun ve bir ABCD olarak labelda gostersin.
0x12 ve 0x84 verilerini 16 bitlik 0x1284 olarak olustursun ve sonucu 4740 olarak bir baska labelde gostersin.

Bunun kodlamasini yapabilirmisiniz?
Seytan deliginden kacti.


Zoroaster

#9
Galiba sorunu cozdum.

Ayni degiskene ister text, ister hex, ister lojik deger atayabiliyoruz.
Dolayisi ile bahsettigim turde karmasalar olusuyor.

Adamlar text veri alacaksam Bluetooth.receivetext diye modul yapmislar.

Gene ayni sekilde 16 ya da  32 bit veri alacaksam bunun icin receive 2 byte ve receive 4 byte diye blok olusturmuslar. Hatta gelen veriler isaretsiz ise unsigned isaretli ise signed diye ayrica moduller de var.

Bundan sonrasini cozerim artik.

Eger gelen bytelari yukaridaki ornegimde oldugu gibi tek tek alip bunlari birlestirerek string yada int degerler yapmak icin bayagi uzun kodlar yazmak gerekecek ama gerek yokmus.
Seytan deliginden kacti.