Hej,
Chciałem wysłać 3 znaki z VB do atmegi i wrzucić je na lcd. W VB stworzyłem sobie przycisk, który wykonuje następującą operację: MSComm5.Output = "123". Atmega odbiera to za pomocą kodu:
No i jak wcisnę przycisk w VB to na lcd pojawia mi się "2", po kolejnym wciśnięciu "3", a po jeszcze jednym "1". Później znowu "2", itd. No i teraz się zastanawiam dlaczego tak się dzieje? Czy UDR jest w stanie zapamiętać tylko 1 znak na raz? Czy można jakoś odebrać te wszystkie 3 znaki i na raz wrzucić je na lcd? Bo jeśli dobrze rozumiem, to LCD_write_char() służy do zapisu tylko 1 znaku. Dlaczego zatem pierwszy zapisany znak to "2", a nie "1"?
Chciałem wysłać 3 znaki z VB do atmegi i wrzucić je na lcd. W VB stworzyłem sobie przycisk, który wykonuje następującą operację: MSComm5.Output = "123". Atmega odbiera to za pomocą kodu:
Kod: C / C++
No i jak wcisnę przycisk w VB to na lcd pojawia mi się "2", po kolejnym wciśnięciu "3", a po jeszcze jednym "1". Później znowu "2", itd. No i teraz się zastanawiam dlaczego tak się dzieje? Czy UDR jest w stanie zapamiętać tylko 1 znak na raz? Czy można jakoś odebrać te wszystkie 3 znaki i na raz wrzucić je na lcd? Bo jeśli dobrze rozumiem, to LCD_write_char() służy do zapisu tylko 1 znaku. Dlaczego zatem pierwszy zapisany znak to "2", a nie "1"?