Hallo
Vielleicht wäre man mit Pollen des Eingangs schnell genug? Warten auf die Flanke und dann solange einen Zähler hochzählen bis sich der Pegel am Pin wieder ändert. Wenn der AVR sonst nichts anderes macht würde sich die Frequenz über den Zählerstand und die Ausführungszeit für das Hochzählen mit Pinabfrage errechnen lassen:... es ansonsten irgendwie möglich ist solche Frequenzen mit diesem Board zu messen?
zähler=0
while (pin==low)
do zähler++ while (pin==high)
Nach dem Kompilieren muss man dann im Assemblerlisting die Do-While-Schleife suchen und die Takte zusammenzählen und kann dann über die Prozessortaktfrequenz die Ausführungszeit der Zählschleife ermitteln. Oder man könnte den Zählwert auch kalibrieren, wenn man eine passende Vergleichsfrequenz zur Verfügung hat.
Angaben zum Board und der Art der Frequenz (Spannung, Kurvenform) währen hilfreich für weitere Ideen.
[Edit]Oje, völlig falscher Ansatz, ich ziehe den Beitrag hiermit zurück. Wir müssen ja die Flanken über der Zeit Zählen und nicht die Länge des Impulses. Mit meinem Ansatz kommen wir bei weitem nicht in den geforderten Frequenzbereich.[/Edit]
[nocheinedit] Nach einem Blick ins Datenblatt (das sollte man wohl besser zuerst machen) denke ich, "Input Capture" (Seite 93ff) führt wohl zum gewünschten Ergebniss:
https://www.roboternetz.de/phpBB2/ze...=327424#327424
Gruß
mic
Lesezeichen