Witam,
Trochę posiedziałem nad tym problemem i przeszukałem "wszystko" w kodzie, dokumentacji i gdziekolwiek jeszcze mogłem i przez przypadek natrafiłem na takie coś... (kod jest z poprawionej wersji "LCD")
W pliku
lcd44780.c mamy definicję dwóch funkcji, które działają po ustawieniu ich na '1' w
lcd44780.h:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
oraz
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Tak więc tworzenie znaków ma miejsce w
main.c np.:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
później wywołanie tego znaku, zgodnie z ideą w książce i w standardowym pliku
main.c jest następujące:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Jednak to w cale nie pokazuje zdefiniowanego znaku 'ą' lecz standardowy znak spod adresu '0x80'.
Jednakże, wywołanie funkcji:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
...już
pokaże nam znak 'ą'!
Coś takiego:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Nie zamienia nam 0x80 na 0x00...
...to takie moje spostrzeżenie, nad którym się teraz zastanawiam dlaczego tak jest jeśli chodzi o ten wyświetlacz ze sterownikiem WS0010.
Jeśli chodzi o
Timing, o którym wcześniej pisaliśmy, to po serii testów widać, że standardowa inicjacja jest poprawna i wyświetlacz dobrze się zachowuje.