Hallo, gugst Du hier:

https://www.roboternetz.de/phpBB2/dl...le&file_id=264


Das Programm arbeitet als sogenannter Event Counter oder auch Impulszähler und zählt alle fallenden Flanken. (geht auch mit steigenden Flanken, siehe Prescaler im Datenblatt des AVR)
Über einen anderen PIN hier PORTD, PD3 lässt sich die Zählrichtung (UP-/DOWN- COUNTER) bestimmen.

Hardwareempfehlung:
Ein ATMEGA BOARD natürlich. Diese Sourcen sind für ein ATMEGA128 geschrieben.
RN-KEYLCD von Vorteil, alternativ RS232 verbindung mit RS232 Terminal Programm.
I2C-Verbindung vom AVR-Hauptboard zum RN-KEYLCD-BOARD

Das Programm arbeitet in der Haptschleife so:
Der Cursor wird auf dem LCD immer auf Position 1,1 gesetzt und nach einer kurzen Wartezeit wird der Zählerwert angezeigt.
Da der Zählerwert über den Interrupt-Timer hochgezählt wird, verrechnet sich der Zähler auch nicht durch die Wartezeit in der Haupschleife )
Der Zähler wird immer so vorgesetzt, dass er immer nur einen Impuls braucht, damit er in die Interrupt-Routine geht.


mfg