Dobry wieczór,
Zająłem się realizacją projektu wyświetlacza LCD w oparciu o bibliotekę opisaną w książce Pana Mirosława Kardasia "Bluebook". Bo zbudowaniu całego układu oraz "napisaniu" biblioteki napotkałem problemy z którymi nie mogę dać sobie rady. Początkowe problemy wynikały z niedokładnego zlutowania układu i z tym poradziłem sobie sam, jednak nadal na wyświetlaczu nie mogę wyświetlać tekstu. Sprawa wygląda następująco:
Wyświetlacz którego używam:
https://botland.com.pl/pl/wyswietlacze- ... elony.htmlMikrokontroler: AtMega32A PU DIP
Podłączenie pinów
RS = A6
RW = GND
E = A5
D4 = A4
D5=A3
D6=A1
D7=A0
1. Mogę inicjować wyświetlacz, jest to jedyna komenda na którą reaguje LCD (tzn, mogę też tego nie robić i zobaczę efekty w postaci niezałączonego wyświetlacza). Po zainicjowaniu całość prezentuje się następująco:
Dodam jeszcze, że po samym zainicjowaniu wyświetlacza na porcie D4 utrzymuje się stan wysoki (oraz na portach zasilania wyświetlacza i podświetlenia).
2. Jeżeli wpisze komendę która ma za zadanie wyświetlić tekst na ekranie, to nic się nie dzieje. Na portach D4, RS utrzymuje się stan wysoki (oraz na portach zasilania i podświetlenia).
3. Jedyny "tekstowy" efekt jaki udało mi się otrzymać to po pocieraniu spodu wyświetlacza ukazują się takie znaki:
4. Mam taką jeszcze drobną uwagę, kontrolując czy wszystko jest w porządku z układem dodałem do niego diodę podpiętą pod port PD6 mikrokontrolera. Po wgraniu kodu który ma załączyć ją na 1s a następnie na 1s zgasić dioda rzeczywiście na to reaguje, ale w odwrotnej kolejności, to znaczy na początek przez 1s jest zgaszona a dopiero później na 1s się zapala. Kod programu migającego diodami:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
5. Mogę regulować kontrast.
6. Kod programu obsługującego wyświetlacz poprzedzam komendą #define F_CPU 1000000UL aby ustawić taktowanie mikroprocesora.
7. Taki sam efekt uzyskuję korzystając z różnych bibliotek udostępnionych w internecie (np. biblioteka Pana Radzio).
EDIT: 7. Biblioteka jest zmodyfikowaną (to znaczy z portami zdefiniowanymi na potrzeby mojej konstrukcji) biblioteką z erraty do wydania dostępnej na stronie.