Kurzvorstellung: Platinenlayout mit KiCad

Für den meetwise reporter benötigte ich vor kurzem einen JTAG Adapter. Da ich schonmal mit einem sogenannten Wiggler gearbeitet hatte, wollte ich mir wieder einen bauen. Da es diesmal etwas professioneller werden sollte als einfaches Strippenziehen nach einem Schema, probierte ich verschiedene Lösungen wie Eagle, gEDA und KiCad aus. Als einsteigerfreundlichstes System zeigte sich dabei KiCad (Achtung: 200kB Bildmaterial).

Als brauchbare Dokumentation hat sich dabei KiCad_Tutorial_Ger.pdf sowie die folgenden Einträge aus dem KiCad Wiki: Mini_tutorial, FAQ und Handbuch.

Für die Wiggler-Schaltung hatte ich damals den Schaltplan von http://www.hs-augsburg.de/~hhoegl/proj/openocd/img/wiggler.jpg als Vorlage. Leider exisitiert diese Seite nicht mehr, jedoch sieht die Schaltung von http://plugin-mas.blogspot.com/2010/06/debugging-with-gdb-and-openocd-with.html sehr ähnlich aus. Beide Schaltungen haben nTRST invertiert was sich aber als OpenOCD-untauglich herausgestellt hat, da dafür erst ein Patch notwendig gewesen wäre - also habe ich es direkt verdrahtet.

Zuerst erstellt man in der KiCad Projektübersicht mit EEschema den Verdrahtungsplan für die verschiedenen Bauteile:

  • 1 Konnektor für den JTAG Anschluß am Gerät
  • 1 Konnektor für die parallele Schnittstelle am PC
  • 2 Widerstände und 1 Transistor zu Negierung und Verstärkung des nSRST-Signals
  • 1 Treiberbaustein 74HC244AP zur Verstärkung der Parallel-Port Signale
  • nTRST wird direkt über den Treiber-Baustein ansgeschlossen (dafür ohne die Negationsschaltung)

Bei genauerem Hinsehen zeigt sich, dass der Baustein 74HC244AP gleich dreimal auftaucht. Einmal am oberen Rand als reine Stromversorgung und dann zweimal als IC1A und IC1B. Da dieser IC 8 Verstärker hat, sind diese in jeweils zwei Gruppen von 4 Eingängen und Ausgängen aufgeteilt. Dies bringt eine bessere Übersicht falls man nur 4 nutzt oder wie hier, 4 für die Ausgänge des Parallel-Ports und 1 für den Datenausgang des JTAG-Ports. Wie später zu sehen sein wird, spielt diese optische Unterteilung beim Platinenlayout später keine Rolle - dort ist dann wieder alles ein Bauteil.

Ist man mit der Verknüpfung der Bauteile fertig geht es zum nächsten Schritt - dem Zuweisen der eigentlichen Bauelemente zu den Schema-Abbildern. Dafür gibt es das Programm CVpcb.

Worin liegt der Nutzen der Extrazuweisung? Ganz einfach: Aus der Schema-Zeichnung geht nicht hervor welches Pinout das jeweilige Bauteil hat. So kann es zum Beispiel den Fall geben, dass ein IC in verschiedenen Bauformen mit unterschiedlichen Pin-Belegungen existiert. Da dies in der Schema-Ansicht keine Rolle spielt (dort ist die Funktionalität wichtig) muss man für das spätere Platinenlayout festlegen wie das Bauteil eigentlich aussieht und welcher Draht wohin soll.

Hat man dies ausgewählt - bzw. automatisch auswählen lassen - geht es ans Layout. PCBnew stellt damit den letzten Teil der Kette dar. Dort nimmt man entweder den Autorouter, nutzt einen aus dem Netz (geht mit wenigen Klicks) oder zieht die Leitungen von Hand.

Die grünen und roten Linien stellen verschiedene Layer dar - in meinem Fall sind dies Drahtbrücken, da ich nur mit “1” Layer gearbeitet habe. Die Beschriftung an den Leitungen ist invertiert da ich das Layout spiegelverkehrt ausgedruckt habe um beim Löten 1:1 an der Rückseite der Platine arbeiten zu können.

Fazit: Für Einsteiger trotz der Featurefülle sehr gut geeignet.