Die Fusebits sind auf den externen Quarz eingestellt. Und vom PC kommt auch was am AVR an.
Deinen Code habe ich ausprobiert, leider funktioniert es nicht! Ich hab keine Ahnung an was das liegt...
Druckbare Version
Die Fusebits sind auf den externen Quarz eingestellt. Und vom PC kommt auch was am AVR an.
Deinen Code habe ich ausprobiert, leider funktioniert es nicht! Ich hab keine Ahnung an was das liegt...
Sorry das ich das alte Thema nochmal ausgrabe...
die Formel von RCO ist alsoZitat:
Zitat von RCO
Ausgangsfrequenz = (Quarzfrequenz/Prescale ) /(Timerauflösung)
im Artikelbereich RN-Wissen (https://www.roboternetz.de/wissen/in...Bascom_und_PWM) steht:
Ausgangsfrequenz = (Quarzfrequenz/Prescale ) /(Timerauflösung*2)
was stimmt denn nun?
Hi BlooD,
Du solltest bei deiner Berechnung auch deine Timer-Auflösung Berücksichtigen....Zitat:
Ja es geht mehr, Timer 1 hat 10 Bit! Du musst oben statt "Pwm = 8" "Pwm = 10" schreiben
So wie ich das sehe ist im RN-Wissen ein kleiner rechen fehler. Wenn die Formel stimmt, was ich im Moment nicht sicher sagen kann, sollte sie schon so heißen .... Ausgangsfrequenz = (8000000Hz / 8) / (1024*2) = 488,28 Hz , da der Timer auf 10 Bit steht und 2^10 = 1024 ist :)
Gruß,
CodeWarrior
Hallo Leute,
also mir ist wohl tatsächlich ein Fehler unterlaufen, vielleicht habe ich mich im Datenblatt verlesen, also folgendes soll das jetzt klatstellen:
Hier der Auszug aus dem Datenblatt:
Bild hier
Also da sieht man ja ganz gut, wies berechnet wird.
Also stimmt:
Zitat:
Ausgangsfrequenz = (Quarzfrequenz/Prescale ) /(Timerauflösung*2)
Es kommt auf den PWM-Modus an.
Fast-PWM: Ausgangsfrequenz = (Quarzfrequenz/Prescale) /(Timerauflösung)
Phase&Frequency-Correct-PWM: Ausgangsfrequenz = (Quarzfrequenz/Prescale) /(Timerauflösung*2)
Die Timerauflösung kann man zusätzlich runterdrehen.
Das wollte ich mit obenstehender Tabelle doch sagen ;-).
Du meintest am Ende dass es mit (Timerauflösung*2) richtig sei.
Ist auch egal jetzt.
Danke erstmal, aber das wirft nun eine weitere Frage auf :/
Wo ist der Unterschied? Ich hab zwar die betreffenden Stellen im Datenblatt gelesen, aber schlau daraus bin ich nicht wirklich geworden. Vielleicht kanns einer mit einfachen Worten erklären?
Du meinst den Unterschied zwischen "normalen" PWM und Fast-PWM.Zitat:
Wo ist der Unterschied?
Naja, man kann mit dem Timer so einiges an "Unfug" anstellen.
Der Fast-PWM ist schneller aber generell ist die Frage was man bruacht, es gibt die Möglichkeit Interrupts auszulösen, Pins entsprechend des PWM-Wertes zu schalten...
Insgesamt bietet der Mega8 16 verschiedene Arten die Timer zu benutzen (Seite 99). Da kann man dann auch mal schauen, was nötig ist.
Soll die Obergrenze variabel sein, soll ein Interrupt ausgelöst werden, soll der PWM möglichst schnell (hohe Frequenzen) sein...
Was genau brauchst du denn?
Öhm, ich meinte den Unterschied zwischen
- Fast-PWM
und- Phase and Frequency-Correct-PWM
aber ich schau mir die Seite später doch nochmal an.