Anam52
20.02.2013, 20:49
Hallo, ich programiere noch nicht lange in Bascom und brauche noch ein wenig Nachhilfe.
Ich bitte freundlicherweise um ein paar Zeilen lauffähigen Code als Beispiel bzw. Korrektur meine Quellcodes.
Dieses Problem treibt mich seit einer Woche in den Wahnsinn.
Aufgabenstellung:
Atmega16
An Pin PB1/T1 liegt ein 32768khz Taktsignal an (ich will keine Uhr programmieren)
TC1 als Counter, CTC Modus, OCR1A=32768
Bei Timer/Counter Compare Match: Interrupt. (Kein Toggeln an OC1A erwünscht!)
Hier mein Quellcode (nur ein Testprogramm für die Funktion) :
$regfile = "m16def.dat"
$crystal = 8000000
$hwstack = 40
$swstack = 30
$framesize = 60
Config Pind.1 = Output
Config Pind.2 = Output
Config Timer1 = Counter , Edge = Rising , Clear Timer = 1, Oc1a = Disconnect 'damit OC1A nicht toggelt
Ocr1a = 32768
On Oc1a Timer1_match_ocr1a_isr
Enable Timer1
Enable Interrupts
Do
Toggle Portd.0 'nur zur Kontrolle ob der MC läuft
Wait 2
Loop
Timer1_match_ocr1a_isr:
Toggle Pind.1 'Taktausgabe, hier steht nachher etwas anders
Return
End
Besten Dank im Voraus!
Ich bitte freundlicherweise um ein paar Zeilen lauffähigen Code als Beispiel bzw. Korrektur meine Quellcodes.
Dieses Problem treibt mich seit einer Woche in den Wahnsinn.
Aufgabenstellung:
Atmega16
An Pin PB1/T1 liegt ein 32768khz Taktsignal an (ich will keine Uhr programmieren)
TC1 als Counter, CTC Modus, OCR1A=32768
Bei Timer/Counter Compare Match: Interrupt. (Kein Toggeln an OC1A erwünscht!)
Hier mein Quellcode (nur ein Testprogramm für die Funktion) :
$regfile = "m16def.dat"
$crystal = 8000000
$hwstack = 40
$swstack = 30
$framesize = 60
Config Pind.1 = Output
Config Pind.2 = Output
Config Timer1 = Counter , Edge = Rising , Clear Timer = 1, Oc1a = Disconnect 'damit OC1A nicht toggelt
Ocr1a = 32768
On Oc1a Timer1_match_ocr1a_isr
Enable Timer1
Enable Interrupts
Do
Toggle Portd.0 'nur zur Kontrolle ob der MC läuft
Wait 2
Loop
Timer1_match_ocr1a_isr:
Toggle Pind.1 'Taktausgabe, hier steht nachher etwas anders
Return
End
Besten Dank im Voraus!