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

[Attiny26][Bascom] Konfiguracja Time1

avatar 12 Maj 2011 14:36 1858 4
  • #1 9498164
    avatar
    Poziom 36  
    Witam czy ktos moze mnie oswiecic w jaki sposob zapisac wartosc do rejestru Counter1 pod bascomem ?
    Mam taki prosty program i za nic w siecie bascom nie che go lyknac
    
    $regfile = "Attiny26.dat"
    $crystal = 1000000
    Config Timer1 = Timer , Prescale = 64                       
    On Ovf1 Czas
    
    Enable Interrupts                                           
    Enable Timer1                                               
    Counter1 = 120
    
    Do
    nop
    Loop
    
    Czas:
    nop
    Return
    End
    


    I taki oto blad
    ASSIGNMENT ERROR line 8
    Procesor ma ten timer w sobie.
    Jezli to wina bascoma to w jaki sposob zapisac ta wartosc z poziomu jakiejs wstawki assemblerowj ?
  • #2 9498409
    dominon
    Poziom 18  
    Drogi kolego jest coś takiego jak "Help" w bascom i jest on bardzo przejrzysty.

    Tak na logikę. Deklarujesz Timer1 jako timer a wpisujesz wartość do countera? Nie dziw się że wywala błąd. Spróbuj "Timer1 = 120".
  • #3 9498872
    Wojtek75
    Poziom 24  
    Spróbuj wpisać bezpośrednio do rejestru TCNT1 jeżeli ma to działać to trzeba oczywiście przeładować w każdym przerwaniu wartość w tym rejestrze. Zdecydowanie lepiej wykorzystać tryb CTC i rejestr compare OCR1C. Timer1 w tiny26 jest dość specyficzny polecam przejrzeć notę.
  • #4 9500354
    Konto nie istnieje
    Poziom 1  
  • #5 9500398
    avatar
    Poziom 36  
    Problem rozwiazany - to wina bascoma - kompilator zaklada zawsze ze zmienna counter ma wartosc Word a w attiny26 tak jak ktos to opisal wyzej moze byc tylko Byte.
    Operacje nop sa tylko poto aby wklejajac program cos bylo w petli niewazne co bo i tak problem lezy gdzie indziej
REKLAMA