Kann mir einer Helfen, ich habe folgendes Problem:
Ich möchte den Timer1 als Zähler für Impulse nutzen und danach die Impulse umrechnen als Drehzahl. Dies Klappt auch schon sehr gut.
Aber wie kann ich den Timer1 bzw die Interrupts wieder stoppen um ein neuen Teil im Programm ablaufen zu lassen ohne das er weiter in den Interrupts springt?
Ich folgendes Programm geschrieben:
MichaelCode:'Programm zur Drehzahlerfassung mit Timer1 zum Zählen 'Ausgabe auf der seriellen Schnittstelle (Frequenz) '---------------------------------------------------------- $regfile = "m8def.dat" 'ATmega8-Deklarationen $crystal = 3686400 $baud = 9600 'Quarz: 3,6864 MHz Ddrd = &B11000000 Portd.5 = 1 Portd.2 = 1 Mcucr = &B00001010 Gicr = &B11000000 Dim A As Integer Dim B As Long A = 0 B = 0 On Timer1 Ontimer1 On Int0 Zaehlen Config Timer1 = Timer , Prescale = 256 Enable Timer1 Enable Interrupts '---------------------------------------------------------- Do Loop '---------------------------------------------------------- Zaehlen: A = A + 1 Return Ontimer1: Print " Gezaehlte Impulse= "; Print A; Print " errechnete Geschwindigkeit(U/min-1)="; B = A * 60 Print B; Timer1 = 51143 A = 0 Return![]()







Zitieren

Lesezeichen