 |
www.elektronik.si Forum o elektrotehniki in računalništvu
|
Poglej prejšnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
strobos Član

Pridružen-a: Sre 24 Sep 2003 12:19 Prispevkov: 726 Aktiv.: 3.06 Kraj: Brežice
|
Objavljeno: Sob Nov 25, 2006 4:03 pm Naslov sporočila: Generator frekvence z Atmega8 |
|
|
Pozdrav,
po zelo dolgem času sem začel spet obujat moje projekte z avr-ji v bascomu. Poskušam naredit generator frekvence, frekvenco pa mu nastavljam s trimerjem na a/d vhodu. Izbral sem timer1 in način CTC-clear timer on compare. Tako sem napisal tale program:
Koda: |
'$sim
$regfile = "m8def.dat"
$crystal = 16000000
Ddrd = 255
Portd = 0
Ddrb = 255
Portb = 0
Dim Vrednost_f As Word
Dim Frek_st_pom As Word ', Frek_st As Word
Enable Timer1
Enable Compare1a
Enable Interrupts
Start Timer1
Tccr1a = &B01010000 'ctc
Tccr1b = &B00001001 'ctc
On Compare1a Compare_int
Config Adc = Single , Prescaler = Auto , Reference = Avcc
Start Adc
Vrednost_f = Getadc(0)
Compare1a = 65535
Do
Frek_st_pom = Vrednost_f * 64
Compare1a = Frek_st_pom + 63
Vrednost_f = Getadc(0)
Portd.6 = Not Portd.6
Loop
Compare_int:
Portd.0 = 0
Portd.0 = 1
Return |
Registra za timer1 tccr1a in tccr1b sem nastavil po specifikacijah iz datasheeta. In zgleda, da je ravno tukaj problem, ker timer1 sploh noče začet štet. Če pa normalno definiram timer kot timer pa stvar dela, ampak nikakor mi noče delat v ctc načinu kot je zgoraj v tem primeru. Mogoče kdo ve, kaj je narobe oz. je kaj podobnega delal oz. kako bi se še dalo na drugačen način to realizirat?
Lp |
|
Nazaj na vrh |
|
 |
Vlado Član

Pridružen-a: Sre 03 Mar 2004 21:35 Prispevkov: 563 Aktiv.: 2.38 Kraj: Ljubljana
|
Objavljeno: Sob Nov 25, 2006 4:37 pm Naslov sporočila: generator frekvence z Atmega8 |
|
|
Zdi se mi da je potrebno konfigurirati tudi Timer1!
Tega nisem zalsedil v programu.
Vlado |
|
Nazaj na vrh |
|
 |
strobos Član

Pridružen-a: Sre 24 Sep 2003 12:19 Prispevkov: 726 Aktiv.: 3.06 Kraj: Brežice
|
Objavljeno: Sob Nov 25, 2006 5:57 pm Naslov sporočila: |
|
|
Namesto ukaza config sta nastavljena ta dva registra za timer: tccr1a in tccr1b. Stvar deluje v drugih načinih, vendar ne v ctc načinu.
P.S.:tudi z ukazom config sem že poskušal, poskušal sem tudi z različnim vrstnim redom napisanih vrstic...
Lp |
|
Nazaj na vrh |
|
 |
strobos Član

Pridružen-a: Sre 24 Sep 2003 12:19 Prispevkov: 726 Aktiv.: 3.06 Kraj: Brežice
|
Objavljeno: Pon Nov 27, 2006 5:25 pm Naslov sporočila: |
|
|
Hm, ima mogoče kdo tak primer-določanje načina timerja, da deluje v ctc načinu v assemblerju, da bi ga lahko vstavil v moj program?
Lp |
|
Nazaj na vrh |
|
 |
|
|
Ne, ne moreš dodajati novih tem v tem forumu Ne, ne moreš odgovarjati na teme v tem forumu Ne, ne moreš urejati svojih prispevkov v tem forumu Ne, ne moreš brisati svojih prispevkov v tem forumu Ne ne moreš glasovati v anketi v tem forumu Ne, ne moreš pripeti datotek v tem forumu Ne, ne moreš povleči datotek v tem forumu
|
Uptime: 493 dni
Powered by phpBB © 2001, 2005 phpBB Group
|