1. Kod poprawiony
2. Trochę poczytałem, ale widzę, że w "projekcie wielozadaniowym" dot. właśnie rozdziału systemów czasu rzeczywistego, odbiór przez UART, czyli użycie funkcji uart_getc() jest też zrobione jako warunek na if'ie:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
To co "próbowałem zrobić" wyżej na if'ach działało, ale jak wstawiam taki sam warunek w pętlę to wykonuje się ona tylko raz. Stąd moje pytanie, jak zrobić żeby wykonywała się cały czas i w zależności od innego odebranego znaku nastąpiło przerwanie wykonywania pętli?
3. Mam kolejny problem z odbieraniem stringów. Z poradnika Antystatycznego mam taką funkcję do odbioru stringów:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
W main'ie wywołuje ją w taki sposób:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
gdzie buf to:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
I wszystko śmiga, tylko jeżeli teraz chciałbym w if'ie w zależności od odebranego stringa coś robić, to jak należy taki warunek skonstruować?
Próbowałem chyba na wszystkie możliwe sposoby:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
jak już program wejdzie w ten warunek if(buf[0]=='A') to jeżeli dam w tym warunku uart_puts(buf[0]) to nic nie wyświetla na terminalu.
Z kolei if(buf[1]=='B') działa, jeżeli wysyłam B w 3 znaku. Nic z tego nie rozumiem

Mógłby ktoś mi to jakoś rozjaśnić?
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.