Hallo
Der Schwingkreis wird mit 36kHz betrieben, da auch die 72kHz-Library des asuro am OC2-Pin 36kHz ausgibt. Normalerweise ist das ja die Trägerfrequenz für die IR-Kommunikation. Deshalb wird im Testprogramm aus der Anleitung der Timer beim asuro ganz normal mit Init() parametriert.
Der Zugriff auf count72kHz gibt zwar bei neueren Libs (ab v2.3) eine Fehlermeldung, aber da sie im Testprogramm nur sicherstellt, das 100 Halbwellen erzeugt wurden um den Schwingkreis anzuregen, sollte auch ein schlichtes Sleep(100) bei der 72kHz-Variante ausreichen. Bei den aktuellen Libs wäre es entsprechend Sleep(50) für 100 Halbwellen. Da wir aber beim Tiny kein Sleep() haben, zählen wir die Halbwellen selbst mit unserem count72kHz. Die erzeugte Frequenz am OC0X bleibt aber in allen Fällen 36kHz.
Gruß
mic
[Edit]
Im asurowiki wurde der Code stillschweigend an die aktuellen Libs angepasst:
http://www.asurowiki.de/pmwiki/pmwik...in/MineSweeper
Die Schaltung wird definitiv mit 36kHz betrieben. Leider hat sich aber ein Denkfehler eingeschlichen:
while (count36kHz<200)
count36kHz zählt zwei Halbwellen, die Wartezeit fürs Einschwingen beträgt deshalb in dieser Version 400 Halbwellen. Richtiger, aber vielleicht nicht wirklich besser, wäre:
while (count36kHz<50)
Lesezeichen