Hi Finn,
Muss man jeden Takt einzeln programmieren oder kann man da einen Art Logik programmieren.
Ich kann Dir ja mal sagen wie ich das machen würde ...
Es gibt den Timer/Counter1 (16Bit) im Atmel. Bei dem gibt es den Pin ICP1
InputCapturePin für TimerCounter1). Wenn du den Zähler mit einer bestimmten
Frequenz zählen läßt (einstellbar über internen Vorteiler) dann kannst du über
diesen Pin den aktuellen Zählerstand in ein InputCaptureRegister speichern lassen
wenn an diesem Pin z.B. eine positive Signalflanke auftaucht.
Man kann mit diesem Timer also die Zeitdauer messen, wie lange ein Signal High
oder Low ist. Wenn man dann den Kehrwert bildet dann bekommt man die Frequenz.
Also 1/t=f (grob erklärt).
So etwas in der Art muß ich demnächst für meinen Analyzer programmieren. Allerdings
in Assembler. Ich brauch das da für die Puls-Pausenmessung der 1-Wire-Signale.
Hab ich aber noch nie gemacht. Ist wohl mal wieder experimentieren angesagt.
Such mal nach Frequenzzähler oder sowas in der Art. Da ist bestimmt ne ApplNote
bei Atmel drin. Bei Atmel ist der Code zum runterladen meißtens auch in C. Das
würde ja für dich passen
Gruß
Dino