Guten Tag, ich habe mit einem Atmega32 ein PWM Signal generiert. Verwendet wird es für Servos, Motorregler, ... also der 50Hz Standard. Für z.B. 1ms habe ich 1975 als COMPARE-Wert (gemessen mit Oszi). Wie kann ich z.B. einen Wert von 3000 (ohne mit dem Oszi zu messen) in eine Zeit umrechnen? Danke im vorraus
Dreisatz? 1ms / 1975 * 3000 = 1,5ms Im absoluten Notfall kann man ja auch den Prozessortakt hernehmen, durch den programmierten Vorteiler dividieren und dann die Schrittweite des Timers berechnen. Aber wirklich nur im Notfall ... Peter
Servus, naja sowas macht man normalerweise über die bekannte Frequenz vom µC sowie der CaputerCompare Unit (also beim XC164 von Infineon). Hier gibts dann Relaodwerte und aktuelle Werte. Über die Frequenz kannst du ja dann zählen, wie wieviele Zyklen ein Count benötigt. Und anahnd der Frequenz weist du wielange ein Zyklus dauert! MfG Mathias
Danke für die Antworten. Ich kann den Wert ungefähr berechnen, indem ich mir einen am Oszi anschaue und dann die anderen daraus mit Volksschulmathematik berechne, soweit hab ich das herausgelesen. Aber wie berechne ich das aus dem CPU-Takt und dem Vorteiler?
Oder wenn es mit dem Dreisatz und dem Rechnen gar nicht klappen will, läßt sich das im Simulator von AVRStudio mit der Stopuhranzeige auch ausprobieren. Breakpoints an die richtige Stelle und laufen lassen ...
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.