USB Background Debugging Interface (USB-BDI)

Das USB-BDI Interface erlaubt den Zugriff von einem Hostrechner über eine USB Schnittstelle zum mpc555 als Target Prozessor. Von diesem Interface existieren zwei Varianten: Die Revision 1 (mit einer grünen Leiterplatte) und die Revision 2 (mit einer roten Leiterplatte).

Beschreibung

Das Herz des Interfaces bildet der PX2LP USB Mikrocontroller von Cypress. Da dieser jedoch kein SPI unterstützt, wird für die Kommunikation mit dem MPC555 ein externer SPI-Controller eingesetzt.

Für eine effiziente Kommunikation mit dem MPC555 werden die BDI-Kommandos direkt und ohne Änderung via SPI zum Prozessor durchgeschleift. Das Resultat wird in umgekehrter Reihenfolge ebenfalls direkt durchgeschleift.

Übersicht (Rev. 1)

NTB USB-BDI Rev. 1 für MPC555
  1. Board Power LED (grün)
  2. USB Power LED (weiss)
  3. Debug Mode LED (blau): Leuchtet, wenn sich der Prozessor im Debug Modus befindet.
  4. BDI Live LED (gelb): Blinkt, wenn das BDI korrekt läuft.
  5. USB Mode LED (gelb): Leuchtet, wenn das BDI an einer USB 2 oder 3 Schnittstelle angeschlossen ist.
  6. USB-Power-Jumper: Ist der Jumper vorhanden, wird das BDI über die USB-Schnittstelle versorgt.
  7. Target-Power-Jumper: Ist der Jumper vorhanden, wird das BDI vom Target versorgt.
  8. EEPROM-Jumper: Muss immer gesteckt sein!
  9. Reset-Taster: Startet das BDI neu.

Übersicht (Rev. 2)

NTB USB-BDI Rev. 2 für MPC555
  1. USB Power LED (weiss)
  2. USB Mode LED (gelb): Leuchtet, wenn das BDI an einer USB 2 oder 3 Schnittstelle angeschlossen ist.
  3. BDI Live LED (gelb): Blinkt, wenn das BDI korrekt läuft.
  4. BKPT LED (gelb): Leuchtet wenn beim debuggen des BDI ein Breakpoint gesetzt wird. (nicht beim Debugen des MPC555)
  5. Freeze Mode LED (blau): Leuchtet, wenn sich der Prozessor im Debug Modus befindet.
  6. Board Power LED (grün)
  7. Power-Jumper: Ist der Jumper auf der Stellung 1/2, wird das BDI über USB versorgt. Ist der Jumper auf der Stellung 2/3 (wie auf dem Foto abgebildet), so wird das BDI vom Headerboard versorgt.
  8. EEPROM-Jumper: Muss immer gesteckt sein!
  9. Reset-Taster: Startet das BDI neu.

Schema und Datenblätter

Firmware

Eine detailierte Beschreibung der Firmware ist hier verfügbar.

Treiber

Der Treiber, für das mit der Firmware geladenen BDI ist im INF Win Driver Package enthalten. Falls Sie als Student ein BDI erhalten haben, das keine Firmware besitzt, versuchen Sie nicht diese selbst zu laden, sondern melden Sie sich bei den Mitarbeitern des Instituts für Ingenieurinformatik.

Firmware Programmieren und Downloaden

Benötigte Komponenten

Vorbereitungen

  1. Alle Programme installieren und die benötigten Dateien herunterladen.
    Achtung: Der SDCC Compiler muss im Standard-Pfad C:\SDCC\ installiert werden, sonst funktioniert er nicht korrekt!
  2. Den Jumper 8 entfernen und den Jumper 7 bzw. 6 und 7 umstecken damit das BDI nur vom USB versorgt wird. (Achtung Jumper nicht umstecken falls sich das BDI noch auf dem MPC555 Board befindet.)
  3. Das BDI mit dem PC verbinden und dafür sorgen, dass der Treiber richtig geladen wird.
  4. Der Treiber ist nicht signiert. Wenn man während des Aufstarrtens des PC F8 drückt kann man die Treibersignierung ausschalten.
  5. Unter Control Panel\All Control Panel Items\System\Advanced system settings\Environment Variables\Path die Pfade von GnuWin und dem SDCC Compiler hinzufügen.

Kompilieren

In einem ersten Schritt müssen die Makefiles ausgeführt werden. Dies geschieht indem man in Eclipse unter: Window/Show View/Make Target anklickt. Im sich öffnenden Fenster die Ordner lib und src öffnen. Zuerst die Dateien im Ordner lib mit all kompilieren danach mit dem all im Ordner src die restlichen Dateien kompilieren.

IIC Datei erstellen

In Eclipse unter External Tools Configuration auf der linken Seite Programm anklicken und dann auf New launch configuration. Unter Name: ConvertHex2IIC, unter Location: Pfad zum Hex2bix.exe File, unter Working Directory: ${workspace_loc:/MPC555-USB-BDI} und unter Arguments: -m 65535 -i -F 0xC2 -O eeprom/ntb_mpc555_usbbdi_firmware.iic src/ntb_mpc555_usbbdi_firmware.hex eintragen. Danach kann mit einem Klick auf den Play Button mit dem kleinen Koffer die iic Datei erstellt werden.

ICC Datei herunterladen

Heruntergeladen werden kann mit dem Programm CyConsole EZ-USB das beim Cypress CY3684 EZ-USB FX2LP Development Kit dabei ist. Dazu muss zuerst den Jumper 8 wieder setzen und danach auf den Button Lg EEPROM drücken und das erstellte .iic-File auswählen. Ist die Firmware heruntergeladen wird dies im unteren Feld angezeigt.