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

ATMEGA128 BASCOM automatyczne przeładowanie timer3

Jacek Rutkowski 27 Cze 2012 11:14 1892 6
  • #1 11046789
    Jacek Rutkowski
    Poziom 28  
    Witam,
    W/g pdf-a ATMegi128 timer3 może pracować w trybie auto przeładowania. W helpie do Bascoma 1.11.9.8 niestety nie mogę znaleźć opisu w jaki sposób skonfigurować licznik aby sam się przeładowywał. Obecnie robię to w przerwaniu.
    Czy może ktoś mi podpowiedzieć jak to zrobić?
    Kod: text
    Zaloguj się, aby zobaczyć kod


    $regfile = "m128def.dat"
    $crystal = 8000000
    $hwstack = 80
    $swstack = 160
    $framesize = 80
    $baud = 19200


    Config Timer3 = Timer , Prescale = 64 'takt 8us
    Load Timer3 = 62500
    Enable Ovf3 'wlaczenie timera3
    Dim flaga_ovf3 As Bit
    Dim Licznik As Byte
    On Ovf3 Prz_timer3 'przerwanie timera3
    Enable Interrupts

    Do
    Waitms 1
    If Flaga_ovf3 = 1 Then
    Incr Licznik
    End If
    Loop

    Prz_timer3:
    Stop Timer3
    Load Timer3 = 62500
    Start Timer3
    Set Flaga_ovf3
    Return
    Kod: text
    Zaloguj się, aby zobaczyć kod
  • #4 11051881
    LordBlick
    VIP Zasłużony dla elektroda
    Nie znam się zbyt na Bascom, musisz sobie doczytać w Helpie, jakimi słowami się ustawia tryb CTC (Clear on Timer Compare) w tym liczniku, Przerwanie nazywać się chyba będzie "On Compare3" or sth.
  • Pomocny post
    #5 11052431
    Konto nie istnieje
    Poziom 1  
  • #6 14355590
    Jacek Rutkowski
    Poziom 28  
    Udało mi się ustawic tryb ctc przy pomocy zapisu do rejestrów bezpośrednio. Bascom nie pozwolił mi bezpośrednio na użycie komendy do konfiguracji.
  • #7 14355668
    Konto nie istnieje
    Konto nie istnieje  
REKLAMA