Microcontroller Flash-Link-Kabel

Motivation:

Im nachfolgenden Projekt hatte ich vor, auf einem 8-bit Microcontroller µPSD3233B (8032-Core) meine Assembler- und C-Kenntnisse ein wenig aufzufrischen und mit den verschiedenen Interfaces (GPIO, I2C, PWM, UART, JTAG), die der Chip on-board hat, ein wenig zu experimentieren.

Der µC hat den Vorteil, daß man die Firmware (Hexcode vom Linker) über das JTAG-Interface auf den µC-Flashspeicher hochladen kann (sog. ISP - In-System-Programming), d.h. man muß den Chip nicht extra in ein separaten Programmierer stecken (was mit dem 80-poligen TQFP-SMD-Gehäuse auch gar nicht mehr geht), sondern man kann ihn direkt uf dem PCB im laufenden Betrieb über das JTAG-Interface flashen.

PC und JTAG-Interface werden über einen proprietären Adapter verbunden. Von STMicroelectronics gibt es dafür einen FlashLink-Adapter für den Betrieb am Parallelport, und einen RLINK-ST-Adapter für den USB-Port. Beide kann man für jeweils 59$ bestellen. Allerdings kann man den FlashLink-Adapter für den Paralleport auch selbst bauen - im Flashlink-Manual ist hierfür die Schaltung abgedruckt.

Realisierung:

Die Schaltung für den FlashLink-Adapter im FlashLink User Manual, auf Seite 10 funktioniert leider nicht wie abgebildet, es muß noch der Wiederstand R14 kurzgeschlossen werden. Zudem habe ich statt der DM54ALS05A Hex-Inverter die SN74LS04 verwendet, dadurch fallen dann die Pull-up-Widerstände weg. Das erfährt man erst nach etwas Recherche auf der Forum-Seite zum µPSD3200.

Hier ist der FlashLink-Schaltplan mit meinen eigenen Notizen versehen:

FlashLink Schematic

Die Bauteile habe ich mir von Conrad Electronic geholt. Für die IC's habe ich Fassungen eingelötet, zum einen um die IC's beim Einlöten nicht zu überhitzen, zum anderen, um sie leicht auszuwechseln (wegen der umfangreichen Freiverdrahtung auf der Rückseite), falls einer mal kaputtgehen sollte (unwahrscheinlich). Da auf Arbeit (Cyclades) der original FlashLink-Adapter zur Verfügung stand, habe ich die Platine und das Gehäuse in der Originalgröße angefertigt. Dadurch blieb viel Platz auf der Platine, wie man hier sehen kann:

FlashLink Adapter

Leider habe ich keine Steckerbuchse (für das JTAG-Kabel) mit abgewinkelten Pins im Laden bekommen, also mußte ich mit einer einfachen vorlieb nehmen, die ich auf eine kleine Platine aufgelötet habe und dann senkrecht zur Hauptplatine angebracht habe (auf der Unterseite gelötet und die Verbindung mit der Heißklebepistole verstärkt):

FlashLink Adapter

Da ich zu faul war, extra eine Platine dafür zu entwerfen, wurde auf der Rückseite alles frei verdrahtet:

FlashLink Adapter

Die Platine wurde dann in einem schwarzen Plastikgehäuse untergebracht, wobei Aussparungen für die Steckverbinder angebracht wurden. Vom Original-Flashadapter habe ich den Aufkleber kopiert und auf dem Gehäuse angebracht, so daß der fertige Adapter fast wie das Original aussieht:

FlashLink Adapter

Und nochmal aus einer anderen Perspektive:

FlashLink Adapter


Next: Parallel dazu wurde das µC-Testboard für einen uPSD3233B gebaut.

zurück zur Übersicht