Hallo!
Ich stehe grade etwas auf dem Schlauch.
Ich habe ein kleines Programm geschrieben um einen Schrittmotor zu
betreiben und habe bis jetzt immer einen 8Bit-Timer genutzt um dem
Treibermodul die Taktimpulse per Interrupt zu geben.
Da der ATm16 aber auch 16Bit-Timer hat habe ich mir gedacht, um die
Sache genauer zu machen, ich könnte diesen ja auch nutzen. Aber leider
tut sich jetzt nichts mehr und ich finde den Fehler nicht.
Um jetzt nicht alles zu posten und den Beitrag unnötig lang zu machen
poste ich die ansich wichtigen Ausschnitte.
// --- Interrupt
ISR(TIMER1_OVF_vect) {
TCNT1 = Motor1_geschwindigkeit;
Motor1_pulse(Motor1_richtung);
}
// --- Timer
TCNT1 = Motor1_geschwindigkeit;
TCCR1A |= ((1<<0)|(1<<2)); // :1024
TIMSK |= _BV(TOIE1);
Danke!
Thorsten wrote: > > TCNT1 = Motor1_geschwindigkeit; > TCCR1A |= ((1<<0)|(1<<2)); // :1024 > TIMSK |= _BV(TOIE1); > Die Vorteiler Einstellbits sind in TCCR1B
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.