Stránka 1 z 1
Možnost přijetí na Seriovem portu jen byte 0-127
Napsal: 12 led 2014, 12:42
od michalino
Dobrý den všem a hezký nový rok,
prosím Vás o radu.
Odešlu na seriový port ATMELU znak BYTE například příkazem
serialport.Write(Chr(127))
Chr tedy může bez problémů nabývat hodnot 0 až 127
Vše je v pořádku, získám takovou hodnotu 0- 127 na Atmelu
ale
když odešlu chr v rozmezí 128 až 256
nedostanu v Atmelu nic....
přitom jsem si dříve s tímto hrál a dostal jsem hodnotu určitě v rozmezí celého byte 0-256 v pořádku....
čím by to prosím mohlo být?
děkuji
Napsal: 12 led 2014, 13:02
od hakamusai
Tak tohle je dotaz pro člověka s věšteckou koulí.Připomíná mi to dotaz typu -nejede mi auto ,proč ?

Napsal: 12 led 2014, 13:12
od michalino
Tomu rozumím Hakamusai, proč tak píšeš, já myslel, že bude problém někde v obecném, známém problému, protože když vše funguje pro 0-127 tak mě nenapadá při správných deklaracích, které jsem kontroloval X krát, kde jindy by to mohlo být...
je rozdíl v příjetí byt 0-127
a 128-256?
když deklarace proměnné, kde se ukládá přijatý byte, je BYTE?
neexistuje tedy nic obecně známého, nějaká častá chyba? Pokud ne, budu bádat dál nad svou chybou.
děkuji
Napsal: 12 led 2014, 13:34
od hakamusai
Věřím,že Ty víš o co konkrétně jde,ale ostatní neví -např. v jakém jazyce(vypadalo by to i na Pascal),co za překladač atd. Může být problém i v datovém typu.
Napsal: 12 led 2014, 15:35
od michalino
Tak zkouším na úplně nejjednodušším základu, úplný základ a začátek:
Přijímací rutina v bascomu je:
Dim prijatyznak as byte
While Ischarwaiting() > 0
Prijatyznak = Inkey()
Waitms 100
locate 1,1
lcd prijatyznak
waitms 1000
cls
Wend
Odesílám zaručeně správně byte, protože 0-127 mi to zobrazí a vše nahoru do 256 mi to nezobrazí nic, tedy jen BYTE=63, což je otazník.
Prosím o pomoc,
děkuji
Napsal: 12 led 2014, 20:24
od monterjirka
A nemáš nějak omezen příjem, jen na 7 bitů (což by odpovídalo hodnotám 0 - 127) a při příchodu 8 bitového čísla s 1 (H) na nejvyšším místě to bere jako signalizovanou chybu přenosu a celé to "zahodí"
Napsal: 12 led 2014, 22:23
od AB1
Jak říká monterjirka, podívej se v Bascomu na nastavení Menu-Options-Communication jestli tam máš správně Databits=8.
A zkontroluj to i na vysílací straně.