ATNEL tech-forum
https://forum.atnel.pl/

AtMega32A problemy z wyświetlaczem LCD
https://forum.atnel.pl/topic23151.html
Strona 1 z 1

Autor:  Siemson22 [ 22 maja 2020, o 19:32 ]
Tytuł:  AtMega32A problemy z wyświetlaczem LCD

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.html

Mikrokontroler: 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:
Obrazek
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:
Obrazek

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:
Składnia: [ Pobierz ] [ Ukryj ]
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.

Autor:  Szofer [ 22 maja 2020, o 20:33 ]
Tytuł:  Re: AtMega32A problemy z wyświetlaczem LCD

Jakie IDE używasz? Bo jak eklipse to się nie definiuje w kodzie taktowania a w propertisach.

JTAG wyłączony?

Pzdrawiam

Autor:  Siemson22 [ 22 maja 2020, o 20:42 ]
Tytuł:  Re: AtMega32A problemy z wyświetlaczem LCD

Eclipse Mars, taktowanie także ustawiam w zakładce Project->properties->AVR->target hardware.
Czy w przypadku wyłączenia JTAGA chodzi o linijki:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

bo jeśli tak, to mam wyłączony.

Autor:  auers [ 22 maja 2020, o 20:52 ]
Tytuł:  Re: AtMega32A problemy z wyświetlaczem LCD

Na pewno piny do LCD masz podłączone zgodnie z tym co masz zdefiniowane w bibliotece?
Siemson22 napisał(a):
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:
A jak podłączyłeś tą diodę?

Autor:  mirekk36 [ 22 maja 2020, o 20:58 ]
Tytuł:  Re: AtMega32A problemy z wyświetlaczem LCD

Siemson22 napisał(a):
Eclipse Mars, taktowanie także ustawiam w zakładce Project->properties->AVR->target hardware.
Czy w przypadku wyłączenia JTAGA chodzi o linijki:

A może ustaw sobie to raz a spokojnie w Fusebitach zamiast w kodzie programu.

Autor:  Siemson22 [ 22 maja 2020, o 21:08 ]
Tytuł:  Re: AtMega32A problemy z wyświetlaczem LCD

Jeżeli chodzi o sposób podłączenia diody, to podłączyłem ją anodą przez rezystor do mikrokontrolera. Fusebity poprawiłem i teraz są ustawione raz w opcjach. Podłączenie pinów się zgadza, kilka razy już sprawdzałem ale i tak mogę zrobić to raz jeszcze.

Autor:  auers [ 22 maja 2020, o 21:27 ]
Tytuł:  Re: AtMega32A problemy z wyświetlaczem LCD

Siemson22 napisał(a):
Jeżeli chodzi o sposób podłączenia diody, to podłączyłem ją anodą przez rezystor do mikrokontrolera. Fusebity poprawiłem i teraz są ustawione raz w opcjach. Podłączenie pinów się zgadza, kilka razy już sprawdzałem ale i tak mogę zrobić to raz jeszcze.

Czyli katodą do masy. No to działa tak jak masz zdefiniowane w makrach.

Autor:  Siemson22 [ 22 maja 2020, o 22:16 ]
Tytuł:  Re: AtMega32A problemy z wyświetlaczem LCD

Piny sprawdziłem, wszystkie są odpowiednio podłączone, te z nich które miały podejrzany lut zlutowałem na nowo. Na wyświetlaczu dalej nie mogę wyświetlić tekstu. Pamiętam, że gdy lutowałem cały układ pierwszy raz, to przez przypadek kropla spoiwa kapnęła mi na spód wyświetlacza. Nie upadła na żaden z elementów, ale jedynie na ten zielony kawałek mniej więcej na środku na te czerne paski. Kropla ta nie była duża. Poczekałem chwile aż stężeje i po prostu lekkim posunięciem ją usunąłem. Nie ma jednak żadnego śladu po tym, nawet nie widzę gdzie mogła upaść. Czy to może być sprawcą?

Autor:  auers [ 22 maja 2020, o 22:26 ]
Tytuł:  Re: AtMega32A problemy z wyświetlaczem LCD

Mało prawdopodobne. Raczej jednak coś źle robisz.
Czy biblioteka korzysta z pinu RW?
Wstaw kod, fragment z konfiguracją biblioteki LCD i to co do niego wysyłasz.

Autor:  Siemson22 [ 22 maja 2020, o 22:37 ]
Tytuł:  Re: AtMega32A problemy z wyświetlaczem LCD

Pin RW ustawiłem na 0.
Nie wiem czy o to dokładnie chodziło, ale tak wygląda fragment definicji:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


EDIT: to znaczy PIN RW jest zadeklarowany jako USE_RW 0, czyli że nie używam. On sam jest podpięty do GND.

Autor:  auers [ 22 maja 2020, o 22:51 ]
Tytuł:  Re: AtMega32A problemy z wyświetlaczem LCD

Wrzuć jeszcze program główny i zdjęcia jak to masz połączone.

Autor:  Siemson22 [ 22 maja 2020, o 22:59 ]
Tytuł:  Re: AtMega32A problemy z wyświetlaczem LCD

Jeżeli nie masz nic przeciwko to wyślę Ci ten program na PW, cały program napisałem w oparciu o książkę "BLUEBOOK", a tak naprawdę jest to jego kalka i wiem, że Pan Mirosław woli aby nie wrzucać tego kod gdzie popadnie.

Autor:  mirekk36 [ 22 maja 2020, o 23:47 ]
Tytuł:  Re: AtMega32A problemy z wyświetlaczem LCD

Piszesz, że coś ci wyświetlacz nie działa ... a powiedz mi czy sprawdziłeś na początek tak dla upewnienia się - jak i czy działa ci z gotową biblioteką z książki? Przecież gdyby ci ruszył ładnie to łatwiej byłoby tobie później szukać gdzie w swoim kodzie popełniłeś jakiś błąd.

Autor:  Siemson22 [ 23 maja 2020, o 00:12 ]
Tytuł:  Re: AtMega32A problemy z wyświetlaczem LCD

Wydaje mi się, że tak. Oprócz biblioteki którą "przepisałem" z książki, spróbowałem operować na tej umieszczonej na stronie ATNEL jako uaktualnienie (przy określeniu odpowiednich definicji). Może chodzi o te definicje? Nie mam płytki DVD i kilka z wymaganych definicji znalazłem przeszukując internet. Wszystkie te definicje są w jednym z dodanych przeze mnie komentarzy (w bibliotece ze strony Atnel segmenty w których "inne" definicje są potrzebne są ubrane w klamry #if i #endif przez to kompilator nie wymaga ode mnie ich definiowania).

Autor:  mirekk36 [ 23 maja 2020, o 00:15 ]
Tytuł:  Re: AtMega32A problemy z wyświetlaczem LCD

Siemson22 napisał(a):
Nie mam płytki DVD

Nie próbowałeś dokupić w wydawnictwie Atnel materiałów z DVD ? Przecież jest taka możliwość na wypadek zagubienia, kradzieży czy zniszczenia nośnika. A przecież tam jest sporo ważnych ćwiczeń z książki.

Autor:  Siemson22 [ 23 maja 2020, o 00:42 ]
Tytuł:  Re: AtMega32A problemy z wyświetlaczem LCD

Nie próbowałem, teraz najwyraźniej wychodzi mi to bokiem.

Autor:  mirekk36 [ 23 maja 2020, o 01:56 ]
Tytuł:  Re: AtMega32A problemy z wyświetlaczem LCD

Po to jest książka i kody źródłowe stworzone do niej. Czytelnik ma wtedy porządny punkt odniesienia do tego co sam próbuje tworzyć na podstawie książki. A w sumie to są najlepsze ćwiczenia - gdy samemu się próbuje napisać bibliotekę od początku.

Autor:  micky [ 23 maja 2020, o 06:21 ]
Tytuł:  Re: AtMega32A problemy z wyświetlaczem LCD

A masz w ogóle Bluebooka, czy jedziesz na jakichś strzępkach poznajdowanych na www (jak erraty itd)?

Autor:  Harry [ 23 maja 2020, o 11:23 ]
Tytuł:  Re: AtMega32A problemy z wyświetlaczem LCD

Albo na kserówce która co jakiś czas gdzieś wypływa.

Autor:  Siemson22 [ 23 maja 2020, o 19:37 ]
Tytuł:  Re: AtMega32A problemy z wyświetlaczem LCD

W okolicach 01-02-03.06.2020 wracam na stancję, wówczas żeby nie mieć problemów prześlę Państwu zdjęcie mojego egzemplarza

Strona 1 z 1 Strefa czasowa: UTC + 1
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/