Elektroda.pl
Elektroda.pl
X
Arrow Multisolution Day
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Atmega8 + LCD (RC1602B) + Bascom - Wyświetlacz nie reaguje

nataneq 16 Sty 2011 19:52 5839 9
  • #1 16 Sty 2011 19:52
    nataneq
    Poziom 9  

    Witam,

    wykorzystując Atmega 8 oraz LCD 2x16 (RayStar - RC1602B-YHY-CSDX) chciałem wyświetlić zwykły napis na LCD. Skrypt został napisany w Bascom (zamieszczony poniżej). Skrypt na początku włącza diodę podłączoną pod PD0, potem wyświetla dwie linie na LCD, czeka 5 sekund i wyłącza diodę. Efekt taki, że po zasileniu układu, dioda się zaświeca, podświetlenie LCD również, przy czym nic się nie wyświetla na nim i po około 5 sekundach dioda się wyłącza i tyle.

    Poniżej znajduje się skrypt, schemat połączenia Atmega z LCD, oraz rzeczywiste zdjęcie złożonego układu.

    Nie wiem czy o czymś zapomniałem, czy może LCD nie działa? Próbowałem również podłączyć samo zasilanie do LCD tj. 1 pin - ground, 2 - zasilanie, 3 - kontrast i 5pin rw uziemiłem, ale nie wyświetliła się jakby wypełniona testowa 1 linia, która podobno ma świadczyć o błędnej inicjalizacji LCD.

    Czy są jakieś pomysły? uwagi?

    LINKI:
    LCD Datasheet - Specyfikacja wyświetlacza

    Code:
    $regfile = "m8def.DAT"
    
    $crystal = 1000000

    Config Lcd = 16 * 2
    Config Lcdpin = Pin , Db4 = Portc.0 , Db5 = Portc.1 , Db6 = Portc.2 , Db7 = Portc.3 , E = Portc.5 , Rs = Portc.4


    Config Portd.0 = Output
    Set Portd.0
    Dioda Alias Portd.0

    Dioda = 1
    Cls
    Lcd "Test LCD";
    Lowerline
    Lcd "2011"
    Wait 5
    Dioda = 0


    Całość połączyłem w sposób przedstawiony na rysunku poniżej:
    Atmega8 + LCD (RC1602B) + Bascom - Wyświetlacz nie reaguje

    W rzeczywistości wygląda to tak:
    Atmega8 + LCD (RC1602B) + Bascom - Wyświetlacz nie reaguje

    0 9
  • Arrow Multisolution Day
  • Pomocny post
    #2 16 Sty 2011 21:44
    LordBlick
    VIP Zasłużony dla elektroda

    1. Połącz AVCC z VCC oraz GND-GND. PORTC jest zasilany z tych niepodłączonych linii...
    2. Pomiędzy VCC i GND kondensator 100nF

    0
  • Arrow Multisolution Day
  • #3 16 Sty 2011 22:15
    nataneq
    Poziom 9  

    Witam,

    wprowadziłem kondensator oraz połączyłem AVCC-VCC, GND-GND, aczkolwiek efekt jest ten sam. Wcześniej miałem połączenia i skrypt zrobione na PORT B i też LCD nie ruszał.

    Czy są może inne pomysły? Czy da się sprawdzić sam LCD bez podłączania go do Atmegi, czy w ogóle działa? W pierwszym poście wspomniałem o próbie podłączenia LCD 1 pin - GND, 2 pin - 5V, 3 pin - 5v z potencjometrem 10k, oraz uziemiłem RW, czy też RW i RS... Czytałem, że w LCD przy takim podłączeniu powinna się zaświecić wypełniona cała pierwsza, górna linia, aczkolwiek u mnie kompletnie nic się nie dzieje. Dodam, że LCD kupiłem nowy, w sensie wcześniej nie był w żaden sposób używany.

    0
  • #5 17 Sty 2011 00:14
    nataneq
    Poziom 9  

    Dzięki za szybką odpowiedź. Aktualnie może być problem z portem LPT w moich laptopach, aczkolwiek spróbuję coś pokombinować i dam znać jak poszło.

    Jeśli ktoś zna jeszcze inne, ciekawe pomysły na przetestowanie LCD to proszę pisać. Z góry dziękuję.

    Dodano po 1 [godziny] 32 [minuty]:

    Dopadłem kabel LPT, przygotowałem go wedle schematu zawartego w pliku źródłowym skryptu + w oparciu o schematy LPT, podłączyłem zgodnie z instrukcją i nadal nie działa.

    A robiłem to tak:
    Podłączyłem LPT do laptop'a, włączyłem zasilanie dla LCD, uruchomiłem program LCDT.exe, wcześniej sprawdziłem czy port LPT jest aktywny i niewyłączony w BIOSie i niestety nie działa.

    Jutro kupię drugi taki LCD + inny oparty o ten sam sterownik hd44780 posprawdzam wszystko jeszcze raz, podłączone nowe LCD i zamieszczę tutaj informacje jak sprawy się mają. Może zakupiłem wadliwy LCD, może uszkodziłem go podczas pierwszych prób montażu. Kto wie.

    0
  • #7 17 Sty 2011 07:27
    nataneq
    Poziom 9  

    To było normalne złącze LPT, odkopałem laptopa z tym złączem.

    0
  • Pomocny post
    #9 17 Sty 2011 11:00
    piotrva
    Moderator na urlopie...

    Poprzednio czytałem forum w komórce i nie zauważyłem tego potencjometru, ale z tego co widzę na zdjęciu to ten potencjometr jest źle podłączony!!!
    Poprawnie powinieneś podłączyć stałe końce potencjometru między VCC a GND, a środkowy (regulowany) do wyświetlacza LCD. Powinny zatem być 3 kabelki, a na zdjęciu widać tylko 2!!
    i tu chyba leży cały problem :D

    0
  • #10 17 Sty 2011 21:29
    nataneq
    Poziom 9  

    Witam,

    problem rozwiązany, nie wiem dlaczego i w jaki sposób to przeoczyłem, aczkolwiek faktycznie kluczową sprawą był potencjometr, a mianowicie brak podpięcia do GND.

    Podziękował Panowie :) piotrva niezła spostrzegawczość. Dzięki.

    Light I - dzięki za cenne uwagi, które na pewno uwzględnię w przyszłych projektach oraz za naprowadzenie na test poprzez LPT, dzięki temu zmobilizowałem się, przygotowałem sobie kabel i ogarnąłem schemat samego LPT jak i łączenia go LCD.

    Jestem początkujący w temacie, także wskazówki wskazane :)

    Poniżej zdjęcie działającego układu, aczkolwiek z nowym LCD. Stary też działał oczywiście. Nie zwracajcie uwagi na tekst na LCD, taki żart dla znajomego.

    0