Witam
Chciałbym prosić o pomoc. Mam problem z odbiorem łańcucha znaków poprzez uart, a następnie porównanie ze wzorcem i wykonanie odpowiedniego rozkazu. Korzystam z pierwszej wersji niebieskiej książki (niestety zielonej nie mam) i wykorzystałem z niej kod do obsługi tego interfejsu. Wykombinowałem taki kod, który jest wykonywany po wykryciu że coś zostało odebrane:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
A w int main(void)
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
I reszta do obsługi LED.
Efekty jakie uzyskuje:
Gdy wyślę on1, dioda się zapala, w terminalu dostaje:
Kod:
Ilosc elementow w tablicy: 3
tablica: on1
wzorzec1: on1
wzorzec2 :on2
wzorzec3 :off
Gdy wyślę on2, nic się nie dzieje, w terminalu dostaje:
Kod:
Ilosc elementow w tablicy: 3
tablica: on2
wzorzec1: on1
wzorzec2 :on2
wzorzec3 :off
Gdy wyślę off, również nic się nie dzieję, nadal jest zapalona dioda LED1. Terminal:
Kod:
Ilosc elementow w tablicy: 3
tablica: off
wzorzec1: on1
wzorzec2 :on2
wzorzec3 :off
Po resecie uC, wysyłam najpierw on2. I zapala się LED1 zamiast oczekiwanego LED2. Terminal:
Kod:
Ilosc elementow w tablicy: 3
tablica: on2
wzorzec1: on1
wzorzec2 :on2
wzorzec3 :off
Gdzieś coś źle robię i nie mogę doszukać się gdzie a kod jest bardzo prosty. Wg tego co wypluwa terminal, to powinno działać. Dodaję sccren z terminala:
