Hallo!
Ich habe eine Platine mit einem Mega324P, die jetzt beim allerersten
Test ganz einfach eine LED an Pin PC5 anschalten soll. Das ganze läuft
mit einem externen 18,432 MHz Quarz (am Oszi geprüft, läuft ziemlich
genau mit der Frequenz).
Folgende Symptome:
* Sowohl Fuses als auch Programmcode lassen sich problemlos per avrdude
und dem USBtinyISP-Programmer schreiben, verifikation der Daten
erfolgreich
* Die LED, die angesteuet werden soll, glimmt die ganze Zeit nur, egal
was im Programmcode steht (etwa 1.5V beim Pin, Vcc = 4V).
Es scheint also, als würde der AVR hängen. Dabei dachte ich zuerst an
den Reset Pin, dieser ist allerdings schön auf High gezogen. Auch an
allen anderen Versorgungs-Pins liegen die 4V an.
Hier der Testcode:
1 | int main(void) {
|
2 | DDRC |= (1 << PC5);
|
3 | PORTC |= (1 << PC5);
|
4 |
|
5 | while(1) {
|
6 | }
|
7 |
|
8 | return 0;
|
9 | }
|
Fuses sind 0x5E, 0x99 und 0xFF (Low, High und Extended). Was könnte die
Ursache dieses sonderbaren Verhaltens sein?