Re: Einfacher Frequenzzähler
Hallo deuterius,
Zitat:
Falls irgendein "alter Hase" mir verborgene Schwächen dieser Methode aufzeigen könnte, würde mich das sehr interressieren
schwäche nicht gerade, aber eine nicht optimale Ressourcen-Ausnutzung.
Du benutzt Timer0 als externen Zähler und Timer1 als Torgenerator. Damit mußt Du für jeden Zählimpuls einen Interrupt auslösen, was bei niedriegen Frequenzen kein Problem darstellt, die maximal mögliche Frequenz aber unnötig verringert.
Benutzt Du Timer 0 als Torgenerator und Timer1 als externen Zähler, dann kannst Du die Counter-Unit des Timer1 verwenden und die Zähl-Interrupts einsparen.
Alternativ kannst Du, je nach verwendetem AVR, auch Timer2 als externen Zähler verwenden. Dieser besitzt meist ebenfalls eine Counter-Unit.
Nikolas Lösung entspricht, vom Grundprinzip Deiner her, nur daß er eben die Timer getauscht hat und die Counter-Unit nutzt. IMO ist das eleganter.
Wenn ich ihn noch dazu bringen OVERLAY zu verwenden, anstatt *256 oder +65536 zu rechnen, dann wär ich mit seinem Programm (fast) gänzlich zufrieden. :teufel:
Ciao,
Werner