Ich bin gerade dabei bei einem neuen Projekt eine grundlegende
Funktionsprüfung zu machen.
Allerdings scheint bei dem Atmega32U4 die PWM nur auf Kanal OC4D zu
funktionieren, OC4A und OC4B bleiben auf 0.
Im Anhang findet ihr den Schaltplan, Layout, das verwendete Testprogram
und eine Oszi Aufnahme von dem funktionierenden Kanal.
Der Atmega ist auf 8 MHz internen Takt eingestellt, die genauen Fuse
bits sind:
1 | low : 0xe2
|
2 | high : 0xd8
|
3 | extended : 0xcb
|
Ich hab zwar nur ein recht einfaches Pocket Oszilloskop, aber wenn ich
damit an den Vias oben neben dem Widerstands Array (neben der
Stiftleiste) messe, bekomme bei OC4D ein schönes Rechteck, und bei den
beiden anderen nur eine glatte 0V Linie. Die Messpunkt ist direkt das
Signal V*_PWM, vor dem R3-* Widerstand.
Ich kann mir jetzt mehrere Fehlerszenarien vorstellen. Der Atmega könnte
defekt oder nicht richtig verlötet sein. Alternativ könnten die beiden
flachen Signale irgendwo kurzgeschlossen sein. Ich hoffe aber, dass es
nur ein Konfigurationsfehler ist. Ich würde ungern mit dem QFN Paket
weiter rumpfuschen.
Falls irgendwer ein Softwarefehler finden kann, würde ich mich sehr
freuen!
*Ergänzung:*
Wenn ich PC7 und PB6 im Setup auf High stelle, messe ich an den Vias
einen entsprechenden Pegel. Ich gehe also erstmal davon aus, dass der
Chip richtig sitzt, und die Ports generell noch funktionieren.