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] - zacinanie się programu (używanie timera)

kamil12239 20 Sie 2016 12:45 1116 5
REKLAMA
  • #1 15879643
    kamil12239
    Poziom 17  
    Posty: 244
    Pomógł: 18
    Ocena: 45
    Witam.
    Od jakiegoś czasu próbuję zrobić swój własny sterownik pieca CO. W sterowniku mam trzy tryby pracy. Mam problem w automatycznym czyli jeżeli temperatura osiągnie wartość z przedziału powiedzmy 40 stopni do 60 to ma się załączać przedmuch na czas 10 s a przestój ma mieć czas 5 min. Zrealizowałem to na timerze i wszystko wygląda na to że działa tylko po jakichś od 1min do 3min w czasie pracy po spełnieniu tych warunków cały program mi się wiesza. No i muszę resetować go.

    Poniżej wrzucam fragment kodu związanego z timerem, który realizuje tę funkcję.
    Kod: C / C++
    Zaloguj się, aby zobaczyć kod


    Co może być przyczyną zacinania się programu?
    Wyświetlanie danych zrealizowane jest za pomocą wyświetlacza HHD44780.

    Poniżej "reszta kodu" do trybu automatycznego.
    Kod: C / C++
    Zaloguj się, aby zobaczyć kod
  • REKLAMA
  • Pomocny post
    #2 15879650
    Konto nie istnieje
    Konto nie istnieje  
  • REKLAMA
  • REKLAMA
  • Pomocny post
    #4 15879765
    Konto nie istnieje
    Konto nie istnieje  
  • REKLAMA
  • Pomocny post
    #5 15879861
    tmf
    VIP Zasłużony dla elektroda
    Posty: 14318
    Pomógł: 2090
    Ocena: 2206
    @kamil12239 Wywołujesz funkcje obsługi LCD zarówno z main, jak i z ISR. Jesteś pewien, że mogą one być wykonywane współbieżnie (są reentrant?). Idę o zakład, że nie. Pewnie tu dochodzi do jakiejś kolizji.
  • #6 15879868
    kamil12239
    Poziom 17  
    Posty: 244
    Pomógł: 18
    Ocena: 45
    Panowie Piotrus_999 i tmf wasze spostrzeżenie było słuszne. Jak wywaliłem te funkcję do głównej main to pomogło. Nie ma żadnego zacinania się. Nie wiedziałem że nie można w ten sposób robić.
    Temat do zamknięcia.

    Pozdrawiam.
REKLAMA