Forum: Projekte & Code AVR JTAG - Fuses lesen


von F. V. (coors)


Angehängte Dateien:

Lesenswert?

Hallo Forum,

Da ich mich vor Kurzen mit dem JTAG interface von AVRs beschaeftigt 
habe, will ich nun den Code dafuer teilen.

Das angehaengte Beispiel kann direkt auf einen Arduino geladen werden um 
per JTAG (per pins 8,9,10, und 11) die signature bytes (welche MCU bin 
ich?) sowie fuse Einstellungen (u.A. die clock source) zu lesen.

In dem Beispiel werden keine fuses gesetzt, es ist also sicher es 
einfach mal aufzuspielen und auszuprobieren.


JTAG kann benutzt werden um AVRs zu programmieren, fuses zu setzen oder 
boundary scans (test von pins per code - z.B. wenn man 100 boards macht 
und sicherstellen moechte dass alle funktionieren) durchzufuehren.

Direkt nuetzlich ist das Beispiel wenn man wissen will ob der AVR 
"verfused" ist, also die clock source als extern angegeben ist obwohl 
kein Quartz oder Oszillator vorhanden ist und man sich so aus dem ISP 
"ausgesperrt" hat. Hier kann man per JTAG die Fuses umstellen (nicht im 
Beispiel enthalten aber einfach zu editieren), so dass der AVR auch mit 
internem RC Osc. wieder funzt ;)

Ansonsten ist es (mit deutlich mehr Aufwand) auch moeglich den AVR zu 
programmieren, also einen Arduino als Programmierer umzuwandeln. Meiner 
Meinung nach gibt es genug sehr guenstige Programmierer, so dass dies 
nicht notwendig sein sollte. Allerdings kann man z.B. einen Arduino mit 
WIFI shield benutzen um einen AVR per Netzwerk neu zu programmieren 
(laaaangsam aber man muss nichtmal vom Schreibtisch weg). ;)

Hoffentlich ist das Beispiel nuetzlich und illustriert wie JTAG benutzt 
werden kann.

Viele Gruesse,
Felix

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.