PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Impulse zählen mit Timer 1



ACDC
29.11.2007, 16:54
Moin !
Ich möchte mit dem Timer 1 eines ATmega16 Impulse zählen, und diese in einer Timer-0-Interrupt-Routine alle 100mS auswerten.

So habe ich in der Initialisierung die Register belegt :


TCCR0.CS00 = 1
TCCR0.CS02 = 1
TIMSK.TOIE0 = 1
TCNT0 = 178 'Mit 10-(20-)fach-ISR = 10,01 Hz

'Timer 1 freihalten für Drehzahl-Ermittlung
TCCR1B.CS10 = 1 'Ext. Takt, steigende Flanke=1, fallende Flanke=0
TCCR1B.CS11 = 1 'Ext. Takt
TCCR1B.CS12 = 1 'Ext. Takt
TCNT1H = 0 'HiByte des Zähler
TCNT1L = 0 'LowByte des Zählers
TIMSK.TICIE1 = 0 'Keinen Input Capture Interrupt erzeugen


Die Timer-0-Geschichte funktioniert wunderbar, aber der Timer 1 zählt schon, ohne das was zählbares an Pin 2 (T1) anliegt. Was mache ich falsch ?

Ich bin für jede Hilfe dankbar !

Gruß, Andreas

Hubert.G
01.12.2007, 06:53
Hast du den Pin offen, ohne PullUp, dann floatet der Eingang da er sehr hochohmig ist.

ACDC
01.12.2007, 15:03
Hallo Hubert !

Danke für den Tip !

Ich habe jetzt den internen Pull-Up eingeschaltet und jetzt zählt der Zähler wirklich nur noch, wenn er dazu aufgefordert wird ;-)

Gruß, Andreas