Hallo! Ich habe folgendes Problem: Ich hab einen Atmega8 und lasse verschiedene Frequenzen am PB1 Pin ausgeben! Das funktioniert ziemlich gut aber ich würde dieses Rechtecksignal gerne noch Pulsweiten regulieren bzw. auf eine bestimmte Pulsweite einstellen! Ich arbeite bei meinem µC mit BASCOM und dem Register Tccr1a, & Tccr1b damit ich meine Frequenze ändern kann.( dabei lasse ich beim Compare1a toggeln) Wenn ich die Frequenzen ändern kann, dann kann ich kein PWM Signal erzeugen oder ich mach nur ein PWM aber da ist die Frequenz fix. Irre ich mich da?? Oder geht das doch gemeinsam?? Weiß vielleicht irgendwer ein Bauteil mit dem ich das sonst realisieren kann?? Ich hoffe es kann mir wer helfen! Lg Bernd
Hmm ich würde selber was schreiben wo ich die Pulsweite und die Frequenz selber einstellen kann, so ähnlich hab ich es jedenfalls gemacht als ich mit Bascom gearbeitet hab
Das geht ohne Probleme. In den PWM-Modes 8, 10 und 14 wird die Obergrenze des Timers und damit die PWM-Frequen im Register ICR1 festgelegt. Den PWM-Wert setzt man in OCCR1a/b (für PB1/2), dieser muß natürlich kleiner als ICR1 sein. Die Ausgabe (Set/Clear) bestimmt man über COMA/B 1/0 im TCR1A . Steht alles im Datenblatt unter Timer1 ;) avr
Hi
>Ich hoffe es kann mir wer helfen!
Was hindert dich die PWM des Timers zu aktivieren. Wenn ihr
BASCOM-Jünger schon nicht so gerne Datenblätter lest, solltet ihr
wenigstens die BASCOM-Hilfe benutzen.
MfG Spess
Sorry aber ich Programmiere noch nicht lang und kenne mich nicht so aus! Wie spreche ich diese Register genau an? Ich werde aus dem Datenblatt anscheinend nicht so schlau wie ihr! Hab nämlich schon Probiert das WGM 13 zu acktivieren! Aber sobald ich das mache ist meine "änderbare" Frequenz dahin! Bitte um HILFE!! Lg Bernd
Bernd schrieb: > Hab nämlich schon Probiert das WGM 13 zu acktivieren! Für welchen Modus? > Aber sobald ich > das mache ist meine "änderbare" Frequenz dahin! Logisch. Das geht dann alles ganz anders. Die Frequenz wird, je nach Modus, über ein einziges Timerregister eingestellt.
und welches Register?? Ich kenn mich schon garnicht mehr aus! Also so hab ich das bis jetzt! Tccr1a = &B01000000 Tccr1b = &B00001101 und bei Compare1a = 2571.42 lasse ich toggeln! Ich verstelle immer das "Compare1a" und schon habe ich meine änderbare freuequenz! Jetzt ist mein Problem, dass da ein Rechteck rauskommt und ich hätte gern nur einen Impuls bzw. eine Pulsweite. Welche Register muss ich da jetzt nehmen?? Sorry das ich nicht so auskenne aber ich mach das erst seit ein paar Monaten! Lg Bernd
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.