Hallo, da ich das gerade brauchte, habe ich ein kleines Programm zum messen der Breite von Impulsen geschrieben. Es verwendet den externen Interrupt INT0 bei steigender Flanke und den Input Capture bei fallender Flanke und gibt die Anzahl in der Zwischenzeit vergangener Takte sowie die Anzahl evtl. aufgetretener Timerüberläufe auf dem LCD Display aus. Um dies in die Zeit in Millisekunden umzurechnen muß man nur die Anzahl Überläufe mit 65535 multiplizieren, den Stand des Zählers hinzuaddieren und dieses durch F_CPU / 1000 dividieren. Das war mir aber jetzt doch zu aufwändig, um es in dem kleinen Programm unterzubringen. Viele Grüße Michl
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.