1.4  Hardware für die Entwicklung

Beim Entwurf von Mikrocontroller-Systemen, speziell wenn man neu beginnt, sollte man Software- und Hardware-Entwicklung voneinander trennen. Dem Anfänger ist zunächst immer anzuraten auf fertige Hardware-Plattformen zurückzugreifen. Damit ist man sicher, dass diese funktionieren. Treten dann in der Entwicklungsphase Fehler oder Probleme auf, so können diese leichter identifiziert und lokalisiert werden. Auf dem Markt gibt es viele Firmen, die so genannte ”Development Boards” oder ”Evaluation Boards” für den MSP430 anbieten. Diese bestehen aus einer Platine, auf der in der Regel ein bestimmter Mikrocontroller aus der MSP430-Reihe fest aufgelötet ist. Im Gegensatz zu Mikrocontrollern der Atmel AVR-Serie oder zu PIC-Mikrocontrollern sind die MSP430 ja nur in SMD-Gehäusen erhältlich. Demzufolge gibt es auch kaum Entwicklerboards, die Fassungen oder Sockel zum Austausch von Prozessoren enthalten, da diese den Preis des Entwicklungsboards deutlich in die Höhe treiben. Für Hobby-Entwickler ist gerade das SMD-Package ein wesentlicher Hinderungsgrund, die MSP430-Prozessoren zu verwenden. Abhilfe bieten hier beispielsweise die Headerboards der Firma Olimex, siehe 1.4.3. Andererseits sind SMD-Bauteile mit ein wenig Übung auch ohne teures Spezialwerkzeug leicht zu löten. Meist besteht da eine eher psychologische Hemmschwelle. Im Anhang A.2 findet man einen kleinen Lötkurs, in dem beschrieben ist, wie man die feinen SMD-Gehäuse auch ohne Profi-Ausstattung verarbeiten kann.

Neben dem Prozessor sind oft noch zusätzliche Komponenten auf den Evaluation-Boards integriert. Für den Prozessortakt sind verschiedene Quarzoszillatoren bestückt und eine Beschaltung für die serielle Schnittstelle ist meist vorhanden, wie sie ähnlich auch in Kapitel 8 beschrieben wird. Als Schnittstelle zu eigener zusätzlicher Hardware sind alle oder ausgewählte Prozessorpins auf Steckverbindern oder Pfostenleisten zugänglich. Für kleinere Aufbauten steht mitunter ein leeres Lochraster-Feld zur Verfügung. Als Debug- und Programmier-Schnittstelle wird ein JTAG-Interface verwendet. Einige Schalter und Leuchtdioden erleichtern die Erstellung erster Programme.

Im Gegensatz zu solchen multifunktionellen Boards gibt es auch spezialisierte Evaluation-Boards, die dann noch weitere Hardware-Komponenten zusätzlich zum Mikrocontroller enthalten. So zum Beispiel Systeme zur Evaluierung bestimmter Funkchips [Tex07b]. Im Folgenden werden einige der heute erhältlichen Developer-Boards beschrieben, ohne jedoch einen Anspruch auf Vollständigkeit zu erheben.

1.4.1  Texas Instruments EzMSP430

Als Einsteigerset wurde von Texas Instruments das EzMSP430-Kit entwickelt. In diesem ist der MSP430F2013 integriert, mit dem man erste einfache Experimente zum Kennenlernen der Prozessorfamilie und der Entwicklungsumgebung durchführen kann.


PIC

Bild 1.7.: Das Texas Instruments EZ430-Starter-Kit, [Tex06a]


Für nur 20 Euro erhält man aber immerhin ein komplettes Entwicklungssystem. Öffnet man das Gehäuse, kann man das Innenleben etwas genauer betrachten, Bild 1.7. Einen wesentlichen Teil nimmt das USB-Debugging-Interface ein. Über dieses kann ein Programm in den MSP geladen werden und danach ermöglicht es das schrittweise Debuggen der Anwendung. Auch die Stromversorgung wird über die USB-Schnittstelle realisiert. Auf einem austauschbaren kleinen Headerboard ist der Prozessor untergebracht. Alle funktionellen Pins sind über Lötpunkte erreichbar. Alles in allem hat man hier ein vollständiges Entwicklungssystem, mit dem man die grundlegenden Funktionen der MSP-Familie entdecken kann. Möchte man allerdings andere und größere MSP-Typen verwenden, die kein spy-by-wire-Interface besitzen, so muss man sich nach etwas anderem umsehen.

Texas Instruments MSP430-FET-Emulation-Tool

Die Familie der MSP430-FET-Emulation-Tools besteht aus zwei Komponenten: einem JTAG-Adapter und einem Evaluation-Board. Dieses Board ist sogar mit einem ZIF-Sockel ausgestattet, in den die Prozessoren ohne Löten reversibel in die Schaltung eingesteckt werden können. Je nach Ausführung werden verschiedene MSP-Modelle unterstützt (Bild 1.8).


PIC    PIC

Bild 1.8.: Das Texas Instruments MSP430-FET-Emulation-Tool für 64-polige MSP-Varianten (z.B. MSP430F16xx), [Tex09]


Über Pfostenstecker können Hardware-Erweiterungen an die Portpins angeschlossen werden, so dass man im Prinzip die vollständige Funktionalität des Prozessors mit diesem Evaluation-Board ausloten kann. Andererseits macht der ZIF-Sockel die Boards relativ teuer (ca. 120).

1.4.2  Texas Instruments MSP-EXP430FG4618 Experimenter Board

Besitzt man schon einen geeigneten JTAG-Adapter, kann man das Texas Instruments MSP-EXP430FG4618 Experimenter Board verwenden, Bild 1.9. Auf dem Board sind neben zwei verschiedenen Prozessoren (MSP430FG4618 und MSP430F2013) eine Menge Peripheriekomponenten untergebracht, mit denen alle wesentlichen Funktionen des MSP mit entsprechender Hardware Ankopplung ausprobiert werden können. Der Preis von derzeit 99$ ist gemessen an der gebotenen Funktionsvielfalt durchaus angemessen.


PIC

Bild 1.9.: Das Texas Instruments MSP-EXP430FG4618 Experimenter Board, [Tex07d]


1.4.3  Olimex Headerboard

Als wirklich minimalste Version eines Development-Boards können die von der Firma Olimex (www.olimex.com, [Oli08]) hergestellten Headerboards gelten. Diese sind erhältlich für verschiedene Prozessortypen, z.B. den MSP430F149. Im Wesentlichen bestehen sie nur aus einer kleinen Platine, bei der alle funktionalen Pins auf Stiftleisten herausgeführt sind, Bild 1.10. Zusätzlich ist ein Steckverbinder für ein JTAG-Interface, ein Quarz sowie ein Lötplatz für einen zweiten Quarz vorhanden. Da die Platine über das JTAG-Interface auch mit Strom versorgt werden kann, ist es hiermit schon möglich, erste Software zu entwickeln und z.B. die Funktion der Pins mit einem Oszilloskop zu visualisieren. Natürlich ist der eigentliche Zweck, das Headerboard mit einer Fassung in das eigene Design zu integrieren und so die Verbindung zu weiterer Hardware herzustellen. Mit etwas Löterfahrung können diese Boards auch sehr leicht selbst hergestellt werden. Ein Layoutvorschlag für einen MSP430F149 und dazu pinkompatible Typen finden sich im Anhang A.4.


PIC     PIC

Bild 1.10.: Olimex Headerboard (links) und Eigenbau (rechts)


1.4.4  Olimex Prototyping Board

Ein einfaches und kompaktes Prototyping-Board für den MSP430F1612 wird von Olimex zu einem sehr günstigen Preis hergestellt. Für 30-40(je nach Prozessor, Stand 2010) erhält man ein sehr vielseitig einsetzbares Entwicklungssystem. Quarze für den Takt sowie Hardware-Unterstützung für die serielle Schnittstelle sind schon fertig aufgebaut. Alle anderen Portpins können über eine 40-polige Pfostenleiste konnektiert werden. Ein Punktrasterfeld kann zum Aufbau kleiner Erweiterungsschaltungen genutzt werden. Auch dieses Board verfügt über den üblichen JTAG-Stecker für Programmierung und Debugging.


PIC

Bild 1.11.: Olimex Prototyping Board [Oli08]


1.4.5  Das Elektor Experimentierboard

In Zusammenarbeit mit einer niederländischen Hochschule hat der Elektor Verlag ein eigenes Experimentierboard entwickelt. Als Debug-Interface wird hierbei ein EzMSP430-Kit verwendet, bei dem anstelle der kleinen Prozessorplatine dann dieses Experimentierboard angeschlossen wird. Als Prozessor kommt ein MSP430F2012 im DIP-Gehäuse zum Einsatz. Zusätzlich ist die Platine mit einer 7-Segment-Anzeige, einem Summer sowie mit einigen LEDs und Tastern bestückt.


PIC

Bild 1.12.: Elektor Experimentierplatine [Ele]


1.4.6  JTAG-Adapter

Zum Debugging und Programmieren des Prozessors benötigt man einen JTAG-Adapter. Für dieses standardisierte Interface bieten viele Hersteller mitunter sehr aufwändige Geräte an, die auch die MSP430-Prozessorfamilie unterstützen. Benötigt man diese Funktionsvielfalt nicht, kann man für die alltäglichen Projekte auf kostengünstige Lösungen zurückgreifen, wie sie die Firma Olimex für den Parallelport anbietet. Bei einem Preis von 18,50 ist dieser kaum billiger selbst herzustellen. Für ganz sparsame ist im Anhang auch ein Schaltplan mit Platinenlayout angefügt. Als Alternative für Computer, die über keine parallele Schnittstelle mehr verfügen, gibt es auch einen JTAG-Adapter für die USB-Schnittstelle.


PIC    PIC

Bild 1.13.: JTAG-Adapter für den Parallelport (links) und USB (rechts)[Oli08]


Auch Texas Instruments liefert mit seinem MSP430-FET-Emulation-Tool (siehe 1.4.1) einen ähnlich aufgebauten JTAG-Adapter entweder für Parallelport oder USB aus. Man kann diese auch einzeln beziehen, allerdings liegen hier die Preise etwas höher als bei Olimex.


PIC

Bild 1.14.: JTAG-Adapter von Texas Instruments für USB[Tex09]


1.4.7  MEDIT Developer Board

Als Basis für eigene Aufbauten und zur Berücksichtigung zusätzlicher Erfordernisse wie die galvanische Trennung der seriellen Schnittstelle, haben auch wir am Lehrstuhl für Medizinische Informationstechnik einen eigenen Entwurf eines Prozessorboards hergestellt. Mittlerweile existieren von diesem verschiedene Versionen für verschiedene Prozessortypen. Stellvertretend soll an dieser Stelle nur die neueste Version V4.04 vorgestellt werden. Im Anhang sind auch Layouts für zwei weitere Boards zu finden. Für etwas weniger Lötbegabte seien diese zu empfehlen, da sie entweder fertig konfektionierte Headerboards (siehe Olimex Header Board (1.4.3)) aufnehmen können oder den etwas leichter zu lötenden MSP430F1232 enthalten. Nachfolgendes Foto zeigt eine Ansicht des MEDIT MSP-Boards V4.04. Als spezielles Highlight ist auf diesem Board die JTAG-Schnittstelle für den Parallelport schon fertig integriert.


PIC

Bild 1.15.: MEDIT MSP-Board V4.04


Im Prinzip ist das Design als einseitiges Platinenlayout konzipiert, so dass alle SMD-Bauteile auf der Unterseite bestückt sind. Die wenigen Verbindungen auf der Oberseite können auch einfach mit Drahtbrücken hergestellt werden. Als Prozessor ist der MSP430F1612 aufgelötet. Alternativ können natürlich auch die dazu pinkompatiblen Typen (F149, F169, F1610 und F1611) bestückt werden. Das Board besitzt insgesamt fünf Pfostensteckverbinder, mit denen alle wesentlichen Pins des Prozessors zugänglich sind. Ein weiteres Feature ist der erwähnte, bereits integrierte JTAG-Adapter zum Anschluss an die parallele Schnittstelle des Computers. Die Spannungsversorgung kann entweder über ein Steckernetzteil (5-12 Volt Ausgangsspannung) mit 2.1 mm Hohlstecker oder über ein Labornetzteil realisiert werden. Auf jedem der Steckverbinder ist diese Spannung und ein Masseanschluss zugänglich. Viel Aufwand wurde für den Aufbau einer galvanisch getrennten RS232-Schnittstelle betrieben. Über einen Magneto-Koppler vom Typ ADUM2402 kann so theoretisch eine Isolationsfestigkeit von 4000 V erreicht werden. Mehr zum Thema Isolation und elektrische Sicherheit ist in Kapitel 9.3 zu finden. Die PC-seitige Energieversorgung der Schnittstelle erfolgt über den PS/2-Anschluss. Auch zu dieser Platine sind Schaltplan und Platinenlayout im Anhang A.4 zu finden.