Hallo,
an meinem Atmega 32 messe ich an den o.g. Pins eine Gleichspannung von
0,7V ... ?! Da sollte aber eigentlich ein Takt auf dem Oszi zu sehen
sein?!
Ich hab je einen Kondensator (22pF) vor dem Quarz (12MHz) und einen
danach. Bei den Fuses habe ich in AVR-Studio das drittletzte markiert
(CKSEL = 1111, SUT = 01)
Was ist denn da nicht in Ordnung?!
Hilfe!
:)
D.
@Uwe: Der µC läuft, aber nicht richig. Die PWM, die der ausgeben soll
stimmt in der Frequnz nicht mit dem überein, was eingestellt ist.
Deswegen kam ich erst da drauf, mal am Quarz zu messen.
@Andreas: Ich messe mit dem Tastkopf eines Oszilliskops ... jeden Pin
gegen Masse.
Andreas G. schrieb:
> Womit führst du deine Messungen an den Pins durch?
DS schrieb:
> Da sollte aber eigentlich ein Takt auf dem Oszi zu sehen> sein?!
Beantwortet das deine Frage?
DS schrieb:
> @Andreas: Ich messe mit dem Tastkopf eines Oszilliskops ... jeden Pin> gegen Masse.
Hoffentlich mit 10:1, denn die hohe kapazitive Last eines 1:1 Kopfes
packt der Oszillator nicht.
@ A.K.
mmh ... dann habe ich das verkehrt abgelesen. wenn ich doch in
AVR-Studio den "High-Frequency"-Crystal auswähle, wird CKOPT doch
automatisch auf null gesetzt. Oder bin ich da im Irrtum?
Hab das Studio grad nicht vor Augen, aber im Datasheet steht "low
frequency crystal" für Uhrenquarz (32KHz). Könnte sein, dass jeder
andere ein "high frequency crystal" ist.
Soweit ich mich erinnere steht im Studio bei den Alternativen der
Frequenzbereich dabei.
Wenn du es allerdings schaffst, trotz scheinbare fehlenden Taktes die
Fuses zu setzen, dann weil entweder der Takt trotzdem läuft, oder du mit
HVP programmierst.
Apropos STK500: Steckst du den Controller für's Programmieren jedesmal
um? Faulere Genossen verwenden statt dessen den 6pin ISP-Connector in
der Zielschaltung, denn diese Umsteckerei nervt doch auf die Dauer. Aber
das würde erklären, weshalb du an den Controller überhaupt noch dran
kommst.
Zeig mal deine Schaltung als Foto. Besonders die Stelle mit dem Quarz.
Aber dann verstehe ich nicht, warum die Frequenz der PWM eine falsche
ist.
Wenn ich 12MHZ Systemtakt habe und einen Teiler von 64, dann sollte doch
die Frequenz der PWM bei 187,5 kHz liegen, oder? Stattdessen sind es
1,45 MHz...
Also was jetzt? Funktioniert der Oszillator, nur nicht so wie erwartet
und mit Schrott(?) auf dem Scope, oder funktioniert er nicht?
Das unterscheidet möglicherweise zwischen Hardwareproblem und
Softwareproblem.
Besser als den Quarztakt direkt zu messen, was nämlich wegen der
angekoppelten komplexen Impedanz des Tastkopfs mit Leitung ganz oft
schief geht, ist es, einen Portpin so zu pogrammieren, daß er in einer
Endlosschleife unentwegt seinen Zustand ändert. Miß dann diese Frequenz
und rechne das auf den Prozessortakt zurück.
Kai Klaas
>> Wenn ich 12MHZ Systemtakt habe und einen Teiler von 64, dann sollte doch>> die Frequenz der PWM bei 187,5 kHz liegen, oder? Stattdessen sind es>> 1,45 MHz...
Dann läuft der Processor halt mit 100 MHz.
Bernhard
Hi
>Wenn ich 12MHZ Systemtakt habe und einen Teiler von 64, dann sollte doch>die Frequenz der PWM bei 187,5 kHz liegen,....
Nein. Eine 8-Bit Fast-PWM hätte 732,40 Hz.
MfG Spess
A.K.:
Wie gesagt, weil die PWM-Frequenz nicht stimmte, ich mir aber sicher
bin, dass ich den Timer korrekt konfiguriert habe
(TCCR2 = 0x6b; --> Fast-PWM nicht invertiert mit Teiler 64)
vermutete ich den Fehler entweder in den Fuse-Bits oder am Quarz selber.
Und was ich da gemessen habe war Schrott.
A. K. ..: Na herzlichen. Timer 0 und Timer 2 vertauscht. Also brauche
ich auch nicht mehr zu verstehen, warum auf dem Scope Schrott ist.
Scheint ja alles zu laufen.
Ich bedanke mich für die Tipps und die Hilfe. Nicht lachen, okay?! :D
Der Thread ist allerdings ein Lehrbeispiel für: "Warum nützt mir die
Antwort auf die völlig falsch gestellte Frage nichts?"
Besser: Das eigentliche Problem schildern, nämlich die falsche
PWM-Frequenz. Dann erst die Überlegungen dazu aufführen, nämlich die
scheinbar falsche Quarzfrequenz.