Hallo,
ich hab mir heute ein kleines Programm zusammen geschrieben, welches mit Timer0 laufen soll. Ausgabe soll über OC0 und Terminalprogramm laufen.
Ich sitze jetzt hier schon ne ganze Weile dran, kann aber den Fehler nicht finden, wäre nett wenn sich jemand von euch das mal anschaut.
Hier der Code:
1. zwischen OC0 und GND müsste ich doch jetzt etwa 2v messen können?Code:$regfile = "m32def.dat" $framesize = 32 $swstack = 32 $hwstack = 32 $crystal = 16000000 'Quarzfrequenz $baud = 9600 Sreg.7 = 1 'Interruptsglobal zulassen On Timer0 Timerisr Tccr0.foc0 = 0 'force output compare deaktiv Tccr0.wgm00 = 0 'CTC-Mode Tccr0.wgm01 = 1 'clear timer on compare Tccr0.com00 = 1 'OC0 umschalten sobald Tccr0.com01 = 0 'TCNT0 = OCR0 Tccr0.cs02 = 1 'clk/1024 Prescaler Tccr0.cs01 = 0 Tccr0.cs00 = 1 Timsk.ocie0 = 1 'aktiv compare match interrupt Timsk.toie0 = 1 'aktiv Timer0 Overflow interrupt Ocr0 = 100 Ddrb.3 = 1 Do Print "lebe noch" Print Tccr0 Print Timsk Print Ocr0 Wait 2 Loop End Timerisr: Print Ocr0 Return
2. es müsste mir sehr oft der wert von OCR0 übers terminalprogramm ausgegeben werden
Extra-Frage: im handbuch hat der Timer0 2 interrupt, bei Bascom hab ich aber immer nur den IR: Timer0 gefunden was ist mit dem 2.?







Zitieren

Lesezeichen