Hallo zusammen, ich bin gerade dabei ein Pulsprogramm zu schreiben. Ich nutze das AVR-Funk-Evaluations-Board von Pollin mit einem ATmega32. Zur Programmierung verwende ich den CodeVisionAVR und schreibe mein Programm in C. Das Prinzip ist eigentlich einfach erklärt: Ich möchte den Puls berechnen, indem ich für 10 externe Interrupts die Zeit stoppe und über diese 10Schläge und der Zeit dann die Schläge/min ausrechne. Ich verwende hierzu den INT1, der die Schläge zählt. Der Timer1 soll die Zeit messen. Die Überläufe werden im internen Interrupt aufsummiert. Ich habe die Frequenzen so niedrig wie möglich gewählt, da auch der interne Quarz des ATmega32 mit 8MHz mehr als ausreichend ist. Mit dem Timer2 wollte ich mit einem PWM ein Rechteck simulieren und die Reaktion am INT1 und der Pulsanzeige testen (leider simuliert die niedrigste Frequenz natürlich keinen natürlichen Pulsschlag ;)) Meine Frage nun: kann das ganze so laufen, wie ich mir das vorgestellt habe? Den Timer1 einfach beim 1.Impuls auf null setzen und die overflows und seinen wert später auslesen? oder was hapert an er berechnung noch? außerdem gibt es sicher eine schönere variante mit dem timer2 ein puls zu simulieren...auch wenn dieses signal später durch einen "echten" puls ersetzt werden soll. danke schonmal, ich hoffe es ist verständlich:)
hm falls ich meine frage zu umfangreich gestellt habe, hier einmal die kurzfassung: 1. wie kann ich mit dem timer2 ein pwm erzeugen, dass einen menschlichen puls simuliert? 2. wie lässt sich die pulsberechnung am einfachsten durchführen? lässt sich das register TCNT1 einfach so auslesen? mfg
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.