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

[ATmega32] - Nieprawidłowa inicjalizacja wyświetlacza po starcie z bootloadera

pch 13 Sty 2014 18:43 1200 4
REKLAMA
  • #1 13173347
    pch
    Poziom 15  
    Napisałem bootloader do Atmegi 32 i za jego pomocą wgrywam główny program do procesora. Program wgrywa się poprawnie ale startuje w dziwny sposób. Mianowicie źle inicjuje się wyświetlacz graficzny, gdy program wystartuję z bootloadera. Sam program działa poprawnie natomiast wyświetlacz pokazuje jakieś szczątkowe dane. Jeżeli fusami wyłączę start z bootloadera to program glówny po podaniu zasilania działa OK. Ale jak programowo wejdę do bootloadera i po timeoucie z niego wyjdę startując program główny to znowu mam źle zainicjowany wyświetlacz. Tak się składa, że linie tx/rx są wykorzystywane w porcie sterującym wyświetlaczem ale to przecież nie powinno mieć znaczenia bo wyświetlacz inicjuję z poziomu programu głównego. Nie mam pojęcia o co chodzi. Uprzedzając pytania dlaczego tx/rx sterują lcd - nie planowałem wykorzystania transmisji. Niestety konieczność zdalnej aktualizacji programu wymusiła wykorzystanie bootloadera.

    PC
  • REKLAMA
  • REKLAMA
  • #3 13175927
    pch
    Poziom 15  
    To część schematu. Nie ma tu członu wykonawczego ale to nie ma znaczenia.

    [ATmega32] - Nieprawidłowa inicjalizacja wyświetlacza po starcie z bootloadera

    A program to prosty bootloader. Ładuje soft poprawnie bo, jak pisałem wcześniej, po wyłaczeniu startu bootloadera program główny działa poprawnie.
    W miedzyczasie zauważyłem coś ciekawego. Wlutowałem buzerek i on świerka w czasie restartu po timeoucie. Wygląda na to, że porty procka zmieniają swój stan na nieustalony i to może wpisywać jakiś syf do wyświetlacza.

    PC
  • REKLAMA
  • #5 13251521
    pch
    Poziom 15  
    Problem rozwiązany. Resetuję programowo lcd i inicjuję ponownie.

    PC
REKLAMA