Witam
poniżej program na procesor Atmega 128 w c++ . kompilowany jest w AVR Studio (WinAvr)
problem polega na tym że po wykonaniu pierwszej funkcji program zamiast wykonywać kolejne wychodzi i zaczyna od początku.
w programie głównym po naciśnięciu klawisza zostaje wywołana funkcja lcd_init();
w niej wykonywane są kolejno instrukcje aż do funkcji lcd_send(0x03);
ta funkcja jest realizowana a następnie program zaczyna od nowa a powinien dojść do końca funkcji lcd_init(); .
komenda SET_LED; była wstawiona by wykryć które to miejsce nie działa.
co może być nie tak?
ps. podobnie jest po naciśnięciu drugiego klawisza ... ma wykonać lcd_write_data(0x41);
a w tej funkcji dochodzi (zagłębia) się do lcd_send(_data >> 4); wykonuje ją i zaczyna od nowa.
poniżej program na procesor Atmega 128 w c++ . kompilowany jest w AVR Studio (WinAvr)
problem polega na tym że po wykonaniu pierwszej funkcji program zamiast wykonywać kolejne wychodzi i zaczyna od początku.
w programie głównym po naciśnięciu klawisza zostaje wywołana funkcja lcd_init();
w niej wykonywane są kolejno instrukcje aż do funkcji lcd_send(0x03);
ta funkcja jest realizowana a następnie program zaczyna od nowa a powinien dojść do końca funkcji lcd_init(); .
komenda SET_LED; była wstawiona by wykryć które to miejsce nie działa.
co może być nie tak?
ps. podobnie jest po naciśnięciu drugiego klawisza ... ma wykonać lcd_write_data(0x41);
a w tej funkcji dochodzi (zagłębia) się do lcd_send(_data >> 4); wykonuje ją i zaczyna od nowa.
Kod: text