Handbuch


Add to my manuals
78 Pages

advertisement

Handbuch | Manualzz

24. September 2008

MSP430 Education System v2.0

Benutzerhandbuch

Forschungs- uns Transferzentrum Leipzig e.V. an der HTWK Leipzig

Wächterstraße 13

D-04107 Leipzig

Tel.: +49 (0)341-3076 1136

Fax: +49 (0)341-3076 1220

E-Mail: [email protected]

Internet: http://www.msp430-buch.de Dokument-Version 1.1

Copyright

I. Inhaltsverzeichnis

II. Copyright................................................................................................................ 4

III. History ................................................................................................................... 5

IV. Abbildungsverzeichnis ............................................................................................ 6

V. Tabellenverzeichnis ................................................................................................ 7

VI. Beschreibung verwendeter Symbole ........................................................................ 8

1 Einführung.............................................................................................................. 9

2 Unterschiede zwischen Version 1.4 und 2.0 .......................................................... 10

3 Features des MSP430 Education Systems 2.0......................................................... 11

4 Hardwarebeschreibung.......................................................................................... 12

4.1

Der Mikrocontroller MSP430F2272

......................................................................... 14

4.2

Spannungsversorgung

........................................................................................... 18

4.3

JTAG-Schnittstelle ................................................................................................ 20

4.3.1

4-Draht-Interface..............................................................................................20

4.3.2

2-Draht-Interface (Spy-by-Wire).........................................................................21

4.4

Serielle Schnittstelle RS-232

................................................................................. 22

4.5

Leuchtdioden

....................................................................................................... 22

4.6

Taster

.................................................................................................................. 24

4.7

Infrarotschnittstelle ............................................................................................. 26

4.8

LC-Display

........................................................................................................... 27

4.9

Lautsprecher

........................................................................................................ 35

4.10

Potentiometer

...................................................................................................... 36

4.11

Reset-Beschaltung des MSP430

............................................................................. 38

4.12

Lötbrücken des MSP430 Education Systems

............................................................ 39

5 Softwarebeschreibung........................................................................................... 40

5.1

Installation der Software

...................................................................................... 42

5.2

Hauptbestandteile der IAR Embedded Workbench

................................................... 45

5.3

Erste Schritte

....................................................................................................... 50

5.4

Laden eines Beispielprojektes ............................................................................... 50

5.5

Erstes eigenes Programm (basierend auf IAR EW V4.11)

......................................... 57

6 MSP430 JTAG-Adapter........................................................................................... 65

Handbuch MSP430 Education System Seite 2

Copyright

A. Befehle des MSP430F2272.................................................................................... 67

B. Schaltpläne........................................................................................................... 69

C. Bestückungsplan................................................................................................... 72

D. Mechanische Abmessungen ................................................................................... 73

E. Übersicht Beispielprogramme (TI) ........................................................................ 74

6.1

MSP-FET430P120 Assembler Examples slac143a.zip (81k) ...................................... 74

6.2

MSP-FET430P120 "C" Examples slac123b.zip (136k)

.............................................. 75

F. Literatur- und Quellenverzeichnis ......................................................................... 78

Handbuch MSP430 Education System Seite 3

Copyright

II. Copyright

Im Buch verwendete Bezeichnungen für Erzeugnisse, die zugleich ein eingetragenes Warenzeichen darstellen, wurden nicht besonders gekennzeichnet. Alle Marken- und Warennamen (Zeichen) wurden ohne Gewährleistung der freien Verfügbarkeit genutzt. Das Fehlen der © Markierung ist demzufolge nicht gleichbedeutend mit der Tatsache, dass die Bezeichnung als freier Warenname gilt. Ebenso wenig kann anhand der verwendeten Bezeichnung auf eventuell vorliegende Patente oder einen

Gebrauchsmusterschutz geschlossen werden.

Die Informationen in diesem Handbuch wurden sorgfältig übergeprüft und können als zutreffend angenommen werden. Dennoch sei ausdrücklich darauf hingewiesen, dass der Autor weder eine

Garantie noch die juristische Verantwortung oder irgendeine Haftung für Folgeschäden übernimmt, die auf den Gebrauch oder den Inhalt dieser Ausarbeitung zurückzuführen sind. Die in diesem

Handbuch enthaltenen Angaben können ohne vorherige Ankündigung geändert werden. Der Autor geht damit keinerlei Verpflichtungen ein.

© Copyright 2008 FTZ Leipzig e.V. an der HTWK Leipzig.

Alle Rechte vorbehalten. Kein Teil dieses Buches darf in irgendeiner Form ohne schriftliche

Genehmigung des FTZ Leipzig unter Einsatz entsprechender Systeme reproduziert, verarbeitet, vervielfältigt oder verbreitet werden.

Kontaktadressen:

FTZ Leipzig e.V. an der HTWK Leipzig

Carsten Kögler / Thomas Minner

Wächterstraße 13

D-04107 Leipzig

Tel.: +49 (0)341-3076 1136

Fax: +49 (0)341-3076 1220

E-Mail: [email protected]

Internet: http://www.ftz-leipzig.de/

Handbuch MSP430 Education System Seite 4

III. History

• 1.0 – 27.3.2008 o

Erste Version für Hardware 2.0

• 1.1 – 24.9.2007 o

neueste IAR-Version dokumentiert o

Schaltplan aktualisiert o

Design überarbeitet

History

Handbuch MSP430 Education System Seite 5

Abbildungsverzeichnis

IV. Abbildungsverzeichnis

Bild 2-1: MSP430 Education System Version 1.4 ............................................................................10

Bild 4-1: Hauptelemente des MSP430 Education Systems ...............................................................12

Bild 4-2: Belegung der Stiftleisten X7, X8, X11 und X12 mit Signalnamen ........................................14

Bild 4-3: Pinbelegung des MSP430F2272 ......................................................................................16

Bild 4-4: Blockdiagramm des MSP430F2272..................................................................................16

Bild 4-5: Spannungsversorgung MSP430 Education System .............................................................19

Bild 4-6: Belegung der JTAG-Schnittstelle .....................................................................................20

Bild 4-7: Installierte Leuchtdioden...............................................................................................22

Bild 4-8: Beschaltung und Position der Leuchtdioden.....................................................................23

Bild 4-9: Installierte Taster .........................................................................................................24

Bild 4-10: Beschaltung und Position der Taster .............................................................................24

Bild 4-11: Lage der Infrarotkomponenten .....................................................................................26

Bild 4-12: Installiertes Dotmatrix Display .....................................................................................27

Bild 4-13: Beschaltung des LC-Displays.........................................................................................27

Bild 4-14: Standardzeichensatz des Displays .................................................................................34

Bild 4-15: Eingesetzter Lautsprecher ............................................................................................35

Bild 4-16: Beschaltung des Lautsprechers .....................................................................................35

Bild 4-17: Installierte Potentiometer............................................................................................36

Bild 4-18: Beschaltung der Potentiometer.....................................................................................37

Bild 4-19: Resetbeschaltung des MSP430 ......................................................................................38

Bild 4-20: Lage der Lötbrücken Top-Ansicht ..................................................................................39

Bild 5-1: Entwicklungsumgebung IAR Embedded Workbench............................................................41

Bild 5-2: Bildschirm nach Start der Software .................................................................................45

Bild 5-3: Hauptbestandteile der Programmierumgebung .................................................................45

Bild 5-4: Funktionen der Toolbar Buttons .....................................................................................46

Bild 5-5: Hauptbestandteile des Debuggers ...................................................................................47

Bild 5-6: Funktionen der Toolbars des Debuggers ...........................................................................49

Bild 5-7: Fehlermeldung bei nicht erfolgreichem Download .............................................................56

Bild 6-1: MSP430 USB-JTAG-Adapter ............................................................................................65

Bild 6-2: MSP430 Parallel-JTAG-Adapter .......................................................................................65

Bild B-1: Schaltplan MSP430 Education System 2.0 Seite 1/2 .........................................................69

Bild B-2: Schaltplan MSP430 Education System 2.0 Seite 2/2 .........................................................70

Bild B-3: Schaltplan eines MSP430 Parallel-JTAG-Adapters..............................................................71

Bild C-1: Bestückungsplan MSP430 Education System 2.0 top .........................................................72

Bild D-1: Mechanische Abmessungen und Lage der Bohrungen ........................................................73

Handbuch MSP430 Education System Seite 6

Tabellenverzeichnis

V. Tabellenverzeichnis

Tabelle 1: Belegungsplan des Mikrocontrollers ...............................................................................13

Tabelle 2: Die wichtigsten Features des MSP430F2272 ...................................................................14

Tabelle 3: Übersicht aller Interrupt Vektor Adressen .......................................................................17

Tabelle 4 Pinbelegung Spy-by-Wire ...............................................................................................21

Tabelle 5: Anschlussbelegung der Leuchtdioden .............................................................................23

Tabelle 6: Anschlussbelegung der Taster .......................................................................................25

Tabelle 7: Anschlussbelegung der Infrarotbauelemente...................................................................26

Tabelle 8: Anschlussbelegung des LC-Displays................................................................................28

Tabelle 9: Signal- und Belegungsplan des Displays.........................................................................28

Tabelle 10: Befehlssatz des Displaycontrollers HD44780 .................................................................32

Tabelle 11: Cursor- und Displayeinstellungen für die Bits S/C und R/L..............................................33

Tabelle 12: Anschlussbelegung des Lautsprechers ..........................................................................35

Tabelle 13: Anschlussbelegung der Potentiometer ..........................................................................37

Tabelle 14: Funktionsübersicht aller Lötbrücken.............................................................................39

Tabelle 15: Installationsschritte in einer Übersicht ........................................................................42

Tabelle 16: Wichtige User Guides und Handbücher .........................................................................44

Tabelle 17: Laden eines vorhanden Beispielprojektes......................................................................52

Tabelle 18: Programmieren des Mikrocontrollers ............................................................................55

Tabelle 19: Das erste eigene Projekt.............................................................................................59

Tabelle 20: Pinbelegung der JTAG-Schnittstelle..............................................................................65

Tabelle 21: Alle Befehle des MSP430 in Übersicht ..........................................................................67

Handbuch MSP430 Education System Seite 7

Beschreibung verwendeter Symbole

VI. Beschreibung verwendeter Symbole

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

Einführung

1 Einführung

Dieses Mikrocontroller Experimentiersystem ist zu Studien-, Lehr-, Aus- und Weiterbildungszwecken entworfen worden. Es ist speziell an Personen gerichtet, die einen einfachen Einstieg in die

Mikrocontrollerprogrammierung suchen.

Der verwendete 16-Bit RISC-Controller der Firma Texas Instruments gehört zu der weit verbreiteten

MSP430-Familie. Die Nutzergemeinde um diesen Controller wird immer größer, da er ein sehr leistungsfähiger, stromsparender und vor allem günstiger Mikrocontroller ist. Mit dem Einsatz dieses

Experimentiersystems sind Sie ein Teil dieser Gemeinde und werden die Vorzüge dieser Lösung schnell zu schätzen wissen.

Zur Programmierung können Sie die frei zur Verfügung stehende Kickstart Version des IAR C- und

Assembler-Compilers „IAR Embedded Workbench“ [1] verwenden. Diese Version ist auf 4 kByte C-

Code begrenzt, der Assemblerteil kann jedoch uneingeschränkt verwendet werden. Dies wird durch die gut bedienbare Entwicklungsumgebung, ein integriertes Programmierinterface, ein zusätzliches

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 [1] oder direkt bei IAR Systems [2] bezogen

werden.

Als Alternative steht ihnen auch der frei verfügbare und kostenlose GNU C-Compiler (GCC) [3] zur

Verfügung, sowie weitere sehr gute Compiler der Firmen Rowley [4] und Imagecraft [5]. Über den

Einsatz des entsprechenden Compilers kann jeder individuell entscheiden. Alle Compiler sind prinzipiell einsetzbar und lauffähig.

Dieses Handbuch beschreibt den Aufbau der Hardware, der Software und unterstützt sie bei ersten

Schritten der Programmierung mit Hilfe der IAR Kickstart Programmierumgebung. Zum besseren

Verständnis wird an einer Beispielapplikation der komplette Ablauf beschrieben und erklärt.

Das vorliegende Handbuch soll ebenso Lehrmaterial wie auch Dokumentation darstellen und eine

Hilfestellung beim Erlernen komplexer Abläufe sein. Alle Schritte werden in Kombination mit der IAR

Embedded Workbench beschrieben und erklärt. Softwarebeschreibungen beziehen sich, in diesem

Handbuch, immer auf den IAR Compiler.

Handbuch MSP430 Education System Seite 9

Unterschiede zwischen Version 1.4 und 2.0

2 Unterschiede zwischen Version 1.4 und 2.0

Die Überarbeitung des MSP430 Education Systems hat einige Änderungen mit sich gebracht.

Bild 2-1 zeigt die ältere Version 1.4, die auch im Buch „Mikrocontrollertechnik“ von Prof.

Matthias Sturm beschrieben ist.

Bild 2-1: MSP430 Education System Version 1.4

Die wichtigsten Unterschiede sind:

• Neuer erweiterter Mikrocontroller MSP430F2272 statt MSP430F1232. Dieser bietet die günstige Programmierung über USB (Spy-by-Wire (SBW) und eZ430), mehr I/Os und

Speicher bei gleichzeitiger weitgehender Codekompatibilität.

• Infrarotschnittstelle mit Sender und Empfänger. Diese wurden an freie Ports angeschlossen.

• Vereinfachung der Stromversorgung. Wegfall aller Jumper.

• Versorgung des LCDs mit +5V

• Kompaktere Bauweise

• Wegfall des Anzeigeinstruments

• Wegfall des Lochrasterfeldes an der linken unteren Ecke. Als Ausweichmöglichkeit stehen die Stiftleisten am Mikrocontroller zur Verfügung.

Ein separates Dokument beschreibt die notwendigen Codeänderungen.

Handbuch MSP430 Education System Seite 10

Features des MSP430 Education Systems 2.0

3 Features des MSP430 Education Systems 2.0

.

Controller

-

-

MSP430F2272 (32kB + 256B Flash Memory / 1kB RAM)

- alle Pins des MSP430 sind über zwei Stiftleisten zugänglich

Spannungsversorgung

3,3 V Spannungsversorgung mit verschiedenen Anschlussmöglichkeiten:

-

Getrennte Spannungsversorgung für analoge On-Chip-Peripherie

Taktversorgung

-

-

Interner Oszillator mit typisch 12 kHz (VLO)

Interne FLL mit bis zu 16 MHz (DCO)

-

Externer Uhrenquarz mit 32.768 Hz

-

Externer HF-Quarz mit bis zu 16 MHz

Ein- und Ausgabe

-

-

-

8 LEDs an einem Port zur universellen Nutzung als Ausgabeelement

(z.B. als Test- und Debugelemente)

4 Taster zur universellen Nutzung als Eingabeelement

1 LC-Display (zweizeilig x 16 Zeichen) mit 4-Bit-Ansteuerung, um die Debugmöglichkeit zu

-

-

- erhalten

2 Potentiometer 100k linear

-

1x Piezo-Lautsprecher mit Komplementär-Gegentakt-Endstufe

-

Infrarotschnittstelle zum Senden- und Empfangen von RC5 Codes

Programmierung

Anschluss über Standard 14-Pin Steckverbinder

Programmierung über Spy-by-wire mit USB-Adapter

-

Programmierung über JTAG mit parallelem Adapter

weitere Schnittstellen

- serielle Schnittstelle RS-232, Verbindung zum PC über einfaches Verlängerungskabel

Sonstiges

-

Reset-Taster

Abmaße

-

-

Hauptplatine 93 x 80 mm

Abmaße über Alles: 100 x 82 mm

Handbuch MSP430 Education System Seite 11

Hardwarebeschreibung

-

4 Hardwarebeschreibung

Das MSP430 Education System ist unter der Voraussetzung entworfen worden, mehrere

Anwendungsgebiete in einem System zu vereinen. Der Einsatz als Education System ist ebenso möglich wie der Einsatz als Evaluation System zum Entwerfen eigener Applikationen. Durch

Herausführen aller Pins des Controllers auf die Stiftleisten X7 und X8 können alle Funktionen des

Controllers für eigene Applikationen genutzt werden. Es wurden bestimmte Standardkomponenten auf der Platine fest installiert, um eine Mindestausstattung zu gewährleisten und einfache

Applikationen leicht entwickeln zu können.

Durch die Kompaktheit des eingesetzten Controllers und der wenigen zur Verfügung stehenden Ports, ist eine Mehrfachbelegung bestimmter Ports unvermeidbar.

Zur Bereitstellung einer seriellen Kommunikation wurde das UART0-Modul des MSP430F1232 verwendet und über einen RS-232 Treiber an eine Standard SUB-D9 Schnittstelle angeschlossen. 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 aller Systeme gibt das Bild

4-1

.

Bild 4-1: Hauptelemente des MSP430 Education Systems

Handbuch MSP430 Education System Seite 12

Hardwarebeschreibung

Im Folgenden werden kurz alle wichtigen Informationen übersichtlich dargestellt, damit diese während der Programmierung zusammenhängend zur Verfügung stehen.

Tabelle 1: Belegungsplan des Mikrocontrollers

μC Pin Name Stiftleiste Beschreibung und angeschlossene Peripherie

1 Test X7.1 Anschluss des JTAG-Moduls, schaltet den Controller zum programmieren frei,

P3.6

P3.7

P2.3

P2.4

P1.0

P1.1

P1.2

P1.3

P1.4

P1.5

P1.6

P1.7

P4.0

P4.1

P4.2

P4.3

P4.4

P4.5

P4.6

P4.7

P3.4

P3.5

P2.2

P3.0

P3.1

P3.2

P3.3

AVSS

AVCC

VCC

P2.5

GND

XOUT

XIN

/RST

P2.0

P2.1

X8.12

X8.11

X8.10

X8.9

X8.8

X8.7

X8.6

X8.5

X8.4

X8.3

X8.2

X8.1

X11.3

X11.4

X11.5

X12.1

X12.2

X12.3

X12.4

X12.5

X8.14

X8.13

X7.10

X7.11

X7.12

X7.13

X7.14

X11.1

X11.2

X7.2

X7.3

X7.4

X7.5

X7.6

X7.7

X7.8

X7.9

32

33

34

35

36

27

28

29

30

31

37

38

22

23

24

25

26

17

18

19

20

21

10

11

12

13

14

15

16

5

6

7

8

9

2

3

4

Spannungsversorgung des Mikrocontrollers mit 3,3 V

S1 - Taster1 (blau)

Masseanschluss des Mikrocontrollers

Ausgang des 32768 Hz Quarzes

Eingang des 32768 Hz Quarzes

Resetanschluss des Resettasters S1

S4 – Taster4 (rot)

S3 – Taster3 (gelb)

S2 – Taster2 (grün)

RS-Leitung des LC-Displays

EN (Enable) Leitung des Displays zur freien Verfügung, nicht belegt zur freien Verfügung, nicht belegt

Masseanschluss des ADC-Moduls im Mikrocontroller

Masseanschluss des ADC-Moduls im Mikrocontroller zur freien Verfügung, nicht belegt zur freien Verfügung, nicht belegt zur freien Verfügung, nicht belegt zur freien Verfügung, nicht belegt zur freien Verfügung, nicht belegt zur freien Verfügung, nicht belegt zur freien Verfügung, nicht belegt zur freien Verfügung, nicht belegt

TX Signal zum RS-232 Anschluss

RX Signal vom RS-232 Anschluss

Potentiometer 2

Potentiometer 1

Infrarotempfänger TSOP1736

Ansteuerung des Lautsprechers SP1

LED 0 (D7) (low active), LCD Datenleitung D4

LED 1 (D8) (low active), LCD Datenleitung D5

LED 2 (D9) (low active), LCD Datenleitung D6

LED 3 (D10) (low active), LCD Datenleitung D7

LED 4 (D11) (low active), JTAG TCK (X3-7)

LED 5 (D12) (low active), JTAG TMS (X3-5)

LED 6 (D13) (low active), JTAG TDI (X3-3)

LED 7 (D14) (low active), JTAG TDO (X3-1)

Handbuch MSP430 Education System Seite 13

Hardwarebeschreibung

Im Bild 4-2 wird nochmals die Lage der Stiftleisten X7, X8, X11 und X12 dargestellt, durch die alle

Pins des MSP430F1232 Mikrocontrollers frei verfügbar sind, dargestellt.

Bild 4-2: Belegung der Stiftleisten X7, X8, X11 und X12 mit Signalnamen

4.1 Der Mikrocontroller MSP430F2272

Der MSP430F2272 ist ein sehr leistungsfähiger 16-Bit Mikrocontroller und ein Nachfolgetyp des

MSP430F1232. 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 auf der CD oder in aktueller Form auf der Texas Instruments

Homepage [6] gefunden werden.

Tabelle 2: Die wichtigsten Features des MSP430F2272

ƒ 32KB + 256B Flash Memory 1KB RAM

ƒ Low Supply Voltage Range 1.8 V to 3.6 V

ƒ Ultralow-Power Consumption o

Active Mode: 270 μA at 1 MHz, 2.2 V o

Standby Mode: 0.7 μA o

Off Mode (RAM Retention): 0.1 μA

ƒ Ultrafast Wake-Up From Standby Mode in Less Than 1 μs

ƒ 16-Bit RISC Architecture, 62.5-ns Instruction Cycle Time

ƒ Basic Clock Module Configurations: o

Internal Frequencies up to 16 MHz With Four Calibrated Frequencies to ±1%

Handbuch MSP430 Education System Seite 14

Hardwarebeschreibung o

Internal Very-Low-Power Low-Frequency Oscillator o

32-kHz Crystal o

High-Frequency Crystal up to 16 MHz o

Resonator o

External Digital Clock Source o

External Resistor

ƒ 16-Bit Timer_A With Three Capture/Compare Registers

ƒ 16-Bit Timer_B With Three Capture/Compare Registers

ƒ Universal Serial Communication Interface o

Enhanced UART Supporting

ƒ Auto-Baudrate Detection (LIN) o

IrDA Encoder and Decoder o

Synchronous SPI o

I2C™

ƒ 10-Bit, 200-ksps A/D Converter With Internal Reference, Sample-and-Hold, Autoscan, and Data

Transfer Controller

ƒ Brownout Detector

ƒ Serial Onboard Programming, No External Programming Voltage Needed

ƒ Programmable Code Protection by Security Fuse

ƒ Bootstrap Loader

ƒ On Chip Emulation Module

ƒ Family Members Include:

ƒ For Complete Module Descriptions, Refer to the MSP430x2xx Family User’s Guide

Die geringe Stromaufnahme ist besonders wichtig für Anwendungen, die über längere Zeit mit einer

Batterie arbeiten müssen. Die Stromaufnahme ist durch fünf Stromsparmodi beeinflussbar, in denen jeweils bestimmte interne Funktionseinheiten abgeschaltet werden. Die geringe Wake-Up-Zeit von 1

μs kommt vielen Anwendungen zu gute bei denen der Stromsparmodus aktiv genutzt wird und der

Controller nur für eine kurze Zeit aus dem Schlafmodus aufwachen muss, um z.B. eine Messung durchzuführen. Das USART Modul ist besonders für die serielle Kommunikation wichtig. Durch dieses kann mit einem geringen Aufwand eine Kommunikationstrecke zwischen verschiedenen Systemen herstellt werden. Der in dieser Lösung eingesetzte MSP430F2272 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

Hardwarebeschreibung

Bild 4-3: Pinbelegung des MSP430F2272

Im Bild 4-3 ist die komplette Pinbelegung des MSP430F2272 Mikrocontrollers dargestellt. An Hand

dieses Bildes lassen sich die einzelnen Funktionseinheiten sowie die verwendeten Pins erkennen. In

Bild 4-4 wird der interne Aufbau des MSP430F2272 mit Hilfe eines Blockschaltbildes dargestellt.

Weitere Details können dem Datenblatt des MSP430F2272 [6] entnommen werden.

Bild 4-4: Blockdiagramm des MSP430F2272

Handbuch MSP430 Education System Seite 16

Hardwarebeschreibung

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.

Der Mikrocontroller verfügt über 16 Interrupt-Vektoren, welche zum Teil maskierbar sind. Dies bedeutet, dass jeder Interrupt auf ein bestimmtes Ereignis eingestellt werden kann. Bei dem eingesetzten Mikrocontroller sind nur die beiden höchsten Prioritäten nicht maskierbar, somit

können nur diese beiden nicht in ihrer Funktion beeinflusst werden. Die

Tabelle

3

zeigt alle möglichen Interrupts mit der jeweiligen Adresse nochmals in einer Übersicht.

Weitere Funktionsweisen und Erklärungen können dem MSP430F2272 Datenblatt [6] und dem

MSP430x2xx Family User’s Guide [7] entnommen werden. In diesen Dokumenten werden auch die

verwendeten Register näher beschrieben, um die Interruptfunktionen gezielt einsetzen zu können.

Tabelle 3: Übersicht aller Interrupt Vektor Adressen

Interruptquelle

Power-up, external reset, watchdog

Timer_A3

NMI, oscillator fault, flash memory access violation

Timer_B3

Timer_B3

Watchdog timer

Timer_A3

UART Receive

UART Transmit

ADC10

I/O Port P2 (eight flags)

I/O Port P1 (eight flags)

Interruptflag

WDTIFG (see Note 1)

KEYS (see Note 1)

NMIIFG (see Notes 1 and 4)

OFIFG (see Notes 1 and 4)

ACCVIFG (see Notes 1 and 4)

WDTIFG

TACCR0 CCIFG (see Note 2)

TACCR1andTACCR2

CCIFGs. TAIFG

(see Notes 1 and 2)

URXIFG0

UTXIFG0

ADC10IFG

P2IFG.0 to P2IFG.7

(see Notes 1 and 2)

P1IFG.0 to P1IFG.7

(see Notes 1 and 2)

SYSTEM INTERRUPT

Reset

WORD

ADDRESS

0FFFEh

Priorität

31, highest

(nicht)-maskierbar,

(nicht)-maskierbar,

(nicht)-maskierbar maskierbar maskierbar

0FFFCh

0FFFAh

0FFF8h

0FFF6h

0FFF4h

0FFF2h

30

29

28

27

26

25 maskierbar maskierbar maskierbar maskierbar maskierbar maskierbar

0FFF0h

0FFEEh

0FFECh

0FFEAh

0FFE8h

0FFE6h

0FFE4h

0FFE2h..

0FFC0h

24

23

22

21

20

19

18

17. lowest

Handbuch MSP430 Education System Seite 17

Hardwarebeschreibung

4.2 Spannungsversorgung

Das MSP430 Education System arbeitet mit 2 verschiedenen Versorgungsspannungen. Der

Mikrocontroller und die meisten Peripheriesysteme werden mit 3,3 V versorgt. Das Display und der

Infrarotempfänger arbeiten mit +5 V.

Die Spannungsregler sind jeweils für eine Stromaufnahme von 100 mA ausgelegt.

Ein größerer Strom kann zu Schäden an den Bauelementen führen.

Der Hohlstecker an X13 muss korrekt gepolt sein. Das Board ist nicht mit einem

Brückengleichrichter ausgestettet. Die Masse muss auf dem Außenleiter angeschlossen sein. Ist der Hohlstecker falsch gepolt, sorgt eine Diode dafür, dass das Board nicht beschädigt wird.

Ein Netzteil wird an X1 über einen 2,1 mm Hohlstecker angeschlossen. Der Verpolungsschutz wird durch die Diode D9 realisiert. Es können Eingangsspannungen von 7-16 V angelegt werden. Die

Spannungsregler IC4 und IC3 erzeugen 2 geregelten Versorgungsspannungen von 3,3 V und 5 V.

Wurde ein Netzteil an die Platine angeschlossen, leuchtet die Diode D10.

Bild 4-5

zeigt die

wichtigsten Bauelemente.

Handbuch MSP430 Education System Seite 18

Hardwarebeschreibung

Bild 4-5: Spannungsversorgung MSP430 Education System

Die Version 2.0 hat keinen getrennten Anschluss für eine Batterie. In diesem Fall ist ein Adapter für die Hohlsteckerbuchse notwendig.

Die neue +5 V Versorgungsspannnung kann über die Stiftleiste X6 abgegriffen werden. Die Belegung ist in der obigen Abbildung ersichtlich.

Handbuch MSP430 Education System Seite 19

Hardwarebeschreibung

4.3 JTAG-Schnittstelle

Die JTAG-Schnittstelle dient zum einen als Programmierschnittstelle, zum anderen als Debug-

Schnittstelle. Durch diese kann ein Programm, direkt auf dem Controller Schritt für Schritt abgearbeitet werden. Hierdurch können Programmfehler direkt auf der Zielhardware gefunden und beseitigt werden, um die immer kürzer werdenden Entwicklungszyklen neuer Applikationen einhalten zu können.

4.3.1 4-Draht-Interface

Die Schnittstelle stellt vier Leitungen zur Verfügung, über die alle Daten transportiert werden. Die

Programmiersoftware kann diese Daten in ihrem Debug-Fenster darstellen und auswerten. Die

Belegung der Schnittstelle auf dem MSP430 Education System wird in Bild 4-6 dargestellt.

Bild 4-6: Belegung der JTAG-Schnittstelle

Nachfolgend werden alle Leitungen der JTAG-Schnittstelle kurz beschrieben. Die vier Signalleitungen haben folgende Funktion:

TCK, Test Clock:

An diesem Pin wird das Taktsignal für den TAP Controller angeschlossen. Der komplette JTAG-

Testbetrieb läuft synchron mit diesem Takt. Lesevorgänge werden bei steigender Flanke von

TCK vorgenommen, während Schreibvorgänge bei fallender Flanke ausgelöst werden. TCK ist normalerweise völlig unabhängig vom Arbeitstakt des Chips.

Handbuch MSP430 Education System Seite 20

Hardwarebeschreibung

TDI, Test Data Input:

Dieser Pin ist der serielle Dateneingang. Sowohl Befehlsopcodes als auch Daten werden über diesen Pin seriell verarbeitet. TDI wird bei steigender Flanke von TCK übernommen.

TDO, Test Data Output:

Dieser Pin ist ein Ausgang, der Daten-Ausgang. Hier werden alle auszulesenden Daten seriell heraus geschoben. TDO wird immer bei fallender Flanke von TCK aktualisiert.

TMS, Test Mode Select:

Über diesen Eingang, wird der TAP-Controller gesteuert. Die Zustände des endlichen

Automaten, der den TAP-Controller beschreibt, werden über diesen Pin (und TCK) gesteuert.

TAP-Modi wie "Befehlsregister laden" oder "Datenregister ausschieben" werden über TMS eingestellt. TMS wird ebenfalls bei steigender Flanke von TCK übernommen.

Die VCC_OUT Leitung ermöglicht die Spannungsversorgung eines externen JTAG-Adapters. Mit Hilfe der TEST Leitung wird der angeschlossene Mikrocontroller in den Programmiermodus versetzt. Liegt diese Leitung auf HIGH-Pegel, kann der angeschlossene Mikrocontroller durch die JTAG-Schnittstelle programmiert werden.

4.3.2 2-Draht-Interface (Spy-by-Wire)

Der verwendete MSP430F2272 verfügt neben dem klassischen JTAG-Interface mit den

Signalen TMS, TDI, TDO und TCK auch über eine neue serielle Version welche mit 2 Signalen auskommt. Dieser wird als Spy-by-Wire bezeichnet und wurde speziell für MSP430-

Mikrocontroller von Texas Instruments entwickelt. Die Programiersignale werden über die

TEST und RESET-Leitung an den Mikrocontroller angeschlossen. Da diese Leitungen ebenfalls

über den 14-poligen JTAG-Steckverbinder zur Verfügung stehen, kann das Board mit beiden

Interfaces programmiert werden. Für nähere Informationen zu den empfohlenen

Programmieradaptern siehe Abschnitt 6.

Tabelle 4 Pinbelegung Spy-by-Wire

Pin am JTAG-

Steckverbinder

11

RESET

4-Draht-Interface

8

TEST

Spy-by-Wire

SBWTCK – Taktleitung

SBWTDIO - Datenleitung

Handbuch MSP430 Education System Seite 21

Hardwarebeschreibung

4.4 Serielle Schnittstelle RS-232

Die serielle Kommunikation wird über eine RS-232 Schnittstelle zur Verfügung gestellt. Hierbei kommt ein RS-232-Pegelwandler der Firma Maxim zum Einsatz. Dieser bereitet die Signale so auf, dass der Mikrocontroller mit einem PC oder anderem Gerät kommunizieren kann. Durch Auftrennen der Lötbrücken SJ2 und SJ3 kann der Pegelwandler vom Mikrocontroller getrennt werden. Dadurch werden die entsprechenden Controllerpins frei für eine alternative Beschaltung.

4.5 Leuchtdioden

Bild 4-7: Installierte Leuchtdioden

Da Leuchtdioden die Grundlage jeder Mikrocontrollerausbildung darstellen, ist es wichtig, sie an einem zusammenhängenden Port anzuschließen. Dadurch gelingt es, die Verwendung und Funktion der zugehörigen Portregister zu trainieren und die Wichtigkeit dieser Einstellung zu demonstrieren.

Diese Einstellungen können dann schneller auf alle anderen Peripheriesysteme adaptiert werden.

Die Leuchtdioden befinden sich an Port 1. Der Port wird ebenfalls für das JTAG-Interface und für die

Ansteuerung des LCDs verwendet. Befindet sich der Mikrocontroller im Debug-Modus oder werden gerade Daten zum LCD gesendet, verändert das mit hoher Sicherheit den Status der LEDs.

Handbuch MSP430 Education System Seite 22

Hardwarebeschreibung

Bild 4-8: Beschaltung und Position der Leuchtdioden

Die Leuchtdioden wurden so an den Mikrocontroller angeschlossen, dass Sie bei Low-Pegel (low activ) am Mikrocontroller leuchten. Da viele Mikrocontroller in dieser Beschaltung mehr Strom treiben können, wurde diese Lösung auch hier eingesetzt, um eine gewisse Kompatibilität herstellen zu können.

Die Anschlussbelegung der Leuchtdioden zeigt das Bild 4-8. Tabelle 5 zeigt die Anschlussbelegung

der Leuchtdioden am Mikrocontroller, der Stiftleiste X8 und den verwendeten Port.

Port

P1.0

P1.1

P1.2

P1.3

P1.4

P1.5

P1.6

P1.7

Tabelle 5: Anschlussbelegung der Leuchtdioden

Stiftleiste

X8.8

X8.7

X8.6

X8.5

X8.4

X8.3

X8.2

X8.1

μC Pin zugehörige Leuchtdioden

31

32

33

34

35

36

37

38

LED 0 (D1) (low active),

LED 1 (D2) (low active),

LED 2 (D3) (low active),

LED 3 (D4) (low active),

LED 4 (D5) (low active)

LED 5 (D6) (low active)

LED 6 (D7) (low active)

LED 7 (D8) (low active)

Handbuch MSP430 Education System Seite 23

Hardwarebeschreibung

4.6 Taster

Bild 4-9: Installierte Taster

Da Taster wichtige Funktionen in vielen unterschiedlichen Systemen übernehmen, wurden auf dem

MSP430 Education System vier Taster verwendet (Bild 4-9). 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.

Bild 4-10: Beschaltung und Position der Taster

Handbuch MSP430 Education System Seite 24

Hardwarebeschreibung

Wie in Bild 4-10 zu sehen ist, liegen die angeschlossen Ports des Mikrocontrollers (über

Vorwiderstände R12-R15) direkt an der Versorgungsspannung (VCC) der Tastereingänge. Die

Widerstände R16-R19 dienen ausschließlich der Strombegrenzung beim Drücken der Taster. Die Ports

P2.0-2.2 und P2.5 müssen in dem zugehörigen Portregister als Eingang geschaltet werden, um eine

Spannungsänderung und somit ein Schalten detektieren zu können. Da die Taster standardmäßig offen sind und die Ports als Eingänge geschaltet wurden, kommt es zu keinen Stromfluss in Richtung

Mikrocontroller. Die Taster schalten nach GND, das bedeutet, nach betätigen eines Tasters, wird der angeschlossene Port von VCC nach Masse geschaltet. Wird der Taster betätigt, kommt es zum

Stromfluss über den jeweiligen Vorwiderstand von VCC nach Masse. Da die gesamte Spannung über diesen Vorwiderstand abfällt, kann der Mikrocontroller nur noch einen Null-Pegel erkennen. Diese

Veränderung von VCC auf GND kann dann über ein Programm, an dem jeweiligen Port, erkannt werden.

Da die Taster an den externen Interruptleitungen angeschlossen sind, ist auch eine interruptgesteuerte Entprellung möglich. Die Widerstände R16-R19 dienen der Absicherung der

Mikrocontrollereingänge, um eine Überlastung dieser zu verhindern.

Die Tabelle 6 stellt die Anschlussbelegung noch einmal übersichtlich dar. Die Taster S6, S7, S8 und

S9 stellen eine alternative Bestückungsvariante dar.

Tabelle 6: Anschlussbelegung der Taster

Port Stiftleiste μC Pin Peripheriesystem

P2.1

P2.5

X7.9

X7.3

9

3

Taster S2

Taster S4

Handbuch MSP430 Education System Seite 25

4.7 Infrarotschnittstelle

Hardwarebeschreibung

Bild 4-11: Lage der Infrarotkomponenten

Das MSP430 Education System ist mit Infrarotemfangs- und Sendeelementen ausgestattet. Der

Empfänger sorgt selbstständig für eine Demodulation von RC5-Codes bei einer Frequenz von 36 kHz.

Über die Lötbrücke SJ5 kann der Infrarotempfänger abgeschaltet werden. Tabelle 7 gibt einen

Überblick über die Portbelegung.

Tabelle 7: Anschlussbelegung der Infrarotbauelemente

Port Stiftleiste μC Pin Peripheriesystem

P2.3 X8.10 29 Emfangssignal

P4.0 X11.3 17 IR Sendesignal

Handbuch MSP430 Education System Seite 26

Hardwarebeschreibung

4.8 LC-Display

Bild 4-12: Installiertes Dotmatrix Display

Das eingesetzte Display (Bild 4-12) ist ein Standard Dotmatrixdisplay mit zwei Zeilen und 16 Zeichen

pro 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 4-13 zeigt die Beschaltung des Displays auf dem MSP430

Education System.

Bild 4-13: Beschaltung des LC-Displays

Handbuch MSP430 Education System Seite 27

Hardwarebeschreibung

Es wurde der 4-Bit Modus gewählt, damit die Debugfunktionalität über die JTAG-Schnittstelle auch bei aktivem Display erhalten bleibt.

Das Display wird mit 5V betrieben. Der Oktalbuffer IC6 wird benötigt um die 3,3V-Spannungspegel vom Mikrocontroller umzusetzen. Auf Grund der Beschaltung ist es nicht möglich, Daten vom Display zu lesen. Die R/W-Leitung des Displays ist fest auf „schreiben“ / Massepegel gelegt.

Über das Potentiometer R20 kann der Kontrast des Displays nachgeregelt und eingestellt werden.

Die nachfolgenden Tabellen beschreiben die wichtigsten Anschlüsse und Pinbelegungen des Displays.

Tabelle 8: Anschlussbelegung des LC-Displays

P3.0

P3.1

P1.0

P1.1

P1.2

P1.3

Port Stiftleiste μC Pin Peripheriesystem

X7.11

X7.12

X8.8

X8.7

X8.6

X8.5

11

12

21

24

Ansteuerung der RS-Leitung des LC-Displays

Ansteuerung der E (Enable) Leitung des Displays

LCD Datenleitung D4

22 LCD Datenleitung D5

23 LCD Datenleitung D6

LCD Datenleitung D7

Tabelle 9: Signal- und Belegungsplan des Displays

10

11

12

13

14

5

6

7

8

9

Pin

1

2

3

4

Signal

GND

VDD

VEE

RS

D3

D4

D5

D6

D7

R/W

E

D0

D1

D2

Pegel

L

H

-

H / L

L

H

H / L

H / L

H / L

H / L

H / L

H / L

H / L

H / L

Beschreibung negative Spannungsversorgung 0 V positive Spannungsversorgung +5 V

Kontrasteinstellung des Displays

Register Select

Read H / Write L, fest auf L-Pegel eingestellt

Enable

Datenleitung 0

Datenleitung 1

Datenleitung 2

Datenleitung 3

Datenleitung 4

Datenleitung 5

Datenleitung 6

Datenleitung 7

15 LED Plus-Leitung

16 LED - - Hintergrundbeleuchtung Minus-Leitung

Um das Display verwenden zu können, werden noch weitere wichtige Informationen, wie die grundsätzlichen Eigenschaften des Displays, der verwendete Befehlsatz sowie die richtigen

Initialisierungsparameter, benötigt. Ohne die Initialisierungsparameter kann das Display nicht verwendet werden. Alle benötigten Features werden auf den folgenden Seiten kurz beschrieben und

können im zugehörigen Datenblatt [17] nochmals in ausführlicher Form nachgelesen werden. Die

wichtigsten Eigenschaften des Displaycontrollers (HD44780) im Überblick:

Handbuch MSP430 Education System Seite 28

Hardwarebeschreibung

• 4-Bit oder 8-Bit MPU-lnterface (hier 4-Bit verwendet)

• Integriertes Display RAM für 80 Zeichen

• Zeichengenerator ROM

5x 7: 160 Zeichen

5x10: 32 Zeichen

• Display Daten und Zeichengenerator RAM können von der MPU gelesen werden

• Umfangreicher Befehlssatz: Display löschen, Cursor home, Display ON/OFF, Cursor

ON/OFF, Zeichen Blinkfunktion,Cursor shift, Anzeigen shift

• Interner Power On Reset (POR)

Der HD44780 verfügt über einen 8-Bit-Datenbus sowie über die Steuersignale R/W (Read/Write) das in dieser Lösung fest auf Schreiben liegt, RS (Register Select) und E (Enable). Es ist sowohl ein 8-Bit als auch ein 4-Bit Betrieb des Controllers möglich. In dieser Lösung wurde sich auf den 4-Bit Modus beschränkt, um die Debugfunktionalität zu erhalten. Die zu verwendende Datenbusbreite, kann lediglich während der Initialisierung festgelegt werden. Bei Verwendung des 4-Bit Betriebs müssen die im Folgenden beschriebenen Kommandos in zwei aufeinander folgenden Schritten an den HS44780 gesendet werden. Zuerst der High Nibble, dann der LOW Nibble. Beide Nibble werden über die

Datenleitungen DB4-DB7 übertragen. Dadurch werden die Datenleitungen DB0-DB3 nicht mehr beachtet.

Mit dem Signal RS wird dem Displaycontroller mitgeteilt, ob Anweisungen, Instruktionscodes

(RS=0) oder Daten (RS=1) übertragen werden. Bei der fallenden Flanke des Enable Signals (E)

übernimmt der Display-Controller die Daten.

Im Folgenden wird der Ablauf der Hardware-Initialisierung beschrieben:

Nach Anlegen der Versorgungsspannung an das Display, sollte der Mikrocontroller ca. 15 ms warten bevor er mit der Initialisierung des HD44780 beginnt. Während der Power On Phase der

Initialisierung werden die folgenden Schritte durchgeführt:

1. Display löschen

2. Funktion: DL= 0: 4-Bit Datenbusbreite

N = 1: 2-Zeilen Display

F = O: 5x7 Zeichensatz

3. Display ON/OFF

Funktion: D = 0: Display aus

C = 0: Cursor aus

B = 0: Blinkfunktion aus

4. Entry mode set

I/D = 1: Inkrementiert die DD-RAM Adresse nach dem Lesen/Schreiben

Handbuch MSP430 Education System Seite 29

Hardwarebeschreibung

eines Zeichens

S = 0: Kein schieben des Displays

5. 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 30

Hardwarebeschreibung

Power ON

Warten > 15 ms

RS R/W DB7 DB6 DB5 DB4

0 0 0 0 1 1

Warten > 4.1 ms

RS R/W DB7 DB6 DB5 DB4

0 0 0 0 1 1

Warten > 100 µs

RS R/W DB7 DB6 DB5 DB4

0 0 0 0 1 1

RS R/W DB7 DB6 DB5 DB4

0 0 0 0 1 0

0 0 0 0 1 0

0 0 N F x x

0 0 0 0 0 0

0 0 1 1 0 0

0 0 0 0 0 0

0 0 0 0 0 1

0 0 0 0 0 0

0 0 0 1 I/D S

Initialisierung Ende

Wartezyklus

Busy Flag kann an dieser Stelle noch nicht abgefragt werden, da der 8-Bit Modus hier noch aktiv.

Wartezyklus

Busy Flag kann an dieser Stelle noch nicht abgefragt werden, da der 8-Bit Modus hier noch aktiv.

Wartezyklus

Busy Flag kann an dieser Stelle noch nicht abgefragt werden, da der 8-Bit Modus hier noch aktiv.

Ab dieser Position kann das Busy-Flag abgefragt werden. In diesen beiden Schritten wird der 4-Bit-Modus gesetzt. Einstellen der verwendeten Zeilen und des

Zeichensatzes.

Zu beachten ist : die Zeilenanzahl und der Zeichensatz können ab hier nicht mehr verändert werden.

Display auf An setzen

Display löschen

Entry-mode setzen

Sollte keine Anzeige auf dem Display erscheinen, bitte folgende Fragen beachten

1. Ist die Kontrastspannung richtig eingestellt?

2. Wurde die Initialisierung richtig durchgeführt?

3. Wurden die Pausenzeiten zwischen den einzelnen Schritten eingehalten?

Handbuch MSP430 Education System Seite 31

Hardwarebeschreibung

Tabelle 10: Befehlssatz des Displaycontrollers HD44780

Instruktion

Return Home

Display ON/OFF

Cursor und Display shift

Funktion Set

CG RAM Adresse setzen

DD RAM Adresse setzen

Busy Flag und Adresse lesen

Daten in CG- oder DD-

RAM schreiben

Daten aus CG- oder DD-

RAM lesen

0

0

0

RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

0 0 0 0 0 0 0 0 0 1

0 0 0 0 0 0 0 0 1 x

0 0 0 0 0 0 0 1 I/D S

0

0

0

0

0

0

0

0

0

0

0

C

1 S/C R/L x

1 DL N

0 0 0 1

0 0 1

0 1 D

F x

DD-RAM Adresse

B x x

0

1

1 BF

0

1 1

Adresszähler für CG-RAM und DD-RAM

Zu schreibende Daten

Beschreibung der eingesetzten Befehle:

Die Funktion der in Tabelle 10 zu sehenden Befehle, werden nachfolgend erläutert.

Return Home

Setzt den Adresszähler des DD-RAM auf Adresse 0. Der Inhalt des DD-RAM bleibt unverändert. Der

Cursor wird an die erste Position der ersten Zeile gesetzt.

Entry mode set l./D: 1 = Adresspointer inkrementieren

0 = Adresspointer dekrementieren

S: 1 = Displayinhalt schieben,

0 = Displayinhalt nicht schieben.

Schreiben in DD-RAM verschiebt den Displayinhalt, DD-RAM lesen verschiebt nicht. Der Cursor bleibt an derselben Stelle stehen. Lesen oder schreiben in das CG_RAM hat ebenfalls keinen Einfluss auf den Displayinhalt.

Display ON/OFF

D:

C:

1 = Display an

1 = Cursor unsichtbar

0 = Display aus

0 =Cursor sichtbar

B: 1 = Zeichen unter dem Cursor blinkt 0 = Blinken aus

Handbuch MSP430 Education System Seite 32

Hardwarebeschreibung

Cursor und Display shift (Tabelle 11)

Tabelle 11: Cursor- und Displayeinstellungen für die Bits S/C und R/L

S/C R/L Funktion

Bewegt den Cursor um eine Stelle nach links ohne das DD-RAM zu

0 0 verändern

0 1

Bewegt den Cursor um eine Stelle nach rechts ohne das DD-RAM zu verändern

Verschiebt Displayinhalt und Cursor um eine Stelle nach links ohne

1 0 das DD-RAM zu verändern

1 1

Verschiebt Displayinhalt und Cursor um eine Stelle nach rechts ohne das DD-RAM zu verändern

Funktion Set

Die Datenbusbreite, Anzahl Zeilen und der Zeichensatz können nur währen der Initialisierungsphase des Controllers gesetzt werden.

DL: 1 = 8-Bit Interface

N: 1 = 2 Zeilen Display

0 = 4-Bit Interface

0 = 1 Zeilen Display

F: 1 = 5x10 Zeichenfont 0 = 5x7 Zeichenfont

Busy Flag und Adresse lesen

BF: 1 = Controller arbeitet gerade eine interne Operation ab

0 = Controller akzeptiert neue Instruktionen

Das Busy Flag sollte vor jeder Schreiboperation ausgelesen werden, um sicherzustellen, dass der

Controller bereit ist.

Daten in CG- oder DD- RAM schreiben

Es werden 8-Bit Daten zum CG- oder DD-RAM geschrieben. 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.

Daten aus CG- oder DD- RAM lesen

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.

Das Bild 4-14 zeigt den Standardzeichensatz in einer Übersicht.

Handbuch MSP430 Education System Seite 33

Hardwarebeschreibung

Bild 4-14: Standardzeichensatz des Displays

Weitere Einstellungen und Informationen zu diesem Display können aus dem zugehörigen Datenblatt

[17] entnommen werden. In diesem Datenblatt wird ebenfalls die genaue Vorgehensweise beim

Entwerfen und Darstellen eigener Zeichen beschrieben.

Handbuch MSP430 Education System Seite 34

Hardwarebeschreibung

4.9 Lautsprecher

Bild 4-15: Eingesetzter Lautsprecher

Der Lautsprecher in Bild 4-15 wird mit einer einfachen KomplementärGegentakt-B-Endstufe

angesprochen. Dies ist die einfachste Verstärkerschaltung zum Ansprechen eines Lautsprechers. Der

Lautsprecher dient ebenfalls zum Ausgeben von Puls-Weiten-Modulierten Signalen, hier jedoch in

Form von Tönen. Töne können natürlich auch ohne Puls-Weiten-Modulation erzeugt und an diesem

Lautsprecher ausgeben werden. Hierzu wird einfach ein Signal mit fest eingestellten Pulsweiten und fester Frequenz an Port P2.4 ausgegeben.

Bild 4-16: Beschaltung des Lautsprechers

Tabelle 12: Anschlussbelegung des Lautsprechers

Port Stiftleiste

P2.4 X8_8.9

μC Pin Peripheriesystem

20 Ansteuerung des Lautsprechers LAU1

Handbuch MSP430 Education System Seite 35

Hardwarebeschreibung

4.10 Potentiometer

Bild 4-17: Installierte Potentiometer

Die beiden Potentiometer P1 und P2, wie in Bild 4-17 gezeigt, sind linear einstellbare Widerstände

mit einem Widerstand von je 100 kOhm. Mit diesen Potentiometern soll die Verwendung des Analog-

Digitalwandlers vom MSP430 erlernt werden. In einer Applikation können diese Potentiometer bestimmte Parameter dynamisch ändern. Das Verändern von Tönen ist genauso möglich, wie das

Anzeige des AD-Wandler-Ergebnisses auf den LEDs.

Ohne einen Mikrocontroller wäre dies natürlich auch möglich, doch kann hier das Zusammenspiel mehrerer ganz unterschiedlicher Komponenten in einer Applikation erlernt werden. Durch

Umprogrammierung können in dieser Lösung sehr einfach die Potentiometer vertauscht oder mit anderen Parametern belegt werden. Bei einem festen Aufbau, wäre dies nicht ohne erheblichen

Aufwand möglich.

Handbuch MSP430 Education System Seite 36

Hardwarebeschreibung

Bild 4-18: Beschaltung der Potentiometer

Die Widerstände R21 und R23 dienen als Schutz des Mikrocontrollers gegen Kurzschluss. Das Bild

4-18 und die Tabelle 13 beschreiben die wichtigsten Anschlüsse und Positionen dieser zwei

Potentiometer.

Tabelle 13: Anschlussbelegung der Potentiometer

Port Stiftleiste μC Pin Peripheriesystem

P3.7 X8.11 18 Potentiometer 1

Handbuch MSP430 Education System Seite 37

Hardwarebeschreibung

4.11 Reset-Beschaltung des MSP430

Der MSP430F1232 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 S5 wird im Controller ein Reset ausgelöst. Vom JTAG-Adapter kommt

ebenfalls ein Reset-Signal, das zum Zurücksetzen genutzt werden kann. Bild 4-19 zeigt die

Beschaltung und Lage des Reset-Tasters.

Bild 4-19: Resetbeschaltung des MSP430

Handbuch MSP430 Education System Seite 38

Hardwarebeschreibung

4.12 Lötbrücken des MSP430 Education Systems

Das MSP430 Education System erlaubt, durch Aktivieren bzw. Deaktivieren von Lötbrücken verschiedene Funktionalitäten zu beeinflussen. Die Einstellmöglichkeiten der einzelnen Lötbrücken

zeigt

Tabelle 14

im Überblick.

Name Beschreibung

SJ1

SJ2

SJ3

SJ4

SJ5

SJ6

Beschaltung von Pin1 am RS-232 Levelconverter. Wird bei Bestückung von alternativem IC benötigt

Verbindung zwischen Mikrocontroller und RS-232-Levelconverter (TX)

Verbindung zwischen Mikrocontroller und RS-232-Levelconverter (RX)

Aktivierung der 5V Spannungsversorgung

Aktivierung des Infrarot-Empfängers

Aktivierung des Infrarot-Senders

Tabelle 14: Funktionsübersicht aller Lötbrücken

Die Lage der Lötbrücken zeigt das Bild 4-20.

Default geschlossen geschlossen geschlossen geschlossen geschlossen geschlossen

Bild 4-20: Lage der Lötbrücken Top-Ansicht

Handbuch MSP430 Education System Seite 39

Softwarebeschreibung

5 Softwarebeschreibung

In diesem Kapitel wird die Entwicklungsumgebung IAR Embedded Workbench von IAR Systems [2]

kurz beschrieben und erklärt. Die Software kann als Kickstart Version von der Texas Instruments

Homepage [1] oder der IAR Systems Homepage [2] kostenfrei herunter geladen werden.

Es wurde sich für diese Entwicklungsumgebung entschieden, da sie Assembler- und C-

Programmierung in einer Umgebung vereint, einen umfangreichen Debugger enthält, kostenfrei genutzt werden kann und von Texas Instruments direkt unterstützt wird (JTAG-Funktionalität von TI selbst implementiert).

Da es sich bei der IAR Embedded Workbench grundsätzlich um einen kommerziellen Compiler handelt, muss der Anwender einige Abstriche bei der Kickstart Version in Kauf nehmen. Einzig der

Assemblerteil kann in seiner vollen Funktionalität verwendet werden. Der C-Compiler ist jedoch auf 4 kByte C-Code begrenzt.

Die Entwicklungsumgebung enthält zusätzlich ein sehr umfangreiches Handbuch und eine guten

Hilfe-Funktion, die bei den meisten Fragen weiterhelfen kann.

Handbuch MSP430 Education System Seite 40

Softwarebeschreibung

Bild 5-1: Entwicklungsumgebung IAR Embedded Workbench

Handbuch MSP430 Education System Seite 41

Softwarebeschreibung

5.1 Installation der Software

Nachfolgend wird an Hand der Tabelle 15 die Installation der Software Schritt für Schritt erklärt.

Sollte es dennoch zu Problemen kommen, können Sie die beiliegende Dokumentation zu Hilfe nehmen oder den Support der Firmen Texas Instruments und IAR Systems nutzen.

Tabelle 15: Installationsschritte in einer Übersicht

1. Nach Doppelklick auf das Installationsfile erscheint folgendes Fenster. In diesem Fenster klickt man auf den

Setup-Button.

2. Es öffnet sich folgendes Fenster, in dem man einzelne

Informationen zum Produkt nach lesen kann. Man klickt auf Next.

3. Es folgt ein Fenster in dem die Lizenz-Vereinbarungen aufgeführt sind. Man sollte diese Informationen genau lesen, denn diese Lizenzvereinbarungen muss man durch klicken auf den Accept-Button bestätigen, um zum nächsten Fenster zu gelangen.

4. In diesem Fenster wählt man den Ort der Installation. Klickt man auf Browse kann man den Ort der Installation selber bestimmen. Da sich jedoch alle weiteren Beschreibungen auf den

Standardordner beziehen sollte dieser auch eingestellt bleiben.

Man klickt auf Next.

5. Durch klicken auf Custom kann man die 6. In diesem Fenster kann man den Eintrag in dem Start-

Installationsparameter verändern. Es wird empfohlen das volle Packet zu installieren.

Programme-Ordner verändern. Man klickt auf Next um zum nächsten Fenster zu gelangen.

Handbuch MSP430 Education System Seite 42

Softwarebeschreibung

7. In diesem Fenster werden alle gewählten Features nochmals dargestellt. Durch klicken auf Next startet man die Installation.

8. Installationsfortschritt. Durch drücken von Cancel kann man die

Installation abbrechen.

9. Nach erfolgreicher Installation erscheint folgendes

Fenster. Die Häkchen lässt man gesetzt, um die

Readme-Datei anzuzeigen und weitere Tools zu

Datei im HTML Browser.

10. Nach dem betätigen des Finish-Button erscheint die Readmeinstallieren. Finish beendet die Installation des

Hauptprogramms.

11. Nach dem Neustart des Computers wählt man aus dem Programme-Ordner des Starmenüs den Punkt IAR

Systems, dort den Unterpunkt IAR Embedded

Workbench for… und danach den Unterpunkt IAR

Embedded Workbench. Durch klicken auf diesen

Unterpunkt öffnet sich die Programmierumgebung.

12. Dies ist das Bild was sich nach dem öffnen bietet. Man sieht die Standardoberfläche mit den Menüleisten am oberen Rand.

Handbuch MSP430 Education System Seite 43

Softwarebeschreibung

13. In diesem Bild sieht man die Programmierumgebung in Verwendung. Wie man zu diesem Bild kommt, zeigt das nächste Kapitel.

Damit ist die Installation der Software an dieser Stelle abgeschlossen.

Wurde die Installation wie beschrieben durchgeführt, befinden sich nun mehrere wichtige Dateien und User Guides im Programmordner der IAR Embedded Workbench. Eine Liste der wichtigsten User

Guides zeigt Tabelle 16. Diese Dateien befinden sich, die oben beschriebene Installation

vorausgesetzt, in folgendem Ordern des Laufwerks C: C:\Programme\IAR Systems\ew23\430\doc\. In diesem Ordner befinden sich viele weitere Dateien, die während der Programmierung weiter helfen können.

Tabelle 16: Wichtige User Guides und Handbücher

Dateiname a430.html clib.pdf

EW430_AssemblerReference.pdf

EW430_CompilerReference.pdf

EW430_UserGuide.pdf icc430.htm

MSP-FET430 Errata.pdf

MSP-FET430 Users Guide.pdf readme.htm

Dokumentname

Release notes for MSP430 IAR Assembler V3.42A

IAR C LIBRARY FUNCTIONS

MSP430 IAR Assembler

MSP430 C/C++ Compiler

MSP430 IAR Embedded Workbench IDE User Guide

Release notes for the MSP430 IAR C/C++ Compiler

MSP430 Flash Emulation Tool User Guide

MSP-FET430 FLASH Emulation Tool (FET) Users Guide

Release notes for IAR Embedded Workbench for MSP430

Nun kann ein Beispielprojekt aus dem IAR Programmordner gewählt werden. Die Schritte die hierfür nötig sind, zeigt das nächste Kapitel.

Handbuch MSP430 Education System Seite 44

Softwarebeschreibung

5.2 Hauptbestandteile der IAR Embedded Workbench

Um ein Beispielprojekt laden, kompilieren und übertragen zu können, ist es wichtig, die einzelnen

Symbole der Programmierumgebung, zu kennen. Deshalb werden in diesem Abschnitt einzelne

Bestandteile der Software kurz erklärt, damit sich der Anwender, nach erfolgreicher Installation, orientieren kann.

Nach dem Start der Software durch klicken auf das IAR Embedded Workbench Symbols im Startmenü zeigt sich dem Benutzer

folgender Bildschirm wie in Bild 5-2 zu

sehen.

Die Programmieroberfläche besteht aus 3

großen Fenstern wie in das Bild 5-3 zeigt.

Diese drei Fenster bilden die

Programmierzentrale für jeden Anwender.

Das Workspace-Fenster stellte alle Projekte und auch zu dem Projekt zugehörende

Bild 5-2: Bildschirm nach Start der Software

Dateien, die in das Workspace eingebunden sind übersichtlich dar. Und zeigt zu dem nach einer Compilierung ebenfalls alle eingebundenen

Headerfiles. Diese Headerfiles sind, Standardbibliotheken, die nach Einbinden in das Hauptprogramm ihre Vereinbahrungen zur Verfügung stellen.

Bild 5-3: Hauptbestandteile der Programmierumgebung

Handbuch MSP430 Education System Seite 45

Softwarebeschreibung

Das Editor-Fenster ist das eigentliche Programmier-Fenster. In diesem Fenster werden alle

Programme geschrieben und entworfen. Dieses Fenster stellt auch die Ausgangsbasis für eigene

Programme dar.

Das Nachrichten-Fenster stellt die Schnittstelle vom Programm zum Anwender dar. Alle relevanten

Daten die das Programm dem Anwender zurückgibt, werden in diesem Fenster dargestellt. Es berichtet zum einen über Fehler, Fehlerart und Ort des Fehlers und zum anderen über Suchergebnisse und sonstige wichtige Meldungen. Nach dem compilieren eines Programms, werden alle wichtigen

Informationen in diesem Fenster angezeigt.

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 [11] und [15]

nachlesen.

Das Hauptmenü stellt den Zugang zu mehreren Grundfunktionen dar, in denen projektspezifische

Einstellungen getätigt werden können. Nicht minder wichtig sind die Buttons der Toolbars. Sie nehmen dem Programmierer sehr viel Arbeit ab und gestalten das Programmieren sehr übersichtlich.

Wichtige Symbole und Buttons der Programmierumgebung zeigt das Bild 5-4. Alle Funktionen der

Buttons sind ebenfalls im zugehörigen Handbuch nachzulesen.

Bild 5-4: Funktionen der Toolbar Buttons

Das zweite wichtige Teil dieser Programmierumgebung ist der Debugger. Mit Hilfe des Debuggers kann der erzeugte Programmcode auf den Mikrocontroller geladen und dort auch ausgeführt werden.

Es stellt somit Download- und Debug-Software in einer Umgebung dar. Denn Programmcode kann der

Nutzer im Debugger schrittweise durchlaufen und somit debuggen. In Bild 5-5 werden die

wichtigsten Bestandteile des Debuggers übersichtlich dargestellt. Diese Fenster helfen, um den geschriebenen Programmcode von Fehlern zu bereinigen. Nachfolgend werden alle Fenster kurz beschrieben um die entsprechende Funktionsweise verstehen zu können. Eine ausführliche

Beschreibung findet sich in den zugehörigen Handbüchern [9] und [10].

Handbuch MSP430 Education System Seite 46

Softwarebeschreibung

Bild 5-5: Hauptbestandteile des Debuggers

Das Source Code Fenster und das Disassembly Fenster stellt den zu debuggenden C- oder

Assemblercode übersichtlich dar. Durch das Betätigen des Memory Buttons im Desassembly Fenster, kann zwischen der Memory-, RAM-, FLASH-, SFR- und INFO-Ansicht gewechselt werden. Durch

Rechtsklicken in diesem Fenster öffnet sich ein Menü, in dem sehr hilfreiche Optionen zum

Debuggen des Sourcecodes gefunden werden können.

Im Calls-Fenster wird der Speicherort der Stacksicherung, eines in C geschriebenen Programms dargestellt. Diese Angabe hat folgendes Format: module\function(values).

Das Locals-Fenster zeigt automatisch alle lokalen Variablen und alle dazugehörigen Werte

übersichtlich an. Mit diesem Fenster läst sich das vorhanden sein bestimmter Variablen und ihrer aktuellen Werte überprüfen.

Im Watch-Fenster kann der Anwender sich bestimmte C-Variablenwerte anzeigen lassen, die einfach zugefügt werden können. Dieses Fenster zeigt alle aufgenommenen Variablen mit den jeweils aktuellen Werten dieser Variablen an und ist sehr nützlich bei der Suche von Fehlern im geschriebenen Programmcode. Der Anwender legt sich lediglich eine Liste der interessanten

Variablen an und hat immer die 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 47

Softwarebeschreibung

Speicher kann in 8,16 oder 32-Bit Organisation anzeigt werden. Durch Doppelklick auf einen

Speicherblock öffnet sich ein Fenster in dem jede Speicherzelle vom Anwender gezielt verändert werden kann. Dieses Fenster bietet eine weitere Möglichkeit, den geschrieben Programmcode auf dem Mikrocontroller zu beeinflussen.

Im Register-Fenster werden alle controllerspezifischen Registerinhalte kontinuierlich angezeigt und können auch dort direkt beeinflusst werden. Dies bedeutet, dass während der Debugphase

Registerinhalte auf dem Controller verändern werden können und somit ein direkter Einfluss auf das laufende Programm besteht. Der Registerwert läst sich in dem zugehörigen Kästchen verändern.

Diese Änderung wird nach dem Wechsel zu einem anderen Register übernommen.

Das Terminal I/O Fenster ermöglicht die Eingabe der Daten in das Source-Programm, und lässt den

Ausgang vom Source-Programm anzeigen.

Dieser Überblick sollte jedem Anwender die wichtigsten Fenster näher gebracht haben, um den

Debugger gezielt einsetzen zu können. Weitere Informationen können ebenfalls aus den zugehörigen

Handbüchern oder der Hilfedatei entnommen werden. Der Debugger besitzt weiterhin eine nützliche

Toolbar. Mit Hilfe dieser Toolbar ist es möglich, schnell die wichtigsten Optionen und Funktionen des Debuggers zu erreichen und einzelne Einstellungen für den Debugvorgang zu treffen. Die Toolbar stellt die zentralen Debug- und Abarbeitungsfunktionen zur Verfügung. Der Mikrocontroller kann durch einen einfachen Mausklick gestartet oder genauso wieder gestoppt werden. Das Setzen und

Entfernen von Breakpoints gelingt mit einem Mausklick. Durch einen weiteren Mausklick kann dieser

Breakpoint ebenso einfach erreicht werden. Das Bild 5-6 gibt einen gesamten Überblick der zur

Verfügung stehenden Buttons und Symbole und weiterhin eine Kurzbeschreibung zu jedem Punkt.

Handbuch MSP430 Education System Seite 48

Softwarebeschreibung

Wie in diesem Bild zu sehen, gibt es natürlich noch viele weitere Symbole und Buttons, die jedoch in dem zugehörigen Handbuch sehr gut erklärt und beschrieben werden.

Bild 5-6: Funktionen der Toolbars des Debuggers

Die Programmierumgebung IAR Embedded Workbench stellt eine leistungsfähige

Programmierumgebung mit sehr gutem Debugger dar. Die einzelnen Funktionen der Buttons und

Symbole zu kennen vereinfacht die Programmierung ebenso stark, wie das beherrschen der

Programmiersprachen selbst. Damit sind die Grundlagen für das weitere Arbeiten mit dieser

Programmierumgebung gelegt.

Alle Bestandteile und Funktionen werden in den installierten Handbüchern und

Zusatzdateien, wie in Tabelle 16 aufgelistet, genau beschrieben. Das Verwenden

dieser Dateien ist ebenso wichtig, wie das Verwenden dieses Handbuchs, da nur durch Kombination aller Bestandteile (Hardware und Software) ein gut

funktionierender Entwicklungsaufbau realisiert werden kann.

Handbuch MSP430 Education System Seite 49

Softwarebeschreibung

5.3 Erste Schritte

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.

Es werden der richtige Funktionsaufbau, das Laden eines bestehenden Beispielprogramms, das

Erstellen eines eigenen Programms und der Programmdownload auf den Mikrocontroller Schritt für

Schritt beschrieben.

5.4 Laden eines Beispielprojektes

Um die Softwareinstallation nun zu testen, kann ein Beispielprojekt aus dem IAR Programmordner geladen, bearbeitet ausgeführt und werden. Eine Fülle von Beispielprogrammen wird während der

Installation in den IAR Programmordner installiert. Auf der mitgelierten CD zum MSP Education

System stehen weiter Beispielprogramme in C und Assembler zur Verfügung mit denen die einzelnen

Funktionen der einzelnen Komponenten getestet werden können. Das Finden und Öffnen dieser

Dateien innerhalb der IAR Embedded Workbench wird in der nachfolgenden

Handbuch MSP430 Education System Seite 50

Softwarebeschreibung

Tabelle 17 detailliert beschrieben und erläutert. Werden die einzelnen Schritte befolgt, ist der

Anwender in der Lage sein erstes Projekt zu öffnen und zu erstellen. Dies ist der erste wichtige

Schritt in Richtung eigene Applikationen.

Handbuch MSP430 Education System Seite 51

Tabelle 17: Laden eines vorhanden Beispielprojektes

Softwarebeschreibung

1. Man startet die IAR Embedded Workbench aus dem

Startmenü heraus.

2. Nach dem Start der Software, zeigt sich dem

Anwender dieses Bild.

3. Im Menü wählt man File um dann im Untermenü

Open einen neuen Workspace zu öffnen.

4. Es erscheint folgendes Fenster. Man wählt den IAR

Systems Ordner im Windows Programme Ordner.

Voraussetzung ist ebenfalls, dass die Installation wie in Kapitel 4.1 beschrieben durchgeführt wurde. Man klickt doppelt auf den IAR Systems Programmordner.

5. Nach einem Doppelklick auf den ew23 Ordner und einen weiterer Doppelklick auf den 430 Ordner zeigt sich dem Anwender folgendes Fenster. Man wählt den

Ordner mit dem Namen FET_examples.

6. In diesem Ordner findet man den Workspace unter dem Namen „fet_projects.eww“. Dieses File beinhaltet alle Beispielprogramme, die in C und in

Assembler geschrieben sind.

Handbuch MSP430 Education System Seite 52

Softwarebeschreibung

7. In diesem Workspace findet man mehrere Projekte mit dem Namen msp430x. Diese Projekte sind für

Beispielprogramme können beim Entwurf einer eigenen

Applikation sehr hilfreich sein, um bestimmte Abläufe

8. Für die ersten Schritte wird ein C - Programm verschiedene MSP430 Typen vorgesehen. Da hier ein

MSP430F2272 zum Einsatz kommt, wählt man ein

Projekt unter dem Namen msp430x2xx. Diese verwendet und deshalb wählt man das Projekt unter dem Namen msp430x2xx_fet_1.c. Danach drückt man mit der rechten Maustaste auf diesen File und auf dem angezeigten Menü wählt man Rebuild all. zu demonstrieren.

9. Bei dem Compilieren des Projekts werden die

Bibliotheken in das Projekt einbezogen und in dem

Fenster angezeigt

10. Durch einen Doppelklick auf die File

msp430x2xx_fet_1.c, öffnet sich das

Programmierfenster mit dem C-Code. Nach erfolgreicher Durchführung dieser Schritte zeigt sich dem Anwender dieses Bild.

Der Anwender sollte sich auch die Beispielprogramme auf der mitgelieferten CD zum MSP Education

System ansehen. Diese Programme sind keine fertigen Applikationen, sondern Beispielprogramme zur

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

Handbuch MSP430 Education System Seite 53

Softwarebeschreibung

Tabelle

18

. Es werden alle wichtigen Schritte übersichtlich beschrieben und erklärt.

Handbuch MSP430 Education System Seite 54

Tabelle 18: Programmieren des Mikrocontrollers

Softwarebeschreibung

1. Nach dem Laden des Beispielprogramms zeigt sich dem Anwender folgender bekannter Bildschirm. Hat man eine Verbindung zum MSP430 Education System aufgebaut, wie in Kapitel 5.1 beschrieben, kann man nun auf den Debug-Button der Toolbar klicken und der Debugger wird geladen.

2. Der Debugger versucht den angeschlossenen

Mikrocontroller mit dem erstellten Programm zu programmieren.

3. Bevor man nun debuggen kann muss man darauf achten das das richtige Projekt aktiv ist (Projektname

fett geschrieben). Dazu führt man einen Rechtsklick auf den Projektnamen aus und wählt den Punkt Set as

Active heraus. Nun kann man den Debugger über den

Debug-Button laden.

4. Ist das Programmieren erfolgreich verlaufen, so zeigt sich dem Anwender folgender Bildschirm. Dies sind die Debug-Fenster, in denen das geladene

Programm gestartet oder Zeile für Zeile abgearbeitet werden kann. Um das Programm zu starten, drückt man den GO-Button und der Controller arbeitet das

Programm selbständig ab.

Nach Abarbeitung dieser beiden Tabellen kann ein Projekt geladen, kompiliert und auf den

Mikrocontroller geladen werden. Nun sind die Voraussetzungen für die Erstellung eines ersten eigenen Projects und die richtige Nutzung der Software geschaffen.

Die IAR Embedded Workbench gibt bei auftretenden Fehler eine Standardfehlermeldung

(Bild 5-7) aus. Ist ein Fehler aufgetreten, empfiehlt sich folgende Fehleranalyse:

1. Überprüfung der Verbindung zwischen Education System und JTAG-Adapter.

2. Überprüfung der Verbindung zwischen JTAG-Adapter und Computer.

Handbuch MSP430 Education System Seite 55

3. Neustart des Mikrocontrollers über den Reset-Taster S1.

4. Neustart der Software.

5. Überprüfen der Einstellungen für den C-Spy Debugger im Projekt.

6. Überprüfung des MSP430 Education System auf Beschädigung.

Softwarebeschreibung

Bild 5-7: Fehlermeldung bei nicht erfolgreichem Download

Handbuch MSP430 Education System Seite 56

Softwarebeschreibung

5.5 Erstes eigenes Programm (basierend auf IAR EW V4.11)

Nach Abarbeitung der Kapitel 5.3 und

Fehler! Verweisquelle konnte nicht gefunden werden. sind die Grundlagen für das Erstellen eines eigenen Projektes vermittelt. Um nun ein eigenes Projekt zu erstellen, sind wichtige Abläufe und Einstellungen zu beachten. Die genaue Vorgehensweise beim

Erstellen und Konfigurieren eines eigenen Projektes zeigt die

Handbuch MSP430 Education System Seite 57

Softwarebeschreibung

Tabelle 19. In ihr werden auch wichtige Projekteinstellungen an Hand von Bildern beschrieben.

Hierdurch gelingt es sehr schnell, die Eigenheiten der Programmierumgebung zu erkennen und zu nutzen. Nach Abarbeitung dieses Abschnitts ist der Anwender in der Lage, diese Softwareumgebung gezielt für eigene Projekte und Applikationen einzusetzen.

Alle Einstellungen und Einstellmöglichkeiten können hier natürlich nicht beschrieben werden. Dies wird ausführlich in den zugehörigen Handbüchern der einzelnen Programmteile beschrieben. Eine

Übersicht aller Handbücher zeigt die Tabelle 16.

Zum Erstellen eines eigenen Projektes werden Grundkenntnisse in einer Programmiersprache vorausgesetzt. In diesem Beispiel wird sich auf die Programmiersprache Assembler beschränkt, da diese 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 58

Softwarebeschreibung

Tabelle 19: Das erste eigene Projekt

1. Man startet wie gewohnt die IAR Embedded 2. Um einen neuen Workspace anzulegen klickt man

Workbench. Nach dem Laden sieht man dieses Fenster. auf File im Menü und im Untermenü auf New um einen neuen Workspace zu erstellen.

3. Dem Anwender zeigt sich nun dieses Bild. Das

Workspace-Fenster ist geöffnet. und zeigt somit das erfolgreiche Anlegen einer neuen Arbeitsfläche.

4. Jetzt kann man ein neues Projekt erstellen. Man wählt hier den Eintrag Create New Project. da ein neues Projekt angelegt werden soll.

5. Dem Anwender zeigt sich nun dieses Bild. Man kann zwischen verschiedenen Project templates wählen. Für dieses erste eigene Project wählt man nun ein Empty

Project.

.

6. Es öffnet sich ein neues Fenster. In diesem

Fenster wählt man einen Ordner in dem das neue

Projekt gespeichert werden soll sowie den Namen des Projektes. Ist beides festgelegt, speichert man.

Handbuch MSP430 Education System Seite 59

Softwarebeschreibung

7. Dem Anwender zeigt sich nun dieses Bild. Das Projekt-

Fenster ist geöffnet und zeigt somit das erfolgreiche

Anlegen eines neuen Projektes. Um nun ein Programm schreiben zu können muss man noch ein neues Sourcefile anlegen.

8. Um ein neues Source-File anzulegen, wählt man erneut unter File den Unterpunkt New und dann File.

9. Es öffnet sich ein neues Fenster mit dem Namen

Untitle1. Um das neue Sourcefile zu speichern, drückt man nun auf den Speichern Button.

10. Da hier ein Assemblerprogramm entwickelt werden soll, wählt man als Namenserweiterung „.s43“. Dies ist die

Bezeichnung für eine IAR EW Assemblerfile. Die Datei nennt man nun xxx.s43 wobei xxx für einen selbst gewählten

Namen steht. Danach drückt man auf Speichern.

11. Jetzt kann man mit der Programmierung beginnen. 12. Dieser Sourcecode zählt binär von 0x00 zu 0x0f und in

In dem Sourcefile kann man jetzt sein eigenes Abhängigkeit davon leuchten die LED’s an P1.0 bis P1.3. Um

Assemblerprogramm speichern. Für diejenigen, die noch das Projekt compilieren und ausführen zu können, müssen keine so guten Kenntnisse in dieser Programmiersprache haben, ist im Anschluss an diese Tabelle der Sourcecode eines Beispielprogramms abgedruckt. sehr viele Grundeinstellungen vorgenommen werden. Alle

Einstellungen werden in den folgenden Fenstern genau beschrieben.

Handbuch MSP430 Education System Seite 60

Softwarebeschreibung

13. Die Quelldatei muss nun in das Projekt eingefügt werden. Dazu macht man einen Rechtsklick auf das

Projekt und wählt im Kontextmenü Add und wählt zwischen Add Files ..

und Add xxx.s43 . Danach ist das Sourcefile in das Projekt eingebunden.

14. Nun müssen noch einige Einstellungen für den Linker und den Debugger vorgenommen werden. Man wählt im

Menüpunkt Project den Unterpunkt Options und dem

Anwender zeigt sich dieses Bild. In dem Punkt General

Options wählt man den Target MSP430F2272.

15. Damit das Projekt später ohne Fehler compilieren kann, muss man ein Häkchen in bei Assembler-only project machen.

16. Nun wählt man den Unterpunkt Debugger. Im Setup

Menü des Debugger Fensters kann man unter dem Punkt

Driver zwischen 2 Debugmodi wählen. Standardmäßig ist hier der Simulator eingetragen. Um Programme auf den

17. Nun kann man den Sourcecode compilieren. Dies kann man auf dreierlei Wegen tun. Durch Drücken auf den Compile

Button, den Make Button oder auf den Debug Buttons. Der

Mikrocontroller laden zu können, wählt man den Mikrocontroller dar und öffnet den Debugger.

Unterpunkt FET Debugger. dritte Weg stellt gleichzeitig den Download auf den

Handbuch MSP430 Education System Seite 61

Softwarebeschreibung

18. Nach dem erfolgreichen Compilieren sollen im 19. Nachdem der Sourcecode erfolgreich auf den

Mikrocontroller geladen wurde, zeigt sich dem Anwender Messages Fenster warnings: 0 und errors: 0 erscheinen.

Um das ganze Projekt abzuspeichern, wählt man in der

Menüleiste File und dort Save Workspace. dieses Fenster. Es zeigt das Debugger-Fenster mit dem

Sourcecode als zentralem Fenster. Des Weiten wurde hier das

Register Fenster aktiviert, um die jeweiligen Registerinhalte darzustellen. Im Build Fenster wird der erfolgreiche

Download der Software auf den Mikrocontroller bestätigt.

Diejenigen, welche den nachfolgenden Sourcecode verwendet haben, sehen nach Drücken des Go Buttons vier Leuchtdioden blinken. Obwohl alle acht Leuchtdioden blinken sollten, kann man nur vier beobachten. 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 62

Softwarebeschreibung

Nachfolgend der zusammenhängende Quelltext des ersten eigenen Programms:

// ****************************************************************************

/// \file continous-mode.s43

///

/// It seems, that this program uses Timer A to display a binary value via LEDs. It counts from

/// 0x00 to 0x0f (using P1.0,P1.1,P1.2 and P1.3). But Timer_A only switches LEDs depending on

/// Timer_A channel values and clock frequency.

///

/// \date 12.10.2005

///

/// \note To debug the program right click the project and choose "Options ...".

/// Select the category "Debugger" and change the driver to "FET Debugger"

// ****************************************************************************

#include <msp430x22x2.h>

;------------------------------------------------------------------------------

ORG 0E000h ; Program Start

;------------------------------------------------------------------------------

StopWDT

SetupTA

SetupP1

StartTA mov.w #WDTPW+WDTHOLD,&WDTCTL mov.w #TASSEL0+TACLR+TAIE,&TACTL

; Stop WDT

; ACLK, Clear TAR,

; interrupt enable mov.w #CCIE,&CCTL0 mov.w #07FFFh,&CCR0

; enable CCR0 compare interrupt

; initialize CCR0 mov.w #CCIE,&CCTL1 mov.w #03FFFh,&CCR1

; enable CCR1 compare interrupt

; initialize CCR1 mov.w #CCIE,&CCTL2 mov.w #01FFFh,&CCR2

; enable CCR2 compare interrupt

; initialize CCR2 bis.b #BIT0+BIT1+BIT2+BIT3,&P1DIR ; P1.0-P1.3 output mov.b #0FFh,&P1OUT ; P1 as output bis.w #MC1,&TACTL ; Start timer_A continous mode

Mainloop bis.w #LPM3,SR nop

; MCLK is not required

; Required only for C-spy Simulator

;------------------------------------------------------------------------------

; CCR0

;------------------------------------------------------------------------------ add.w #07FFFh,&CCR0 ; add CCR0 init value to CCR0 xor.b reti

#BIT1,&P1OUT ; toggle P1.1

;------------------------------------------------------------------------------

TAX_ISR ; Common ISR for CCR1-4 and overflow

;------------------------------------------------------------------------------

Handbuch MSP430 Education System Seite 63

Softwarebeschreibung

TIMOVH add &TAIV,PC reti jmp TIMMOD1 jmp TIMMOD2 reti reti xor.b #BIT0,&P1OUT

; Add offset to Jump table

; Vector 0: No interrupt

; Vector 2: chanel 1

; Vector 4: chanel 2

; Vector 6: chanel 3 not implemented

; Vector 8: chanel 4 not implemented

; Vector 10: TIMOV Flag

TIMMOD1 add.w #03FFFh,&CCR1 xor.b #BIT2,&P1OUT reti

; Vector 2: Module 1

; add CCR1 init value to CCR1

; toggle P1.2

TIMMOD2 add.w #01FFFh,&CCR2 xor.b #BIT3,&P1OUT

; Vector 4: Module 2

; add CCR2 init value to CCR2 reti ; toggle P1.3

;------------------------------------------------------------------------------

; Interrupt Vectors Used MSP430F12x

;------------------------------------------------------------------------------

ORG 0FFFEh

DW RESET

; MSP430 RESET Vector

; Timer_AX Vector ORG 0FFF0h

DW TAX_ISR

ORG 0FFF2h

DW TA_CCR0_ISR

END

; Timer_A0 Vector

Handbuch MSP430 Education System Seite 64

MSP430 JTAG-Adapter

6 MSP430 JTAG-Adapter

Bild 6-1: MSP430 USB-JTAG-Adapter

Zur Programmierung des MSP430 kann ein Adapter für den Parallelport des PCs oder ein USB-Adapter verwendet werden. Letzterer ist eine Erweiterung des eZ430 USB-Sticks von TI.

Bild 6-2: MSP430 Parallel-JTAG-Adapter

Tabelle 20 gibt noch einmal die Belegung des JTAG-Steckverbinders wieder.

Tabelle 20: Pinbelegung der JTAG-Schnittstelle

Handbuch MSP430 Education System Seite 65

MSP430 JTAG-Adapter

JTAG-Pin Signalname Beschreibung und angeschlossene Peripherie

1

2

6

7

8

3

4

5

P1.7_TDO

VCC_IN

P1.6_TDI

VCC_OUT

P1.5_TMS

TCLK

P1.4_TCK

TEST

9 GND

10

11

12

NC

RST

NC

13 NC

14 NC

Test Data Output Leitung der JTAG-Schnittstelle

Versorgung des Targets aus der parallelen Schnittstelle (nicht verwendet in

Hardware v2.0)

Test Data Input Leitung der JTAG-Schnittstelle

Versorgung des JTAG-Steckverbinders vom Target

Test Mode Select Leitung der JTAG-Schnittstelle

Taktsignal aus der Parallelschnittstelle

Test Clock Leitung der JTAG-Schnittstelle

Anschluss des JTAG-Moduls, schaltet den Controller zum Programmieren frei

(SBWTDIO)

Masse

NC

Reset-Leitung zum Controller (SBWTCK)

NC

NC

NC

Die wichtigsten Signale und deren Funktionsweise wurden bereits in Kapitel 4.3 genau beschrieben.

Die Beschreibung dieser Signale kann an dieser Stelle nachgelesen werden. Einzig die TCLK-Leitung wurde nicht weiter beschrieben, da sie in dieser Lösung nicht von Nutzen ist. Über die TCLK-Leitung ist es möglich einen Takt über die Parallelschnittstelle auf den Pin 6 des JTAG-Adapters zu geben und diesen auf eine angeschlossene Platine zu bringen. Damit kann zum Beispiel eine externe

Taktversorgung über die JTAG-Schnittstelle realisiert werden.

Handbuch MSP430 Education System Seite 66

Befehle des MSP430F2272

A. Befehle des MSP430F2272

Die folgende Tabelle 21 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. Alle Register, die mit einem Port in Verbindung stehen sind 8-Bit breit und können nur mit Byte-Befehlen beschrieben und ausgelesen werden. So auch das USART-Modul. Timer_A ist zum Beispiel ein Word-Befehl. Alle Befehle denen ein „*“

voransteht sind emulierte Befehle. Die genaue Beschreibung aller Befehle ist im User Guide [7]

nachzulesen. Diese wird an kleinen Beispielen durchgeführt, um die genau Funktionsweise schnell erkennen zu können. In diesem findet man auch die genaue Registerbeschreibung sowie deren ausführliche Beschreibung.

Tabelle 21: Alle Befehle des MSP430 in Übersicht

Mnemonic Description

* ADC(.B)

ADD(.B) dst Add carry bit (C) to destination src,dst Add source to destination

ADDC(.B) src,dst Add source and carry to destination

AND(.B) src,dst AND source and destination

BIC(.B)

BIS(.B) src,dst src,dst

Clear bits in destination

Set bits in destination

BIT(.B)

* BR

CALL

* CLR(.B) src,dst Test bit in destination dst dst dst

Branch to destination

Call destination

Clear destination

* CLRC

* CLRN

* CLRZ

CMP(.B)

Clear carry bit

Clear negative bit

Clear zero bit scr,dst Compare Source and destination

* DADC(.B) dst Add C decimally to destination

DADD(.B) scr,dst Add source and C decimally to dst

* DEC(.B)

* DECD(.B) dst dst

Decrement destination

Increment destination

* DINT

* EINT

* INC(.B)

* INCD(.B)

* INV(.B)

JC/JHS

JEQ/JZ

JGE

JL

JMP

JN

JNC/JLO dst dst dst label label label label label label label

Disable interrupt

Enable interrupt

Increment destination

Double-Increment destination

Invert destination

Jump if C set/Jump if higher or same

Jump if equal/Jump if Zero-bit is set

Jump to label if graeter or equal

Jump to label if less

Jump to label unconditionally

Jump to label if N set

Jump if C not set/ Jump if lower

Handbuch MSP430 Education System dst + C –> dst src + dst –> dst src + dst + C –> dst src .and. dst –> dst 0

.not.src .and. dst –> dst src .or. dst –> dst src .and. dst dst-> PC

PC+2 –> stack, dst –> PC

0 -> dst

0 -> C

0 -> N

0 -> Z dst – src dst + C –> dst (decimally) src + dst + C –> dst (decimally) dst – 1 –> dst dst – 2 –> dst

0 -> GIE

1 -> GIE dst + 1 -> dst dst + 2 -> dst

.not.dst -> dst

(N .XOR. V) = 0

(N .XOR. V) = 1

PC +2 x offset -> PC

Status Bits

V N Z C

* * * *

* * * *

* * * *

0 * * *

- - - -

- - - -

0 * * *

- - - -

- - - -

- - - -

- - - 0

- 0 - -

- - 0 -

* * * *

* * * *

* * * *

* * * *

* * * *

- - - -

- - - -

* * * *

* * * *

* * * *

- - - -

- - - -

- - - -

- - - -

- - - -

- - - -

- - - -

Seite 67

Mnemonic Description

JNE/JNZ

MOV(.B)

* NOP

* POP(.B)

PUSH(.B) scr

* RET label Jump if not equal/Jump if Z not set src,dst Move source to destination dst

No operation

Pop item from stack to destination

Push source onto stack

Return from subroutine

RETI

* RLA(.B)

* RLC(.B)

RRA(.B)

RRC(.B)

* SBC(.B)

* SETC

* SETN dst dst dst dst dst

Return from interrupt

Rotate left arithmetically

Rotate left through carry

Rotate right arithmetically

Rotate right through carry

Subtract not (carry) from destination

Set carry bit

Set negative bit

* SETZ

SUB(.B)

Set zero bit src,dst Subtract source from destination

SUBC(.B) src,dst Subtract source an not © from dst.

SWPB dst swap bytes

SXT

* TST(.B)

XOR(.B) dst dst

Extend sign

Test destination src,dst Exclusive OR source and destination src –> dst

@Sp -> dst, SP+2 -> SP

SP – 2 -> SP, src -> @SP

@SP → PC, SP + 2 → SP dst + 0FFFFh + C -> dst

1 -> C

1 -> N

1 -> C dst + .not.src + 1 -> dst dst + .not.src + C -> dst src .xor. dst -> ds

Befehle des MSP430F2272

Status Bits

V N Z C

- - - -

- - - -

- - - -

- - - -

- - - -

- - - -

* * * *

* * * *

* * * *

0 * * *

* * * *

* * * *

- - - 1

- 1 - -

- - 1 -

* * * *

* * * *

- - - -

0 * * *

0 * * 1

* * * *

src - Abkürzung für Source, Quelle

dst - Abkürzung für Destination, Ziel

label - Bezeichnung für die eingesetzte Sprungmarke,

Handbuch MSP430 Education System Seite 68

B. Schaltpläne

Schaltpläne

Bild B-1: Schaltplan MSP430 Education System 2.0 Seite 1/2

Handbuch MSP430 Education System Seite 69

Schaltpläne

Bild B-2: Schaltplan MSP430 Education System 2.0 Seite 2/2

Handbuch MSP430 Education System Seite 70

Schaltpläne

Bild B-3: Schaltplan eines MSP430 Parallel-JTAG-Adapters

Handbuch MSP430 Education System Seite 71

C. Bestückungsplan

Bestückungsplan

Bild C-1: Bestückungsplan MSP430 Education System 2.0 top

Handbuch MSP430 Education System Seite 72

D. Mechanische Abmessungen

Mechanische Abmessungen

Bild D-1: Mechanische Abmessungen und Lage der Bohrungen

Handbuch MSP430 Education System Seite 73

Übersicht Beispielprogramme (TI)

E. Übersicht Beispielprogramme (TI)

Nachfolgend eine Übersicht der von Texas Instruments zur Verfügung gestellten Test-Programme, die

frei von der Texas Instruments Homepage [1] bezogen werden können. Die Beispielprogramme

wurden in zwei Kategorien unterteilt und zwar in Assembler- und C-Programmbeispiele. Durch Pflege und Aktualisierung der Programme können Verschiebungen vorkommen, der größte Teil wird aber

über diese Liste abgedeckt. Die entsprechend verwendete Funktionseinheit wird im Namen mitgeführt und kann mit der dazugehörigen Datei getestet werden.

6.1 MSP-FET430P120 Assembler Examples slac143a.zip (81k)

• msp430x22x4_1.asm - Software Toggle P1.0

• msp430x22x4_1_vlo.asm - Software Toggle P1.0, MCLK = VLO/8

• msp430x22x4_lpm3.asm - Basic Clock, LPM3 Using WDT ISR, 32kHz ACLK

• msp430x22x4_lpm3_vlo.asm - Basic Clock, LPM3 Using WDT ISR, VLO ACLK

• msp430x22x4_p1_02.asm - Software Port Interrupt Service on P1.3 from LPM4

• msp430x22x4_oa_01.asm - OA0, Comparator Mode

• msp430x22x4_oa_02.asm - OA0, General-Purpose Mode

• msp430x22x4_oa_03.asm - OA0, Inverting PGA Mode

• msp430x22x4_oa_04.asm - OA0, Non-Inverting PGA Mode

• msp430x22x4_oa_05.asm - OA0, Unity-Gain Buffer Mode

• msp430x22x4_adc10_01.asm - ADC10, Sample A0, AVcc Ref, Set P1.0 if A0 > 0.5*AVcc

• msp430x22x4_adc10_02.asm - ADC10, Sample A0, 1.5V Ref, Set P1.0 if A0 > 0.2V

• msp430x22x4_adc10_03.asm - ADC10, Sample A10 Temp, Set P1.0 if Temp ++ ~2C

• msp430x22x4_adc10_04.asm - ADC10, Sample A0, Signed, Set P1.0 if A0 > 0.5*AVcc

• msp430x22x4_adc10_05.asm - ADC10, Sample A11, Lo_Batt, Set P1.0 if AVcc < 2.3V

• msp430x22x4_adc10_06.asm - ADC10, Output Internal Vref on P2.4 & ADCCLK on P1.0

• msp430x22x4_adc10_07.asm - ADC10, DTC Sample A0 64x, AVcc, Repeat Single, DCO

• msp430x22x4_adc10_08.asm - ADC10, DTC Sample A0 64x, 1.5V, Repeat Single, DCO

• msp430x22x4_adc10_10.asm - ADC10, DTC Sample A2-0, AVcc, Single Sequence, DCO

• msp430x22x4_adc10_13.asm - ADC10, DTC Sample A1 32x, AVcc, TA0 Trig, DCO

• msp430x22x4_adc10_14.asm - ADC10, DTC Sample A1-0 32x, AVcc, Repeat Seq, DCO

• msp430x22x4_adc10_15.asm - ADC10, DTC Sample A10 32x to Flash, Int Ref, DCO

• msp430x22x4_adc10_19.asm - ADC10, DTC Sample A0 64x, AVcc, HF XTAL

• msp430x22x4_adc10_20.asm - ADC10, DTC Sample A0 2-Blk Cont. Mode, AVcc, HF XTAL

• msp430x22x4_flashwrite_01.asm - Flash In-System Programming, Copy SegC to SegD

• msp430x22x4_flashwrite_04.asm - Flash In-System Programming w/ EEI, Copy SegD to A/B/C

• msp430x22x4_clks.asm - Basic Clock, Output Buffered SMCLK, ACLK and MCLK/10

• msp430x22x4_fll_01.asm - Basic Clock, Implement Auto RSEL SW FLL

• msp430x22x4_fll_02.asm - Basic Clock, Implement Cont. SW FLL with Auto RSEL

• msp430x22x4_hfxtal.asm - Basic Clock, MCLK Sourced from HF XTAL

• msp430x22x4_rosc.asm - DCOCLK Biased with External Resistor Rosc

• msp430x22x4_dco_flashcal.asm - DCO Calibration Constants Programmer

• msp430x22x4_ta_01.asm - Timer_A, Toggle P1.0, TACCR0 Cont. Mode ISR, DCO SMCLK

• msp430x22x4_ta_02.asm - Timer_A, Toggle P1.0, TACCR0 Up Mode ISR, DCO SMCLK

• msp430x22x4_ta_03.asm - Timer_A, Toggle P1.0, Overflow ISR, DCO SMCLK

• msp430x22x4_ta_04.asm - Timer_A, Toggle P1.0, Overflow ISR, 32kHz ACLK

• msp430x22x4_ta_05.asm - Timer_A, Toggle P1.0, TACCR0 Up Mode ISR, 32kHz ACLK

• msp430x22x4_ta_06.asm - Timer_A, Toggle P1.0, TACCR1 Cont. Mode ISR, DCO SMCLK

• msp430x22x4_ta_16.asm - Timer_A, PWM TA1-2, Up Mode, DCO SMCLK

Handbuch MSP430 Education System Seite 74

Übersicht Beispielprogramme (TI)

• msp430x22x4_ta_17.asm - Timer_A, PWM TA1-2, Up Mode, 32kHz ACLK

• msp430x22x4_tb_01.asm - Timer_B, Toggle P1.0, TBCCR0 Cont. Mode ISR, DCO SMCLK

• msp430x22x4_tb_04.asm - Timer_B, Toggle P1.0, Overflow ISR, 32kHz ACLK

• msp430x22x4_tb_05.asm - Timer_B, Toggle P1.0, TBCCR0 Up Mode ISR, 32kHz ACLK

• msp430x22x4_tb_06.asm - Timer_B, Toggle P1.0, TBCCR1 Cont. Mode ISR, DCO SMCLK

• msp430x22x4_tb_09.asm - Timer_B, Toggle P4.0-2, Cont. Mode ISR, HF XTAL ACLK

• msp430x22x4_tb_11.asm - Timer_B, PWM TB1-2, Up Mode, 32kHz ACLK

• msp430x22x4_wdt_01.asm - WDT, Toggle P1.0, Interval Overflow ISR, DCO SMCLK

• msp430x22x4_wdt_02.asm - WDT, Toggle P1.0, Interval Overflow ISR, 32kHz ACLK

• msp430x22x4_wdt_04.asm - WDT+ Failsafe Clock, DCO SMCLK

• msp430x22x4_wdt_05.asm - Reset on Invalid Address fetch, Toggle P1.0

• msp430x22x4_wdt_06.asm - WDT+ Failsafe Clock, 32kHz ACLK

• msp430x22x4_uscia0_uart_01_115k.asm - USCI_A0, 115200 UART Echo ISR, DCO SMCLK

• msp430x22x4_uscia0_uart_01_115k_lpm.asm - USCI_A0, 115200 UART Echo ISR, DCO SMCLK, LPM4

• msp430x22x4_uscia0_uart_01_9600.asm - USCI_A0, 9600 UART Echo ISR, DCO SMCLK

• msp430x22x4_uscia0_uart_05_9600.asm - USCI_A0, Ultra-Low Pwr UART 9600 Echo ISR, 32kHz ACLK

• msp430x22x4_uscia0_uart_08_9600.asm - USCI_A0, UART 9600 Full-Duplex Transceiver, 32kHz ACLK

• msp430x22x4_uscia0_spi_09.asm - USCI_A0, SPI 3-Wire Master Incremented Data

• msp430x22x4_uscia0_spi_10.asm - USCI_A0, SPI 3-Wire Slave Data Echo

• msp430x22x4_uscia0_irda_01.asm - USCI_A0 IrDA External Loopback Test, 8MHz SMCLK

• msp430x22x4_uscia0_irda_02.asm - USCI_A0 IrDA Monitor, 8MHz SMCLK

• msp430x22x4_uscib0_i2c_08.asm - USCI_B0 I2C Master TX multiple bytes to MSP430 Slave

• msp430x22x4_uscib0_i2c_09.asm - USCI_B0 I2C Slave RX multiple bytes from MSP430 Master

• msp430x22x4_uscib0_i2c_10.asm - USCI_B0 I2C Master RX multiple bytes from MSP430 Slave

• msp430x22x4_uscib0_i2c_11.asm - USCI_B0 I2C Slave TX multiple bytes to MSP430 Master

6.2 MSP-FET430P120 "C" Examples slac123b.zip (136k)

• msp430x22x4_1.c - Software Toggle P1.0

• msp430x22x4_1_vlo.c - Software Toggle P1.0, MCLK = VLO/8

• msp430x22x4_lpm3.c - Basic Clock, LPM3 Using WDT ISR, 32kHz ACLK

• msp430x22x4_lpm3_vlo.c - Basic Clock, LPM3 Using WDT ISR, VLO ACLK

• sp430x22x4_nmi.c - Configure RST/NMI as NMI

• msp430x22x4_p1_01.c - Software Poll P1.3, Set P1.0 if P1.3 = 1

• msp430x22x4_p1_02.c - Software Port Interrupt Service on P1.3 from LPM4

• msp430x22x4_p1_03.c - Poll P1 With Software with Internal Pull-up

• msp430x22x4_p1_04.c - P1 Interrupt from LPM4 with Internal Pull-up

• msp430x22x4_oa_01.c - OA0, Comparator Mode

• msp430x22x4_oa_02.c - OA0, General-Purpose Mode

• msp430x22x4_oa_03.c - OA0, Inverting PGA Mode

• msp430x22x4_oa_04.c - OA0, Non-Inverting PGA Mode

• msp430x22x4_oa_05.c - OA0, Unity-Gain Buffer Mode

• msp430x22x4_oa_06.c - OA1, Comparator Mode

• msp430x22x4_oa_07.c - OA1, General-Purpose Mode

• msp430x22x4_oa_08.c - OA1, Inverting PGA Mode

• msp430x22x4_oa_09.c - OA1, Non-Inverting PGA Mode

• msp430x22x4_oa_10.c - OA1, Unity-Gain Buffer Mode

• msp430x22x4_adc10_01.c - ADC10, Sample A0, AVcc Ref, Set P1.0 if A0 > 0.5*AVcc

• msp430x22x4_adc10_02.c - ADC10, Sample A0, 1.5V Ref, Set P1.0 if A0 > 0.2V

• msp430x22x4_adc10_03.c - ADC10, Sample A10 Temp, Set P1.0 if Temp ++ ~2C

• msp430x22x4_adc10_04.c - ADC10, Sample A0, Signed, Set P1.0 if A0 > 0.5*AVcc

• msp430x22x4_adc10_05.c - ADC10, Sample A11, Lo_Batt, Set P1.0 if AVcc < 2.3V

• msp430x22x4_adc10_06.c - ADC10, Output Internal Vref on P2.4 & ADCCLK on P1.0

• msp430x22x4_adc10_07.c - ADC10, DTC Sample A0 64x, AVcc, Repeat Single, DCO

• msp430x22x4_adc10_08.c - ADC10, DTC Sample A0 64x, 1.5V, Repeat Single, DCO

• msp430x22x4_adc10_09.c - ADC10, DTC Sample A10 64x, 1.5V, Repeat Single, DCO

Handbuch MSP430 Education System Seite 75

Übersicht Beispielprogramme (TI)

• msp430x22x4_adc10_10.c - ADC10, DTC Sample A2-0, AVcc, Single Sequence, DCO

• msp430x22x4_adc10_11.c - ADC10, Sample A0, 1.5V, TA1 Trig, Set P1.0 if > 0.5V

• msp430x22x4_adc10_12.c - ADC10, Sample A7, 1.5V, TA1 Trig, Ultra-Low Pwr

• msp430x22x4_adc10_13.c - ADC10, DTC Sample A1 32x, AVcc, TA0 Trig, DCO

• msp430x22x4_adc10_14.c - ADC10, DTC Sample A1-0 32x, AVcc, Repeat Seq, DCO

• msp430x22x4_adc10_15.c - ADC10, DTC Sample A10 32x to Flash, Int Ref, DCO

• msp430x22x4_adc10_16.c - ADC10, DTC Sample A0 -> TA1, AVcc, DCO

• msp430x22x4_adc10_17.c - ADC10, DTC Sample A0 -> TA1, AVcc, HF XTAL

• msp430x22x4_adc10_18.c - ADC10, DTC Sample A1/0 -> TA1/2, 2.5V, HF XTAL

• msp430x22x4_adc10_19.c - ADC10, DTC Sample A0 64x, AVcc, HF XTAL

• msp430x22x4_adc10_20.c - ADC10, DTC Sample A0 2-Blk Cont. Mode, AVcc, HF XTAL

• msp430x22x4_adc10_temp.c - ADC10, Sample A10 Temp and Convert to oC and oF

• msp430x22x4_flashwrite_01.c - Flash In-System Programming, Copy SegC to SegD

• msp430x22x4_flashwrite_03.c - Flash In-System Programming w/ EEI, Copy SegC to SegD

• msp430x22x4_flashwrite_04.c - Flash In-System Programming w/ EEI, Copy SegD to A/B/C

• msp430x22x4_clks.c - Basic Clock, Output Buffered SMCLK, ACLK and MCLK/10

• msp430x22x4_fll_01.c - Basic Clock, Implement Auto RSEL SW FLL

• msp430x22x4_fll_02.c - Basic Clock, Implement Cont. SW FLL with Auto RSEL

• msp430x22x4_hfxtal.c - Basic Clock, MCLK Sourced from HF XTAL

• msp430x22x4_hfxtal_nmi.c - Basic Clock, LFXT1/MCLK Sourced from HF XTAL, NMI

• msp430x22x4_rosc.c - DCOCLK Biased with External Resistor Rosc

• msp430x22x4_dco_flashcal.c - DCO Calibration Constants Programmer

• msp430x22x4_ta_01.c - Timer_A, Toggle P1.0, TACCR0 Cont. Mode ISR, DCO SMCLK

• msp430x22x4_ta_02.c - Timer_A, Toggle P1.0, TACCR0 Up Mode ISR, DCO SMCLK

• msp430x22x4_ta_03.c - Timer_A, Toggle P1.0, Overflow ISR, DCO SMCLK

• msp430x22x4_ta_04.c - Timer_A, Toggle P1.0, Overflow ISR, 32kHz ACLK

• msp430x22x4_ta_05.c - Timer_A, Toggle P1.0, TACCR0 Up Mode ISR, 32kHz ACLK

• msp430x22x4_ta_06.c - Timer_A, Toggle P1.0, TACCR1 Cont. Mode ISR, DCO SMCLK

• msp430x22x4_ta_07.c - Timer_A, Toggle P1.0-3, Cont. Mode ISR, DCO SMCLK

• msp430x22x4_ta_08.c - Timer_A, Toggle P1.0-3, Cont. Mode ISR, 32kHz ACLK

• msp430x22x4_ta_09.c - Timer_A, Toggle P1.0-3, Cont. Mode ISR, HF XTAL ACLK

• msp430x22x4_ta_10.c - Timer_A, Toggle P1.1/TA0, Up Mode, DCO SMCLK

• msp430x22x4_ta_11.c - Timer_A, Toggle P1.1/TA0, Up Mode, 32kHz ACLK

• msp430x22x4_ta_12.c - Timer_A, Toggle P1.1/TA0, Up Mode, HF XTAL ACLK

• msp430x22x4_ta_13.c - Timer_A, Toggle P1.1/TA0, Up/Down Mode, DCO SMCLK

• msp430x22x4_ta_14.c - Timer_A, Toggle P1.1/TA0, Up/Down Mode, 32kHz ACLK

• msp430x22x4_ta_15.c - Timer_A, Toggle P1.1/TA0, Up/Down Mode, HF XTAL ACLK

• msp430x22x4_ta_16.c - Timer_A, PWM TA1-2, Up Mode, DCO SMCLK

• msp430x22x4_ta_17.c - Timer_A, PWM TA1-2, Up Mode, 32kHz ACLK

• msp430x22x4_ta_18.c - Timer_A, PWM TA1-2, Up Mode, HF XTAL ACLK

• msp430x22x4_ta_19.c - Timer_A, PWM TA1-2, Up/Down Mode, DCO SMCLK

• msp430x22x4_ta_20.c - Timer_A, PWM TA1-2, Up/Down Mode, 32kHz ACLK

• msp430x22x4_ta_21.c - Timer_A, PWM TA1-2, Up/Down Mode, HF XTAL ACLK

• msp430x22x4_ta_22.c - Timer_A, Ultra-Low Pwr Pulse Accumulator

• msp430x22x4_tb_01.c - Timer_B, Toggle P1.0, TBCCR0 Cont. Mode ISR, DCO SMCLK

• msp430x22x4_tb_02.c - Timer_B, Toggle P1.0, TBCCR0 Up Mode ISR, DCO SMCLK

• msp430x22x4_tb_03.c - Timer_B, Toggle P1.0, Overflow ISR, DCO SMCLK

• msp430x22x4_tb_04.c - Timer_B, Toggle P1.0, Overflow ISR, 32kHz ACLK

• msp430x22x4_tb_05.c - Timer_B, Toggle P1.0, TBCCR0 Up Mode ISR, 32kHz ACLK

• msp430x22x4_tb_06.c - Timer_B, Toggle P1.0, TBCCR1 Cont. Mode ISR, DCO SMCLK

• msp430x22x4_tb_07.c - Timer_B, Toggle P4.0-2, Cont. Mode ISR, DCO SMCLK

• msp430x22x4_tb_08.c - Timer_B, Toggle P4.0-2, Cont. Mode ISR, 32kHz ACLK

• msp430x22x4_tb_09.c - Timer_B, Toggle P4.0-2, Cont. Mode ISR, HF XTAL ACLK

• msp430x22x4_tb_10.c - Timer_B, PWM TB1-2, Up Mode, DCO SMCLK

• msp430x22x4_tb_11.c - Timer_B, PWM TB1-2, Up Mode, 32kHz ACLK

• msp430x22x4_tb_12.c - Timer_B, PWM TB1-2, Up Mode, HF XTAL ACLK

Handbuch MSP430 Education System Seite 76

Übersicht Beispielprogramme (TI)

• msp430x22x4_tb_13.c - Timer_B, PWM TB1-2, Up/Down Mode, DCO SMCLK

• msp430x22x4_tb_14.c - Timer_B, PWM TB1-2, Up/Down Mode, 32kHz ACLK

• msp430x22x4_tb_15.c - Timer_B, PWM TB1-2, Up/Down Mode, HF XTAL ACLK

• msp430x22x4_wdt_01.c - WDT, Toggle P1.0, Interval Overflow ISR, DCO SMCLK

• msp430x22x4_wdt_02.c - WDT, Toggle P1.0, Interval Overflow ISR, 32kHz ACLK

• msp430x22x4_wdt_04.c - WDT+ Failsafe Clock, DCO SMCLK

• msp430x22x4_wdt_05.c - Reset on Invalid Address fetch, Toggle P1.0

• msp430x22x4_wdt_06.c - WDT+ Failsafe Clock, 32kHz ACLK

• msp430x22x4_uscia0_uart_01_115k.c USCI_A0, 115200 UART Echo ISR, DCO SMCLK

• msp430x22x4_uscia0_uart_01_115k_lpm.c USCI_A0, 115200 UART Echo ISR, DCO SMCLK, LPM4

• msp430x22x4_uscia0_uart_01_19200.c USCI_A0, 19200 UART Echo ISR, DCO SMCLK

• msp430x22x4_uscia0_uart_01_19200_2.c USCI_A0, UART 19200 Echo ISR, HF XTAL SMCLK

• msp430x22x4_uscia0_uart_01_9600.c USCI_A0, 9600 UART Echo ISR, DCO SMCLK

• msp430x22x4_uscia0_uart_05_9600.c USCI_A0, Ultra-Low Pwr UART 9600 Echo ISR, 32kHz ACLK

• msp430x22x4_uscia0_uart_06_9600.c USCI_A0, Ultra-Low Pwr UART 9600 String, 32kHz ACLK

• msp430x22x4_uscia0_uart_07_9600.c USCI_A0, Ultra-Low Pwr UART 9600 RX/TX, 32kHz ACLK

• msp430x22x4_uscia0_uart_08_9600.c USCI_A0, UART 9600 Full-Duplex Transceiver, 32kHz ACLK

• msp430x22x4_uscia0_spi_01.c USCI_A0, SPI Interface to HC164 Shift Register

• msp430x22x4_uscia0_spi_02.c USCI_A0, SPI Interface to HC165 Shift Register

• msp430x22x4_uscia0_spi_03.c USCI_A0, SPI Interface to HC165/164 Shift Registers

• msp430x22x4_uscia0_spi_09.c USCI_A0, SPI 3-Wire Master Incremented Data

• msp430x22x4_uscia0_spi_10.c USCI_A0, SPI 3-Wire Slave Data Echo

• msp430x22x4_uscib0_spi_01.c USCI_B0, SPI Interface to TLC549 8-Bit ADC

• msp430x22x4_uscib0_spi_02.c USCI_B0, SPI Interface to TLV1549 10-Bit ADC

• msp430x22x4_uscia0_irda_01.c USCI_A0 IrDA External Loopback Test, 8MHz SMCLK

• msp430x22x4_uscia0_irda_02.c USCI_A0 IrDA Monitor, 8MHz SMCLK

• msp430x22x4_uscia0_irda_03.c USCI_A0 IrDA Physical Layer Comm, 8MHz SMCLK

• msp430x22x4_uscib0_i2c_01.c USCI_B0 I2C Master to TMP100, Set P5.1 if Temp > 28C

• msp430x22x4_uscib0_i2c_02.c USCI_B0 I2C Master Interface to PCF8574, Read/Write

• msp430x22x4_uscib0_i2c_03.c USCI_B0 I2C Master Interface to DAC8571, Write

• msp430x22x4_uscib0_i2c_04.c USCI_B0 I2C Master RX single bytes from MSP430 Slave

• msp430x22x4_uscib0_i2c_05.c USCI_B0 I2C Slave TX single bytes to MSP430 Master

• msp430x22x4_uscib0_i2c_06.c USCI_B0 I2C Master TX single bytes to MSP430 Slave

• msp430x22x4_uscib0_i2c_07.c USCI_B0 I2C Slave RX single bytes from MSP430 Master

• msp430x22x4_uscib0_i2c_08.c USCI_B0 I2C Master TX multiple bytes to MSP430 Slave

• msp430x22x4_uscib0_i2c_09.c USCI_B0 I2C Slave RX multiple bytes from MSP430 Master

• msp430x22x4_uscib0_i2c_10.c USCI_B0 I2C Master RX multiple bytes from MSP430 Slave

• msp430x22x4_uscib0_i2c_11.c USCI_B0 I2C Slave TX multiple bytes to MSP430 Master

Handbuch MSP430 Education System Seite 77

Literatur- und Quellenverzeichnis

F. Literatur- und Quellenverzeichnis

[1] Texas Instruments Homepage www.ti.com

[2] IAR Embedded Workbench für MSP430 http://www.iar.com/

[3] freie GNU Programmierumgebung für MSP430 (toolchain for MSP430) http://mspgcc.sourceforge.net/

[4] Rowley CrossWorks für MSP430 Programmierumgebung http://www.rowley.co.uk/

[5] Imagecraft ICC430 Programmierumgebung http://www.imagecraft.com/software/

[6] msp430f2272, Texas Instruments MSP4302272 Datenblatt

[7] MSP-FET430 Users Guide.pdf, Texas Instruments MSP430x1xx Users Guide

[8] a430.pdf, MSP430 ASSEMBLER, LINKER, AND LIBRARIAN Programming Guide

[9] cs430.pdf, MSP430 C-SPY ROM-Monitor Supplement

[10] cw430.pdf, MSP430 C-SPY User Guide

[11] ew430.pdf, MSP430 WINDOWS WORKBENCH Interface Guide

[12] icc430,pdf, MSP430 C COMPILER Programming Guide

[13] MSP-FET430 Users Guide.pdf, MSP-FET430 FLASH Emulation Tool (FET)

Users Guide

[14] TI Simulator Users Guide.pdf, IAR CSPY w/TI Simulator User.s Guide

[15] Tutor.pdf, IAR CSPY w/TI Simulator User.s Guide

[16] xlink.pdf, IAR Linker and Library Tools, Reference Guide

[17] Datenblatt HD44780U, Hitachi Semiconductor

Handbuch MSP430 Education System Seite 78

advertisement

Was this manual useful for you? Yes No
Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Related manuals

Download PDF

advertisement

Table of contents