hallo!! ich mach gerade meine ersten schritte mit winavr. ums zu testen hab ich für mein atmega32 das einfachste prog der welt geschrieben. zuerst hab ich alle ports auf high gesetzt und anschließend auf low. beim testen hatte ich dann PC2, PC3, PC5 immer auf high und PC4 immer auf low. im datenblatt des atmega32 hab ich gesehn, dass das die pins fürs jtag interface sind. mir ist aber nicht ganz klar, warum jtag überhaupt aktiv ist. liegt das am makefile? (hab das ausm sample-ordner der neusten winavr version genommen - anhang) muss ich im makefile einfach die zeile/zeilen: DEBUG_BACKEND = avarice JTAG_DEV = /dev/com1 auskommentieren?? mir sagt das überhaupt nix. hoff ihr könnt mir weiterhelfen!! danke schon mal freddy0815
Gast
#238666
> mir ist aber nicht ganz klar, warum jtag überhaupt > aktiv ist. Vermutlich, weil du es nicht ausgeschaltet hast. > liegt das am makefile? (hab das ausm sample-ordner der neusten > winavr version genommen - anhang) Nein. Es liegt daran, daß beim ATmega32 ab Werk JTAG aktiviert ist. Du mußt es über die JTAGEN-Fuse abschalten, wenn du es nicht willst.
Alternativ kann man es in der Applikation ausschalten, indem man das JTD-Bit in MCUCSR setzt. Der hier gewünschte Effekt wird damit gleichermaßen erreicht, allerdings ist dieses Verfahren nicht so sicher wie das Abklemmen der JTAGEN-Fuse, da man unmittelbar nach einem Reset noch eine Chance hat, via JTAG ans Target zu kommen (und somit die Lock-Bits umgehen kann).
hat geklappt! vielen dank!
Gast
#238669
hallo.
ich habe auch so ein problem.
ich habe schon viel versucht
zum beispiel
int main()
{
MCUCSR|=(1<<JTD);
....
oder auch
int main()
{
MCUCSR=0x80;
....
wie und wo muss ich das JTC-Bit setzen um JTAG abzuschalten?
ich wäre euch für ein paar tips sehr dankbar
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.