Genehmigung des FTZ Leipzig unter Einsatz entsprechender Systeme reproduziert, verarbeitet, vervielfältigt oder verbreitet werden. Kontaktadressen: FTZ Leipzig e.V. an der HTWK Leipzig Michael Eiserbeck / Daniel Käßler Wächterstraße 13 D-04107 Leipzig Tel.: +49 (0)341-3076 1136 Fax: +49 (0)341-3076 1220 E-Mail: msp430edu@ftz-leipzig.de Internet: http://www.ftz-leipzig.de/ Handbuch MSP430 Education System Seite 4...
Literatur- und Quellenverzeichnis III. History • 21.03.2014 Initialversion • 11.12.2014 Handbuch an die Hardware V3.3 angepasst • 04.02.2015 Bemaßungen für das Board erstellt und hinzugefügt. Bilder aktualisiert. Handbuch MSP430 Education System Seite 5...
Tabelle 2: Die wichtigsten Features des MSP430F2274 (Auszug aus dem Userguide von Texas Imstrument) ........................14 Tabelle 3 Übersicht aller Interrupt Vektor Adressen (Quelle: Datasheet SLAS504G Texas Instruments) ..18 Tabelle 4: Anschlussbelegung der Leuchtdioden ................24 Tabelle 5: Anschlussbelegung der Taster ..................25 Tabelle 6: Anschlussbelegung des Drehencoders ................26...
Alle verwendete Symbole in einer Übersicht, die zur Verwendung dieses Handbuches wichtig sind. Mit diesem Symbol werden Textpassagen gekennzeichnet, die besondere Beachtung beim Anwender finden sollen. Es werden wichtige Einstellungen und Einschränkungen beschrieben, die bei Verwendung des Gesamtsystems wichtig sind. Handbuch MSP430 Education System Seite 8...
Terminalprogramm sowie einem umfangreichen Debugger wieder mehr als ausgeglichen. Durch die Codebegrenzung können jedoch nur kleinere Projekte realisiert werden. Die Software IAR Embedded Workbench kann von der Firma Texas Instruments [0] oder direkt bei IAR Systems [0] bezogen werden. Als Alternative steht ihnen auch der frei verfügbare und kostenlose GNU C-Compiler (GCC) [0] zur Verfügung, sowie weitere sehr gute Compiler der Firmen Rowley [0] und Imagecraft [0].
Unterschiede zwischen den Versionen 3.3 und 2.0 Es hat sich einiges getan, es ist aber auch vieles geblieben. Die Überarbeitung des MSP430 Education Systems hat einige Änderungen mit sich gebracht. Das Bild 1: MSP430 Education System Version 2.0zeigt die ältere Version 2.0, die auch im Buch „Mikrocontrollertechnik“...
Features des MSP430 Education Systems 3.3 • Controller MSP430F2274 (32kB + 256B Flash Memory / 1kB RAM) Alle Pins des MSP430 sind über zwei im Rastermaß angeordneten Stiftleisten zugänglich (ausgenommen die Anschlüsse XIN und XOUT für Quarz). • Spannungsversorgung 3,3 V Spannungsversorgung und 5,0 V Spannungsversorgung mit verschiedenen Anschlussmöglichkeiten...
Zielsystem eingebunden. Des Weiteren wurde ein Standard LC-Display (zweizeilig mit jeweils 16 Zeichen) installiert. Im Folgenden werden alle wichtigen Elemente des MSP430 Education System beschrieben und erläutert. Einen Überblick über das Board gibt das Bild 3. Für eine leichtere Entwicklung wurden auf der Platine alle verwendeten Pin-Belegungen der Peripherie mit aufgedruckt, ebenso wie die Pin Bezeichnung des MSP430F2274.
MSP430F1232 und kompatibel zum MSP430F2272. Er verbraucht sehr wenig Strom und ist zudem beim Kauf sehr günstig. Die wichtigsten Features dieses Controllers zeigt Tabelle 2 im Kurzüberblick. Weitere Features und die komplette Beschreibung können in aktueller Form auf der Texas Instruments Homepage [0] gefunden werden.
Seite 15
Aufwand eine Kommunikationstrecke zwischen verschiedenen Systemen hergestellt werden. Der in dieser Lösung eingesetzte MSP430F2274 ist weiterhin mit 32 kByte Flashspeicher und 1 kByte RAM ausgestattet und ermöglicht damit sehr leistungsfähige Applikationen. Handbuch MSP430 Education System Seite 15...
Literatur- und Quellenverzeichnis Bild 5: Pinbelegung des MSP430F2274 (Quelle: Datasheet SLAS504G Texas Instruments) Im Bild 5 ist die komplette Pinbelegung des MSP430F2274 Mikrocontrollers dargestellt. An Hand dieses Bildes lassen sich die einzelnen Funktionseinheiten sowie die verwendeten Pins erkennen. In Bild 6 wird der interne Aufbau des MSP430F2274 mit Hilfe eines Blockschaltbildes dargestellt.
Literatur- und Quellenverzeichnis Bild 6: Blockdiagramm des MSP430F2274 (Quelle: Datasheet SLAS504G Texas Instruments) Der MSP430 verfügt intern über eine Reset-Logik, die den Einsatz eines externen Reset-Controllers unnötig macht. Die Brownout-Funktion des Mikrocontrollers führt zum Abschalten des Controllers, wenn die Versorgungsspannung unter einen festgelegten Mindestwert fällt. Ansonsten könnte der Controller einen nichtdefinierten Zustand annehmen.
Literatur- und Quellenverzeichnis 4.2 Spannungsversorgung Das MSP430 Education System V3.3 arbeitet mit zwei verschiedenen Spannungsebenen. Der Mikrocontroller und die meisten Peripheriesysteme werden mit +3,3 V versorgt und das LC-Display wird mit +5 V versorgt. Die Spannungsregler auf dem Board sind jeweils für eine Stromaufnahme von bis 100 mA ausgelegt.
Für die 3,3V Spannung können die Pfostenstecker P6, P5 und P1 genutzt werden und für die 5,0V Spannung können die Pfostenstecker P1 und P7 genutzt werden. Bild 8: Möglichkeit zum Spannungsabgriff 3,3V und 5V (gestrichelt) Hinweis: Die Batteriehalter sind optional und müssen unter Umständen vom Benutzer angelötet werden. Handbuch MSP430 Education System Seite 20...
Kommunikationsschnittstelle zur Verfügung. Über die Programmierschnittstelle wird das Board mittels Spy-by-Wire programmiert und auf Fehler überprüft. Über die virtuelle COM-Schnittstelle können Daten zwischen den MSP430 und dem Rechner über das UART-Protokoll ausgetauscht werden. Beide Schnittstellen benötigen keinen extra Treiber, er wird von Windows zur Verfügung gestellt bzw. durch die Programmierumgebung IAR.
TDI, TDO und TCK auch über eine neue serielle Version welche mit 2 Leitungen auskommt. Dieser wird als Spy-by-Wire bezeichnet und wurde speziell für MSP430-Mikrocontroller von Texas Instruments entwickelt. Die Programmiersignale werden über die TEST- und RESET-Leitung an den Mikrocontroller angeschlossen.
Die Leuchtdioden befinden sich an Port 1. Der Port wird ebenfalls für die Ansteuerung des LCDs verwendet. Bild 11: Beschaltung und Position der Leuchtdioden Die Leuchtdioden wurden so an den Mikrocontroller angeschlossen, dass Sie bei High-Pegel (high activ) am Mikrocontroller leuchten. Handbuch MSP430 Education System Seite 23...
4.6 Taster Da Taster wichtige Funktionen in vielen unterschiedlichen Systemen übernehmen, wurden auf dem MSP430 Education System vier Taster verwendet. Alle Taster wurden an einem interruptfähigen Port des MSP430 angeschlossen, um verschiedene Arten der Signalerkennung realisieren zu können. So kann ein Taster per Interruptfunktion, mit Hilfe des Timers oder einfach durch wiederholtes Abfragen (Polling) ausgelesen werden.
Dreh-Encoder Bild 13: Dreh-Encoder Das MSP430 Education System ist mit einem Dreh-Encoder ausgestattet. Der Drehencoder besitzt drei Anschlüsse und erzeugt bei einer vollständigen Umdrehung 24 Impulse an zwei seiner Anschlüsse. Der dritte Anschluss wird als Bezugspotential (VCC) genutzt und ergibt daraus ein „low active“...
Lösung können sie gerne in das entsprechende Beispielprogramm schauen. Der MSP430 hat keine acht Pins mehr zur Verfügung deshalb kann die Matrix so nicht angesteuert werden, auch wenn der MSP430 das prinzipiell könnte. Damit die Matrix trotzdem angesteuert werden kann, wird ein Portextender genutzt.
Der Slave bestätigt seine eigene Adresse durch ein „ACK“ und der Master kann Daten senden oder anfordern (abhängig vom R/W-Bit in der Slave-Adresse). Sollte sich kein IC auf dem Bus angesprochen fühlen, dann bleibt das „ACK“ aus und der MSP430 meldet ein „NACK“, der über einen Interrupt abgefangen werden kann.
Literatur- und Quellenverzeichnis Bild 16: Aufbau Slave-Adresse (Quelle: Datasheet MCP23008) Der Portextender besitzt wie der MSP430 Register, zehn um genau zu sein. Für eine einfache Ausgabe sind nur zwei Register interessant, einmal das IODIR und das GPIO-Register. Das IODIR-Register gibt an, ob sich das Ausgaberegister (GPIO) als Eingang oder als Ausgang verhalten soll.
Zeile. Dieses Display kann einen fest eingestellten Zeichensatz und bestimmte selbst definierte Symbole darstellen, aber keine Grafiken. Zur Vermittlung der Funktionsweise eines solchen Displays reicht dies jedoch bei weitem aus. Bild 19 zeigt die Beschaltung des Displays auf dem MSP430 Education System.
4-Bit oder 8-Bit MPU-Interface (hier 4-Bit verwendet) • Integriertes Display RAM für 80 Zeichen • Zeichengenerator ROM 5x7: 160 Zeichen 5x10: 32 Zeichen • Display Daten und Zeichengenerator RAM können von der MPU gelesen werden Handbuch MSP430 Education System Seite 31...
Seite 32
Lesen/Schreiben eines Zeichens Kein schieben des Displays Schreiben des DD-RAM Als erster Schritt erfolgt die Festlegung der Datenbusbreite. Während dieser Phase der Initialisierung werden nur die oberen Datenbits beachtet. Nachfolgend ein Ablaufdiagramm der 4-Bit- Initialisierungsroutine. Handbuch MSP430 Education System Seite 32...
Seite 33
Literatur- und Quellenverzeichnis Handbuch MSP430 Education System Seite 33...
Stelle stehen. Lesen oder schreiben in das CG_RAM hat ebenfalls keinen Einfluss auf den Displayinhalt. Display ON/OFF 1 = Display an 0 = Display aus 1 = Cursor unsichtbar 0 =Cursor sichtbar 1 = Zeichen unter dem Cursor blinkt 0 = Blinken aus Handbuch MSP430 Education System Seite 34...
Es werden 8-Bit Daten vom CG- oder DD-RAM gelesen. Das Ziel des Transfers hängt davon ab, ob der Befehl „Set CG-RAM Adresse“ setzen oder „Set DD-RAM Adresse“ verwendet wurde. Adresse inkrementiert (I/D = 1) bzw. dekrementiert (I/D = 0) geschieht automatisch. Handbuch MSP430 Education System Seite 35...
Bild 20: Standardzeichensatz des Displays Weitere Einstellungen und Informationen zu diesem Display können aus dem zugehörigen Datenblatt [0] entnommen werden. In diesem Datenblatt wird ebenfalls die genaue Vorgehensweise beim Entwerfen und Darstellen eigener Zeichen beschrieben. Handbuch MSP430 Education System Seite 36...
Ein Modellbauservo kleiner Leistung wird über eine Pulsweitenmodulation (PWM) angesprochen. Mit der Pulsweite im Signal kann so der Servomotor auf einen bestimmten Winkel gefahren werden. Der MSP430 bietet für solche Anwendungen mit der Timer- Baugruppe einen sehr bequem Weg an, einen Grundtakt und mit der entsprechenden...
PWM-Signal an den Pin P4.0 aus und steuert den Optokoppler an. Der Optokoppler wird genutzt um Schäden am MSP430 bzw. am Board zu verhindern. Durch ihn wird das Signal galvanisch getrennt und ermöglicht so auch das treiben einer größeren Spannung mit mehr Leistung.
P3.7/A7 P2.11 Potentiometer 4.12 Reset-Beschaltung des MSP430 Der MSP430F2274 verfügt über einen internen Reset-Controller, der den Einsatz eines externen Reset- Controllers unnötig macht und somit Kosten bei der Entwicklung einer eigenen Applikation spart. Durch Druck auf den Taster Reset wird im Controller ein Reset ausgelöst.
Softwarebeschreibung In diesem Kapitel wird die Entwicklungsumgebung IAR Embedded Workbench von IAR Systems [0] kurz beschrieben und erklärt. Die Software kann als Kickstart Version von der Texas Instruments Homepage [0] oder der IAR Systems Homepage [0] kostenfrei herunter geladen werden.
Bild 5-22: Bildschirm nach Start der Software übersichtlich dar. Und zeigt zu dem nach einer Compilierung ebenfalls alle eingebundenen Headerfiles. Diese Headerfiles sind, Standardbibliotheken, die nach Einbinden in das Hauptprogramm ihre Vereinbarungen zur Verfügung stellen. Bild 5-23: Hauptbestandteile der Programmierumgebung Handbuch MSP430 Education System Seite 41...
Seite 42
Weitere Einstellungen werden in der Hauptmenü-Zeile und den entsprechenden Untermenüs zur Verfügung gestellt. Die genaue Funktionsweise jedes Unterpunktes lässt sich in den zugehörigen Handbüchern der Programmierumgebung IAR Embedded Workbench for MSP430 [0] und [0] nachlesen. Das Hauptmenü stellt den Zugang zu mehreren Grundfunktionen dar, in denen projektspezifische Einstellungen getätigt werden können.
Seite 43
Kontrolle über deren aktuelle Werte. Das Memory-Fenster gibt die Speicherbelegung des intern verwendeten Speichers wieder. Es zeigt die Adresse und die Belegung des Speicherblockes sowie die darin gespeicherten Information. Der Handbuch MSP430 Education System Seite 43...
Seite 44
Entfernen von Breakpoints gelingt mit einem Mausklick. Durch einen weiteren Mausklick kann dieser Breakpoint ebenso einfach erreicht werden. Das Bild 5-26 gibt einen gesamten Überblick der zur Verfügung stehenden Buttons und Symbole und weiterhin eine Kurzbeschreibung zu jedem Punkt. Handbuch MSP430 Education System Seite 44...
Seite 45
Fehler! Verweisquelle konnte nicht gefunden werden. aufgelistet, genau beschrieben. Das Verwenden dieser Dateien ist ebenso wichtig, wie das Verwenden dieses Handbuchs, da nur durch Kombination aller Bestandteile (Hardware Software) funktionierender Entwicklungsaufbau realisiert werden kann. Handbuch MSP430 Education System Seite 45...
Nachdem in den vorherigen Kapiteln die Hard- und Software genau beschrieben wurde, steht in diesem Kapitel die Anwendung beider Bereiche im Vordergrund. Nachfolgend werden der richtige Aufbau und die richtige Verwendung des MSP430 Education System genau beschrieben. Die Kenntnisse der vorherigen Kapitel werden hier vorausgesetzt und benötigt.
Seite 47
Doppelklick auf den 430 Ordner zeigt Namen „fet_projects.eww“. Dieses File sich dem Anwender folgendes Fenster. Man wählt den beinhaltet alle Beispielprogramme, die in C und in Ordner mit dem Namen FET_examples. Assembler geschrieben sind. Handbuch MSP430 Education System Seite 47...
Seite 48
Demonstration der Peripheriemodule. Somit kann der Anwender auf einfache Art und Weise eigene Fehler finden oder vermeiden. Nach dem das Beispielprojekt geladen wurde, kann es nun auf das angeschlossene MSP430 Education System geladen werden. Welche Schritte hierfür nötig sind, zeigt die Tabelle 17. Es werden alle wichtigen Schritte übersichtlich beschrieben und erklärt.
Seite 49
2. Der Debugger versucht den angeschlossenen dem Anwender folgender bekannter Bildschirm. Hat Mikrocontroller mit dem erstellten Programm zu man eine Verbindung zum MSP430 Education System programmieren. aufgebaut, wie in Kapitel 5.1 beschrieben, kann man nun auf den Debug-Button der Toolbar klicken und der Debugger wird geladen.
Neustart des Mikrocontrollers über den Reset-Taster S1. Neustart der Software. Überprüfen der Einstellungen für den C-Spy Debugger im Projekt. Überprüfung des MSP430 Education System auf Beschädigung. Bild 5-27: Fehlermeldung bei nicht erfolgreichem Download 5.4 Erstes eigenes Programm (basierend auf IAR EW V4.11) Um nun ein eigenes Projekt zu erstellen, sind wichtige Abläufe und Einstellungen zu beachten.
Seite 51
Maschinensprache sehr hardwarenah ist und dadurch das grundsätzliche Verständnis für die meisten Abläufe gut vermittelt werden kann. Durch Einsatz der Hochsprache C kann die Programmierung wesentlich beschleunigt werden, da diese wesentlich einfacher und schneller erlernbar ist als Assembler. Handbuch MSP430 Education System Seite 51...
Project templates wählen. Für wählt man einen Ordner in dem das neue Projekt dieses erste eigene Project wählt man nun ein Empty gespeichert werden soll sowie den Namen des Project. Projektes. Ist beides festgelegt, speichert man. Handbuch MSP430 Education System Seite 52...
Projekt compilieren und ausführen zu können, müssen keine so guten Kenntnisse in dieser Programmiersprache sehr viele Grundeinstellungen vorgenommen werden. Alle haben, ist im Anschluss an diese Tabelle der Sourcecode Einstellungen werden in den folgenden Fenstern genau eines Beispielprogramms abgedruckt. beschrieben. Handbuch MSP430 Education System Seite 53...
Seite 54
Button, den Make Button oder auf den Debug Buttons. Der hier der Simulator eingetragen. Um Programme auf den dritte Weg stellt gleichzeitig den Download auf den Mikrocontroller laden zu können, wählt man den Mikrocontroller dar und öffnet den Debugger. Unterpunkt FET Debugger. Handbuch MSP430 Education System Seite 54...
Seite 55
Da hier noch der Debugger aktiv ist, werden die oberen vier Leuchtdioden durch die JTAG- Schnittstelle blockiert. Stoppt man das Debuggen, werden alle acht Leuchtdioden zusammen blinken. Das erste eigene Projekt wurde erfolgreich durchgeführt und beendet. Handbuch MSP430 Education System Seite 55...
Seite 56
; Required only for C-spy Simulator ;------------------------------------------------------------------------------ TA_CCR0_ISR ; ISR for CCR0 ;------------------------------------------------------------------------------ add.w #07FFFh,&CCR0 ; add CCR0 init value to CCR0 xor.b #BIT1,&P1OUT ; toggle P1.1 reti ;------------------------------------------------------------------------------ TAX_ISR ; Common ISR for CCR1-4 and overflow ;------------------------------------------------------------------------------ Handbuch MSP430 Education System Seite 56...
Seite 57
#BIT3,&P1OUT ; add CCR2 init value to CCR2 reti ; toggle P1.3 ;------------------------------------------------------------------------------ Interrupt Vectors Used MSP430F12x ;------------------------------------------------------------------------------ 0FFFEh ; MSP430 RESET Vector RESET 0FFF0h ; Timer_AX Vector TAX_ISR 0FFF2h ; Timer_A0 Vector TA_CCR0_ISR Handbuch MSP430 Education System Seite 57...
Literatur- und Quellenverzeichnis Befehle des MSP430F2274 Die folgende Tabelle 20 zeigt alle Befehle des MSP430 in einer Übersicht. Alle Befehle stellen 16-Bit Worte dar. Die Befehle, die am Ende ein „(.B)“ besitzen, können optional mit dem Kürzel „.B“ auch als Byte-Befehle behandelt werden. Bestimmte Peripherie-Module können nur mit Byte-Befehlen behandelt werden, wie zum Beispiel die Ports.
Seite 59
* TST(.B) Test destination XOR(.B) src,dst Exclusive OR source and destination src .xor. dst -> ds - Emulierte Befehle Abkürzung für Source, Quelle Abkürzung für Destination, Ziel label - Bezeichnung für die eingesetzte Sprungmarke, Handbuch MSP430 Education System Seite 59...