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

[C][Atiny2313] Proste zegarek. Timery i przerwania.

lycon5 11 Lip 2011 23:38 1402 10
REKLAMA
  • #1 9707674
    lycon5
    Poziom 11  
    Kod: C / C++
    Zaloguj się, aby zobaczyć kod


    Cóż zadanie programu jest proste. Ma wrzucić na LED czas który inkrementowany jest w przerwaniu timer. Rzecz w tym, że pokazuje głupoty i nie wiem w czym problem. Liczby niby wyświetlają się w porządku ale w nielogiczny sposób. Licze na pomoc ;]
  • REKLAMA
  • #2 9715152
    Bartek.k.k
    Poziom 21  
    Wg. mnie błąd leży w ustawieniach Timera. Jeżeli się mylę to proszę poprawić, ale chyba powinno być w coś w ten deseń:

    Kod: C / C++
    Zaloguj się, aby zobaczyć kod


    oraz

    Kod: C / C++
    Zaloguj się, aby zobaczyć kod


    Pozdrawiam Bartek!
  • REKLAMA
  • #4 9716173
    lycon5
    Poziom 11  
    My tutaj użyliśmy timera1, 16-bitowego. Funkcja ISR() obsługa przerwań, a ogólnie to problem jest już rozwiązany, teraz mam kolejny, lecz sądzę że to wina mikrokontrolera. Dziękuję za zainteresowanie tematem :p
  • REKLAMA
  • REKLAMA
  • #6 9716235
    lycon5
    Poziom 11  
    Nie nie ; ) ale to w naszym mikrokontrolerze wina jednej nóżki, ustawiam pin na wejście i podaję bezpośrednio na nóżkę napięcie. Nie reaguje, więc raczej nie jest to wina innych komponentów na płytce.
  • #8 9716254
    lycon5
    Poziom 11  
    www.btc.pl/pdf/zl11avr.pdf
    nóżka PD1, ogólnie nie reagował na przycisk, to zastosowałem brutalniejsze metody, podając napięcie bezpośrednio na nóżkę, po czym okazało się, że tak czy siak nie reaguje.]
  • #10 9716278
    lycon5
    Poziom 11  
    Wiesz co, aktualnie jestem w pracy, nie mam dostępu do mojego PC. PD1 był ustawiony na wejście do mikrokontrolera, aż takiej głupoty bym nie zrobił ;p. A napięcie podałem takie, jakie panowało po wciśnięciu przycisku i wysłaniu sygnału na PD0, na który reagował. Powiem jeszcze, że po zmianie programu, w którym mikrokontroler reagował na wciśnięcie pierwszego przycisku, po zmianie na drugi, nie reagował.
REKLAMA