-
-
wenn das signal nicht prellt, kann man es einfach auf einen der beiden interrupteingänge des mega legen und bei jedm interrupt den zählerstand um eins erhöhen, da sollte man ein 16 bit register, wenn nicht sogar ein 24-bit register nehmen, kommt auf die max drehzahl an: bei 16bit maximal 65535 rpm; bei 24: 16777215 rpm, hmm scheint doch etwas viel^^; hab grad keine vorstellung,, wie schnell son teil dreht (bin leider zu jung um sowas zu fahren^^).
dann braucht man nen timer, der alle jede sekunde überläuft (Timer 1 im ctc modus glaub ich), der gibt dann den wert der rpm irgendwo aus und setzt den wert wieder auf 0, oder man lässt ihn alle halbe sekunde überlaufen und multiplizert die umdrehungszahl mit 2 und hat die rpm, dann sollte man wohl dicke mit nem 16-bit register auskommen^^
man könnte dann vielleicht noch ne rundung oder eine interpolation(?) über die zeit hinzufügen, damit der wert nicht so springt und man besser lesen kann.
mit UART oder lcd könnte das in assembler vielleicht maximal ne gute DinA4 seite sein, wenn man die ansteuerungsroutinen nicht dazurechnet.
in basic sollte das n fliegenschiss sein und in c auch nich sonderlich viel, da hat man allerdings auch wieder die ansteuerungsroutinen/libs für lcd bzw UART oder was man sonst haben will.
basic code könnte ich jez nich posten, weil ich in C progge (und gelegentlcih assembler), aber ich bin ja auch nich gefragt^^
Ele
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen