In diesem Beispiel-Programm (C und Assembler) wird der Timer initialisiert und es wird mit Interrupts gearbeitet. Wie im vorherigen Programm (Blinklicht ohne Timer) wird wieder eine LED zum blinken gebracht.
Tag Archives: msp430
MSP430 Blinklicht (ohne Timer)
Das Programm lässt eine LED alle 500ms blinken (500ms aus, 500ms an) -> Blinklicht. Ein Beispiel-Programm in Assembler, programmiert ohne Timer, sondern mit einer Verzögerungsfunktion (mit einer gewissen Genauigkeit). Das Unterprogramm kann als “Software-Timer” benutzt werden. Falls es auf keine hohe zeitliche Genauigkeit ankommen soll, können solche Delay-Funktionen/Unterprogramme sehr gut benutzt werden.
MSP430 Kopierfunktion (Flash in RAM)
In diesem Beispiel-Programm wird eine einfache Kopierfunktion in C und ASM geschrieben. Die Funktion/Unterprogramm soll Daten aus dem Flash in den RAM kopieren bis ein bestimmtes Zeichen bzw. ein bestimmter Wert gefunden wurde (in diesem Beispiel wird ein String kopiert bis das Stringende-Zeichen gefunden wurde). Sind die Daten für den reservierten Buffer zu groß, wird eine 0 zurückgegeben, bei einem erfolgreichen Kopiervorgang eine 1.
MSP430 Buffer erstellen und initialisieren
In diesem Beispiel-Programm soll ein Buffer mit einer definierten Größe erstellt werden und komplett initialisiert werden (mit einem bestimmten Wert). Weiterhin wird das Initialisierungs-Unterprogramm in einer eigenen Datei ausgelagert.
MSP430 Assembler-Programmierung: Grundlagen
In diesem Artikel geht es um die Grundlagen der Assembler-Programmierung für den MSP430 (speziell um das Launchpad oder auch MSP430G2231/MSP430G2211). Es sollen bestimmte Ports gesetzt werden oder abgefragt werden. Dazu gibt es ein kleines Beispielprogramm.
MSP430 C-Programmierung: Grundlagen
In diesem Aritkel soll es einen kleinen Einstieg in die C-Programmierung für den MSP430 geben. Das Assembler-Programm aus dem Artikel “Assembler-Programmierung” wird in ein C-Programm übersetzt und beschrieben.
MSP430 Assembler-Befehle
Hier gibt es eine Übersicht aller Assembler-Befehle für den MSP430. Insgesmt bietet der MSP430 27 Hauptbefehle und 24 emulierte Befehle. Die emulierten Befehle sollen für eine bessere Code-Übersicht sorgen bzw. das Programmieren leichter und schneller machen.
Die Befehle werden in 3 Gruppen geordnet:
- Dual-operand
- Single-operand
- Jump
Der MSP430 ist ein 16bit-Prozessor, bietet also die Möglichkeit zwischen Byte (8bit) und Word (16bit) Befehlen zu unterscheiden. Dazu wird hinter dem ASM-Befehl “.w” oder “.b” geschrieben. Wird keine Ergänzung hinter einem ASM-Befehl geschrieben, wird standardmäßig von einem “Word”-Befehel ausgegangen (Vorsicht ist hier geboten! Solche Fehler findet man (je nachdem wie lang der Code ist, sehr schwer).
Status-Bits:
- V = Overflow-Flag
- N = Negative-Flag
- Z = Zero-Flag
- C = Carry
Kurzübersicht: Code Composer Studio v4 (CCSv4)
In diesem Artikel soll die IDE “Code Composer Studio” von Texas Instruments vorgestellt werden. WIe schon geschrieben, handelt es sich um eine integrierte Entwicklungsumgebung. CCS wurde speziell für die Prozessor-Familie von Texas Instruments entwickelt und basiert auf Eclipse. Die IDE beinhaltet verschiedene Tools zum entwicklen, einen Debugger, Compiler und vieles mehr.
Für das Launchpad gibt es eine “spezielle” Version, diese nennt sich “CCS-FREE” oder auch “CCSv4 MSP430/C28x code size limited image” und ist für den MSP430 auf 16kB beschränkt (C28x: 32kB). Die Version kann ohne Probleme für die MSP430-Reihe genutzt werden und kann umsonst runtergeladen werden. (Einen Download-Link findet sich unter “Artikel->MSP430”)
Ich werde hier die wichtigsten Funktionen der IDE vorstellen.
MSP430 TI Launchpad in VirtualBox (Host: Linux, Guest: Windows)
In dieser kleinen Anleitung soll das Launchpad in VirtualBox eingebunden werden. Als Host-System kommt Debian (Unstable) zum Einsatz, in der virtuellen Maschine wird Windows XP verwendet (um später mit Code Composer Studio arbeiten zu können).
Zunächst wird VirtualBox installiert (die aktuellen Header-Dateien müssen auch installiert sein):
apt-get install virtualbox virtualbox-qt virtualbox-dkms virtualbox-guest-additions-iso
Über den Befehl “virtualbox” kann der VirtualBox-Manager gestartet werden.
Um USB-Geräte in die virtuelle Maschine einbinden zu können, muss der aktuelle User noch in die “vboxusers” Gruppe eingetragen werden:
adduser username vboxusers
Nun sollten USB-Geräte über den Menü-Punkt “Devices -> USB Devices” eingebunden werden können.