Hallo zusammen,
µC:A ATMega32 mit 16MHz Quarz. Geflasht wird mit ISP
VCC = 5V
Ich beobachte folgendes Problem:
Ich möchte den PORTC vom ATMega32 als I/O verwenden. Alternativ liegt ja
darüber das JTAG Interface.
Im Code ist der PORTC als Ausgang deklariert, an diesem Port hängen
jeweils 8 LEDs gegen Masse.
D.h. JTAG Fuse Bit muss "deaktiviert" werden (AVR Studio5 oder
myAVR_ProgTool[vom mySmartUSBlight dongle]).
Egal über welches Tool ich die Fusebits ändere (beim auslesen sehe ich,
dass JTAG auch deaktiviert ist) bleibt wohl JTAG aktiviert.
Das sehe ich, indem z.B. die LED am PORTC PC0[SCL] ganz leicht glimmt.
Mit dem Oszi messe ich dort auch einen Takt (~9,6KHz) mit einer
Positiven Pulsbreite von ~440ns.
Ich habe auch schon versucht JTAG parallel per SW abzuschalten (
;), ohne erfolg.
Beim einschalten des µC sehe ich auch ganz kurz die 8 LED aufblitzen (da
diese beim initialisieren auf High gesetzt werden sollen):
1 | DDRC = 0xFF;
|
2 | PORTC |= (1 << PC0) | (1<< PC1) | (1 << PC2) | (1 << PC3) | (1 << PC4) | (1 << PC5) | (1 << PC6) | (1 << PC7);
|
Auszug der Fuses von AVR Studio 5 (AVR Programming)
OCDEN []
JTAGEN []
SPIEN [X]
CKOPT []
EESAVE []
BOOTSZ 2048W_3800
BOOTRST []
BODLEVEL 2V7
BODEN []
SUT_CKSEL EXTHIFXTALRES_16KCK_64MS
Beim auslesen der Fusebits über myAVR ProgTool:
Low Fuse = 0xFF
High Fuse = 0xD9
Lockbits = oxFF
Ich weis, es gibt viele Beiträge darüber, jedoch wird überall gepostet,
dass JTAG disabled werden soll, dies ist bei mir aber der Fall, trotzdem
kann ich kein Bit vom PORTC setzen.
Habt Ihr einen Tipp für mich?
Ach ja, zudem würde mich noch folgendes interessieren:
Wenn ich das FuseBit SPIEN deaktiviere ist die SPI Schnittstelle ja
ausgeschaltet. Somit wäre der µC nicht mehr über mein mySmartUSBlight
dongle programmierbar, oder? Oder geht dieses Interface immer, da ja
beim Flashen der Reset Pin auf low gezogen wird und dadurch der µC immer
über die ISP Schnittstelle programmierbar ist?
Ich habe das zwar noch nciht probiert, aber würde mich interessieren. :)
Danke und Gruß
Thomas