Habe mir eben mal den Code vom Funktionsgenerator, den Andreas Schwarz
entwickelt hat, angesehen und versucht ihn nachzuvollziehen.
Jetzt habe ich eine Frage und zwar geht es um folgendes:
ldi temp1, low(COMPAREVALUE) ; Compare-Wert laden; bei einem
Zählerstand von
; COMPAREVALUE wird der
Timer-Interrupt aktiv
out OCR1AL, temp1
ldi temp1, high(COMPAREVALUE)
out OCR1AH, temp1
ldi temp1, (1<<WGM12)|(1<<CS10) ; Timer 1 starten, Frequenz
6553600/1 Hz
out TCCR1B, temp1
ldi temp1, (1<<CS02)|(1<<CS00) ; Timer 0 starten, Frequenz
6553600/1024 Hz
; (dient als Zeitgeber für
die Verzögerungen
; bei der Tastenauswertung
und LCD-Ansteuerung)
out TCCR0, temp1
ldi temp1, 1<<OCIE1A ; Timer 1 Compare-Interrupt
aktivieren
out TIMSK, temp1
Wie der Timer funktioniert ist mir klar. Nur nicht die Befehle mit
denen er hier initialisiert wird.
z.B.: ldi temp1, (1<<CS02)|(1<<CS00)
was bedeutet "<<" oder der senkrechte Strich?
Danke im vorraus!
MFG
Thomas
1<<2 bedeutet, das bit 2 gesetzt wird. also 00000100. | bedeutet oder. also bedeutet (1<<5)|(1<<3) 00101000.
Danke für die schnelle Antwort. Hast mir echt weiter geholfen. MFG Thomas
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.