logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

[BASCOM][ZL11AVR] LCD - niepoprawna inicjalizacja.

20 Lis 2008 10:58 2468 9
  • #1 5761187
    Konto nie istnieje
    Konto nie istnieje  
  • #2 5761208
    don diego
    Poziom 32  
    Może być źle napisany program.
  • #3 5761557
    redart
    Poziom 23  
    Zaczynając od początku należałoby najpierw poinformować kompilator gdzie i co podpiąłeś, np:
    Config Lcdpin = Pin , Db4 = Portb.1 , Db5 = Portb.2 , Db6 = Portb.3 , Db7 = Portb.4 , E = Portb.5 , Rs = Portb.6 'piny do których podpiąłes lcd
    Config Lcd = 16 * 2 'typ lcd
    Cls
    Lcd "ATMega8"

    Zresztą korzystając z bascoma wciśnij help'a (żółty znak zapytania na górnym pasku) i w indexie wpisz "lcd", a potem to przeczytaj i zastosuj. W razie czego link do helpa po polsku:
    http://www.elektroda.net/download/pafiledb.php?action=file&id=923
    I nie zapomnij o ustawieniu kontrastu lcd, bo dalej możesz nic nie zobaczyć.
    Sukcesów...
  • #4 5761708
    Konto nie istnieje
    Konto nie istnieje  
  • #5 5761775
    redart
    Poziom 23  
    Zgodnie ze schematem ZL11AVR powinieneś mieć lcd skonfigurowany w następujący sposób:
    Config Lcd = 16 * 2
    Config Lcdpin = Pin , Db4 = Portb.4 , Db5 = Portb.5 , Db6 = Portb.6 , Db7 = Portb.7 , E = Portb.1 , Rs = Portb.2

    dla zworki J3 w pozycji 1-2, lub
    Config Lcd = 16 * 2
    Config Lcdpin = Pin , Db4 = Portb.4 , Db5 = Portb.5 , Db6 = Portb.6 , Db7 = Portb.7 , E = Portb.3 , Rs = Portb.2

    dla zworki J3 w pozycji 2-3.
    No i ewentualna regulacja kontrastu za pomocą PR1, ale wtedy miałbyś 2, a nie jedną ciemną linię.
    Po prostu nic nie inicjuje lcd'ka i tym bardziej go nie resetuje/czyści po włączeniu.
    A czy procek w ogóle chodzi???
    Próbowałeś np programików do migania diodą itp?
    Bo to może być jeszcze ze 20 innych przyczyn aktualnego stanu rzeczy.
  • #6 5764772
    Konto nie istnieje
    Konto nie istnieje  
  • #7 5764917
    redart
    Poziom 23  
    krzysztof2008x2 napisał:
    ... a procek jest wyczuwany.

    Że co? Chodzi o to, że bascom widzi go poprzez programator, czy może o wydzielanie jakiegoś przykrego zapachu :?:
    Cytat:
    Tochyba dobry nie?

    Chyba... to się gibon na gałęzi...

    Odpowiedz na następujące pytania:
    1. Jaki masz zamontowany procek na tej płytce;
    2. Jaki masz zamontowany kwarc;
    3. Czy procek był już programowany - jeśli tak to:
    3a. czy zmieniane były fusebity odnośnie źródła oscylatora;
    3b. czy próbowałeś wrzucić jakiś inny program i czy wtedy działał właściwie.
    4. Czy na początku twojego programu nie widnieje przypadkiem coś takiego:
  • #8 5771250
    Rayford
    Poziom 14  
    Spróbuj załadować ten program i zobacz czy będzie tak samo
    
    'TEST
    Deflcdchar 1 , 16 , 16 , 18 , 20 , 24 , 16 , 31 , 32       ' replace ? with number (0-7)
    Deflcdchar 0 , 31 , 16 , 16 , 30 , 16 , 16 , 31 , 2       ' replace ? with number (0-7)
    CLS                                     
    DO                                      
       CURSOR OFF                              
       UPPERLINE                               
       LCD "JA CIE NIE MOG"                    
       Lcd chr(0)                              
       WAIT 2                                  
       LOWERLINE                               
       LCD "   TO DZIA"                        
       LCD CHR(1)                              
       Lcd "A"
       WAIT 2                                  
       cls                                     
       wait 2                                  
    LOOP                                    
    END
    

    Proszę używać znaczników [code] - uzupełniłem.
    [zumek]
  • #9 5771284
    dawid512
    Poziom 32  
    Najpierw ustaw kontrast, następnie sprawdź czy pin R/W wyświetlacza jest podłączony do masy. Zerknij na PCB i sprawdź czy wyświetlacz jest tak samo podłączony do uc jak podałeś w programie.
  • #10 5772250
    Rayford
    Poziom 14  
    Jeśli płyta testowa na zdjęciu jest twoja to widzę, że masz jedna zworkę nie przestawioną, jak chcesz używać LCD to zworka J3 powinna być przełożona na pozycję 2-3

    Jeśli używasz tego zestawu i książki Mikrokontrolery dla początkujących to Pan Górecki pisze w niej, że wszystkie doświadczenia jakie są opisane w jego książce są tak dobrane aby nic nie trzeba było przestawiać w programie bascom, jedynie co trzeba zrobić to wybrać procek jaki tam programujesz i zaznaczenie odpowiedniego wyświetlacza, czyli na LCD 16x2

    Domyślam się, że używasz attiny 2313 i aby działały wszystkie programy z książki trzeba po zmieniać jeszcze ustawienia w zakładce Lock and Fuse Bits . Cała książka jest opisana na procek AT90S2313 ale te już wyginęły jak mamuty i w zastępstwie polecany jest właśnie Attiny 2313
REKLAMA