DIY AVR JTAG-Programmierer mit AVR

Ich habe einen AVR Dragon und mehrere AVR MCUs. Ich habe kürzlich einen BeagleBone Black (Cortex-A8) gekauft. Ich versuche, meinen eigenen Bootloader zu schreiben. Dies würde jedoch einen Programmierer erfordern.

Kann ich eine AVR-MCU als Medium für die Kommunikation zwischen einem USB-Port und einem JTAG-Port verwenden? Wenn ja, wie würde ich es tun? Leite ich den Datenstrom einfach um? Muss ich noch etwas implementieren, damit es funktioniert?

Antworten (1)

Wenn ich Sie richtig verstehe, haben Sie ein AVR-Board mit USB darauf und möchten damit die Ausgabe eines Programmierers auf Ihrem PC nehmen und die JTAG-Pins auf einem ARM-Board umschalten. Dies ist sicherlich möglich, aber es ist nicht so einfach, USB-Paketdaten zu nehmen und sie an die JTAG-Pins umzuleiten.

Der Schaltplan ist einfach genug. Dieser verwendet seriell anstelle von USB, aber das Konzept ist das gleiche.

AVR-zu-JTAG-Schema

Wenn Sie wirklich ein Abenteuer wollen, können Sie die 244-seitige ARM Debug Interface v5 Architecture Specification durchlesen und Code schreiben, um alle erforderlichen Befehle, Register und Zustandsmaschinen zu implementieren. Aber zum Glück gibt es ein Open-Source-Projekt namens OpenOCD , das all das bereits getan hat .

Sie können ihre Quelle nehmen und sie selbst portieren, aber es gibt ein paar Projekte, die dies bereits mit der AVR-Architektur gemacht haben und wahrscheinlich ein besserer Ausgangspunkt wären.

Estick-JTAG
USBProg-JTAG
USBVLab-JTAG