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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.