Witam
Zauważyłem pewien problem i szukam rozwiązania..
Mając Atmega162 - dwa sprzętowe UARTy, chcę je wykorzystać, urządzenie które podpięte jest pod RX nadaje linie danych zakończone CRLF, więc skonfigurowałem w taki sposób:
A w programie odbieram standardowo (oczywiście z uwzględnieniem flagi z Serial0charmatch) poprzez:
Powyższe rozwiązanie działa prawidłowo
Problem zaczyna się przy przejściu z odbiorem danych z tego samego urządzenia na drugi UART.. Analogicznie zapisuję konfigurację:
Odbieranie realizowane poprzez (oczywiście z uwzględnieniem flagi z Serial1charmatch):
I teraz niestety w stringu odebranych danych (zmienna "Linia") występuje znak LF (bądź CR - któryś z nich), wydawać by się mogło, iż konfiguracja polecenia "Input Linia" nie dotyczy już polecenia "Input #2 , Linia". Może trzeba to jakoś inaczej skonfigurować? Bardzo proszę o rozjaśnienie sytuacji. Pozdrawiam
Zauważyłem pewien problem i szukam rozwiązania..
Mając Atmega162 - dwa sprzętowe UARTy, chcę je wykorzystać, urządzenie które podpięte jest pod RX nadaje linie danych zakończone CRLF, więc skonfigurowałem w taki sposób:
Config Com1 = 9600 , Synchrone = 0 , Parity = None , Stopbits = 1 , Databits = 8 , Clockpol = 0
Config Serialin0 = Buffered , Size = 250 , Bytematch = 10
Config Input = Crlf , Echo = Off
Enable Interrupts
A w programie odbieram standardowo (oczywiście z uwzględnieniem flagi z Serial0charmatch) poprzez:
Input Linia
Powyższe rozwiązanie działa prawidłowo
Problem zaczyna się przy przejściu z odbiorem danych z tego samego urządzenia na drugi UART.. Analogicznie zapisuję konfigurację:
Config Com2 = 9600 , Synchrone = 0 , Parity = None , Stopbits = 1 , Databits = 8 , Clockpol = 0
Config Serialin1 = Buffered , Size = 250 , Bytematch = 10
Config Input = Crlf , Echo = Off
Open "com2:" For Binary As #2
Enable Interrupts
Odbieranie realizowane poprzez (oczywiście z uwzględnieniem flagi z Serial1charmatch):
Input #2 , Linia
I teraz niestety w stringu odebranych danych (zmienna "Linia") występuje znak LF (bądź CR - któryś z nich), wydawać by się mogło, iż konfiguracja polecenia "Input Linia" nie dotyczy już polecenia "Input #2 , Linia". Może trzeba to jakoś inaczej skonfigurować? Bardzo proszę o rozjaśnienie sytuacji. Pozdrawiam