MSP430 Launchpad

Projektdatum: 30.01.2011

Das MSP430 Launchpad ist ein extrem günstiges aber dennoch leistungsstarkes Entwicklungsboard für die MSP430 Value-Line. Diese Mikrocontroller zeichnen sich vorallem durch ihren extrem niedrigen Stromverbrauch aus. Deshalb sind Sie ideal für kleine, Batterie betrieben Geräte. Sie haben zudem eine 16-Bit Architektur.

Das Board

Das ist das LaunchPad

Im oberen Teil befindet sich die Emulations- sowie Debugginghardware. Im unteren Bereich kann man bis zu 20-Polige DIL Mikrocontroller einstecken und programmieren.

Dem Programmierer stehen 2 LED’s zur verfügung. Sie haben die Farben rot und grün. Zudem befinden sich 2 Taster auf dem Board. Programmiert wird bequem über die mini USB-Buchse. Somit ist das Launchpad mit so ziemlich allen Computern und Laptops kompatibel.

Als Entwicklungsumgebung stehen einem verschiedene Hersteller zur auswahl.

Auch opensource Porgramme wie z.B. MSPGCC werden unterstützt. Von IAR gibt es die Kickstart-Edition, welche ein Codelimit von 4kb hat. Zudem gibt es das CodeComposerStudio, kurz CCS. Dieses hat ein Limit von 16kb.

Zum Preis von 4.30$ gab es das Launchpad eine begrenzte Zeit lang mit kostenlosem internaionalem Versand zu haben. Der Link auf die TI Seite ist oben rechts bei den Links.

Die Controller der Value-Line

Hier habe ich die interessantesten Controller der Value-Line ein wenig genauer unter die Lupe genommen. Die MSP430 Controller haben, im gegensatz zu anderen Mikrocontrollern wie beispielsweise dem AVR, eine Von-Neumann-Architektur.

  • MSP430G2211
  • MSP430G2231

Hauptfeatures:

SpeicherSRAMI/OUSIADCTSensorComp.
2kb128b10JaNeinNeinJa

Der Spannungsbereich ist bei allen MSP430G2xxx bei 1.8V – 3.6V

Hauptfeatures:

SpeicherSRAMI/OUSIADCTSensorComp.
2kb128b10JaJaJaNein

Der Spannungsbereich ist bei allen MSP430G2xxx bei 1.8V – 3.6V

Erste Schritte

  1. Als erstes benötigt man ein LaunchPad 🙂
    Dieses bekommt man für gerademal 4.30$ im Texasinstruments Store hier
  2. Nun müssen wir eine Entwicklungsumgebung installieren.
    Ich verwende derzeit das CodeComposerStudio von TI.
  3. Wenn alles installiert ist, können wir das CCS öffnen und ein erstes Beispielprogramm öffnen.

Die Entwicklungsumgebung – Code Composer Studio

Zum entwickeln empfiehlt es sich zu Beginn die Software von TI zu verwenden.
Das sogenannte CodeComposerStudio oder kurz CCS.

Dieses findet man hier zum Download

In der FREE-Version ist es auf 16kB Code begrenzt. Dies reicht zu beginn meistens. Für grössere Projekte empfiehlt es sich auf mikrocontroller.net nachzulesen, wie man das launchpad zusammen mit dem freien GCC Compiler und Eclipse verwenden kann.

Neues Projekt und Buttons

Zu Beginn benötigen wir ein neues Projekt. Dazu klicken wir im CCS auf Datei -> Neu -> CCS Projekt

  1. Danach öffnet sich ein Dialogfenster mit einem Assistenten. Dieser führt uns nun Schritt für Schritt zum Ziel, dem eigenen Projekt.
  2. Zuerst vergeben wir dem Projekt einen Namen und bestimmen den Speicherort.
  3. Danach wählen wir den Projekttyp (MSP430) und was wir erzeugen möchten.
    Wir möchten in diesem Fall ein Release und ein Debug erzeugen können.
  4. Abhängigkeiten haben wir keine. Also hier auf weiter klicken.
  5. Nun müssen wir den Controller-Typ auswählen. Wähle dazu den Namen welcher auf dem IC steht, welcher sich in deinem Launchpad Sockel befindet.
  6. Nun klicken wir “fertigstellen”.

Das Projekt wurde nun angelegt. Wir müssen jedoch noch eine main.c hinzufügen.
Klicke dazu mit der rechten Maustaste auf dein neues Projekt und wähle:
New -> File -> Source File

Im Fenster gibst du nun “main.c” ein und bestätigst mit ok.

Nun kannst du loslegen und programmieren!

Die Software ansich ist sehr intuitiv bedienbar. Durch ein paar Klicks hat man schnell die wichtigsten Dinge gefunden. Für alle nicht-gern-herumklicker hier noch ein paar wichtige Buttons

Diese Buttons befinden sich oben links im CCS.
Sie dienen dazu, das aktive Projekt zu erzeugen oder es zu Debuggen. Drucken lässt sich mit dem einen Button auch. Speichern mit dem inaktiven ganz links.

Dieser Button erzeugt das aktive Projekt. Aktiv ist jenes Projekt, welches links im Projektemanager ausgewählt ist.

Nach dem erzeugen kann man das Projekt sogleich auch Debuggen.
Dazu genügt ein Klick auf diesen grünen Käfer.

Ports und deren Konfiguration

Das CCS hat bereits vorkonfigurierte PORT-Bezeichnungen dabei. Hier sind einige davon aufgelistet.

BezeichnungBeschreibung
P1DIRKonfigurationsregister für Port1 (Ein und Ausgänge)
P1INEingangsregister für Port1 (Eingang)
P1OUTAusgangsregister des Port1 (Daten ausgeben)
BIT0..7BIT Deklaration für den Zugriff auf die Register
WDTCTLWatchdog Control Register

Um nun z.b. das Bit5 von Port1 als Ausgang zu schalten, muss man eine logische 1 an diese Stelle schreiben. Dazu hat man zwei Möglichkeiten. Entweder man macht es direkt, in dem man den Wert in das Register schreibt

P1DIR = 0x20;

oder man löst es über Bit-Verknüpfungen wie man es vom AVR gewohnt ist.

P1DIR |= BIT5; //Setzt Bit5 durch eine oder (|) Verknüpfung als Ausgang

Möchte man mehrere Bits gleichzeitig konfigurieren, geht dies so:

P1DIR |= (BIT5 + BIT2); // Konfiguriert BIT5 und BIT2 als Ausgang

Möchte man ein Bit als Eingang konfigurieren verwendet man eine und (&) Verknüpfung

P1DIR &= ~BIT5;

P1DIR &= ~(BIT5 + BIT2); //Konfiguriert BIT5 und BIT2 als Eingang

Dieses Zeichen ~ invertiert das nachfolgende Bit.

Der Watchdog und die Clocks

Damit ein Programm beim Launchpad auch ohne Debugger läuft, muss man den Watchdog deaktivieren. Dies geschieht über folgende Zeile Code

WDTCTL = WDTPW + WDTHOLD; // Stop WDT

Damit der Controller auch einen Takt erhält, konfiguriert man diesen über folgenden Code auf 1MHz intern kalibrierten Takt

BCSCTL1 = CALBC1_1MHZ; // Set range
DCOCTL = CALDCO_1MHZ; // SMCLK = DCO = 1MHz

More projects