www.wikidata.de-de.nina.az
Der MSP430 ist ein 16 Bit RISC Mikrocontroller der Firma Texas Instruments Er wurde Anfang der 1990er Jahre bei der deutschen Niederlassung von Texas Instruments in Freising entwickelt und kam 1993 auf den Markt Der Mikrocontroller ist fur Anwendungen mit niedrigstem Stromverbrauch optimiert Der Prozessorkern ist mittels Compiler in der Programmiersprache C und oder Assembler programmierbar Der Controller ist in verschiedenen Ausfuhrungen verfugbar Texas Instruments erweitert die Palette laufend was auf einen grossen Erfolg dieser Controllerlinie hindeutet Typische Anwendungen sind Gerate mit Langzeitbatterie wie zum Beispiel Warmezahler Heizkostenverteiler Tauchcomputer oder auch Blutdruckmessgerate im medizinischen Bereich Die MCU gilt in der Elektronik als Quasi Standard wird aber zunehmend von Cortex M Derivaten verdrangt MSP430 aufgelotet auf einer LeiterplatteNahaufnahme vom Halbleiterchip des MSP430Inhaltsverzeichnis 1 Speicheraufteilung 2 Interruptbehandlung 3 Prozessor 3 1 Architektur 4 Interne Peripherie Module 4 1 Takterzeugung 4 2 SVS 4 3 Hardwaremultiplizierer 4 4 DMA 4 5 Ports 4 6 Watchdog 4 7 Timer 4 8 Serielle Schnittstellen 4 9 Komparatoren 4 10 ADCs 4 11 CRC16 4 12 DACs 4 13 Operationsverstarker 4 14 LCD Treiber 4 15 Echtzeituhr 4 16 USB 4 17 Weitere Peripheriemodule 5 Programmierung 5 1 Liste der verfugbaren C Compiler unvollstandige Auswahl 5 2 Liste der FLASH Emulation Tools FET 6 Ubertaktung 7 MSP432 8 Literatur 9 Einzelnachweise 10 WeblinksSpeicheraufteilung BearbeitenDer MSP430 besitzt eine klassische Von Neumann Architektur Die Grosse des adressierbaren Speichers ist bei den meisten Derivaten auf 64 kByte limitiert Speichergrossen liegen bei bis zu 256 kByte FLASH und bis zu 16 kByte RAM aktuell November 2008 auch im gleichen Baustein Bei allen Derivaten sind ca 2 kByte der unteren adressierbaren 64 kByte fur interne Funktionen wie zum Beispiel einen Boot Loader reserviert so dass mit den zwei grossten 16 Bit Speicherausbauten 60 kByte FLASH mit 2 kByte RAM bzw 48 kByte FLASH mit 10 kByte RAM bereitstehen Seit November 2006 bietet TI auch eine Familie mit einer so genannten MSP430X CPU an Diese basiert auf einem Speichermodell welches bis zu 1 MByte Speicher adressieren kann Der Adressbus hat hierbei 20 Bit alle Register ausser dem Statusregister R2 SR sind deshalb nicht mehr 16 Bit breit sondern 20 Bit So sind die in den normalen CPUs verfugbaren Befehle weiterhin ohne Anderung verfugbar Die interne Abarbeitung musste jedoch an die grossere Adressbreite angepasst werden zum Beispiel muss beim CALL Befehl ein Wort mehr auf den Stack geschrieben werden da ja 4 weitere Bit als Rucksprungadresse abgelegt werden mussen Erhaltlich sind Bausteine mit bis zu 120 kByte Flash 4 kByte RAM bzw 116 kByte Flash 8 kByte RAM alle mit LCD Treibern In den untersten 16 Byte Adresse 0000 h bis 000F h sind spezielle Register SFR Special Function Register fur die Interrupt und Modul Steuerung eingeblendet Die Register der 8 Bit Peripherie belegen die nachsten 240 Byte Adresse 0010 h bis 00FF h Bis hierher ist ein Speicherzugriff byteweise notwendig Daruber sind die nachsten 255 Byte Adresse 0100 h bis 01FF h fur die 16 Bit Peripherie reserviert Ab hier wird wortweise auf den Speicher zugegriffen Ab dem 513 Byte Adresse 0200 h bis 09FF h liegt das RAM Bei den grosseren RAM Ausbauten grosser 2 kByte liegt dieses tatsachlich im Speicher weiter oben Adresse 1100 h bis 38FF h wird aber zum Teil in den unteren Adressbereich gespiegelt Dazwischen liegen Boot und Informations Speicher Adresse 0C00 h bis 0FFF h resp 1000 h bis 10FF h Der Informations Speicher ist wie der Code Speicher ein Flash Speicher dessen Besonderheit die Aufteilung in zwei 128 Byte grosse Segmente darstellt die als Zwischenspeicher benutzt werden konnen fur Daten die immer mal wieder zu andern sind Der restliche FLASH Speicher fur den Programmcode und Konstanten hat Segmente von 512 Byte Er liegt grundsatzlich im Speicherbereich 1100 h bis FFFF h wird aber je nach Speicherausbau mehr RAM oder kleineres FLASH erst ab Adresse FC00 h fur 1 kByte FLASH liegen Ausserdem sind die obersten 32 Byte Adresse FFE0 h bis FFFF h des Speichers fur die Interrupt Vektoren vorbehalten die jedoch nur bei Bedarf benutzt werden Werden keine Interrupts benutzt kann auch der Speicher fur deren Vektoren als Programmspeicher genutzt werden Neuerdings werden auch FRAM basierende MSP430 angeboten 1 Dieser Speichertyp lasst sich im Vergleich zu Flash schneller und mit viel weniger Energie beschreiben Ein weiterer Vorteil dieser Bausteine ist dass es keine starre Grenze zwischen Code und Daten Flash und RRAM gibt sondern diese nach Bedarf gewahlt werden kann Der verwendete Fertigungsprozess der FRAM Bausteine wurde gemeinsam von Ramtron und TI entwickelt Interruptbehandlung BearbeitenDer MSP430 kennt grundsatzlich 16 Interruptquellen die nach ihrer Lage in den Interrupt Vektoren priorisiert sind Nicht in jedem Baustein sind alle Quellen belegt dies ist vom Ausbau der internen Peripherie abhangig Mehrere Interrupts konnen den gleichen Vektor belegen Ist das der Fall muss von der Software uber entsprechende Bits entschieden werden welcher Interrupt aktuell vorliegt Ausserdem haben verschiedene Interrupts eigene Vektorregister uber die es jeweils wieder bis zu 10 unterschiedliche Quellen erweiterbar bis zu 128 geben kann Als Beispiel seien hier die Timer Interrupts genannt Der MSP430 beherrscht mehrere Power Down Modi in denen die Befehlsverarbeitung gestoppt oder der Takt abgeschaltet wird Im niedrigsten Modus liegt der Stromverbrauch je nach Typ bei 0 4 µA Will man eine Echtzeituhr realisieren werden ca 2 µA benotigt Die CPU kann durch verschiedene Interrupts wieder aufgeweckt werden Prozessor Bearbeiten nbsp MSP430 FG438 auf der Platine eines BlutzuckermessgeratesDer Befehlssatz enthalt nur 27 Grundinstruktionen und 24 emulierte Instruktionen die aus den Grundinstruktionen zusammengesetzt sind Der Begriff RISC ist dafur angemessen Die Abarbeitung eines Befehl dauert 1 bis 6 Takte Bei Taktfrequenzen von bis zu 25 MHz werden so Schrittzeiten bis herab zu 40 ns erreicht Die maximale Taktfrequenz ist vom Typ und der Speisespannung abhangig etwa MSP430x1xx 4 15 MHz bei 1 8 V 8 MHz bei 3 6 V linear MSP430x2xx 4 15 MHz bei 1 8 V 16 MHz bei 3 3 3 6 V nichtlinear MSP430x5xx 8 MHz bei 1 8 V 25 MHz bei 2 4 3 6 V gestuft MSP430 Mikrocontroller konnen einen MSP430 Kern oder einen MSP430X Kern als Prozessor enthalten Letzterer verarbeitet zusatzliche Befehle um die auf 20 Bit verbreiterten Register zu bedienen und mehr als 64 KiByte die Grenze von 16 bit zu adressieren und ist zum MSP430 Kern ohne X kompatibel Aus Sicht des MSP430X Befehlssatzes ist die erweiterte Bitbreite auf 32 Bits limitiert die 20 Bit Registerbreite wurde als derzeitiger Kompromiss zwischen Adressierumfang 1 MiByte und Komplexitat sowie Energieverbrauch gewahlt Genugen 20 Bit fur bestimmte arithmetische Operationen kann man diese erweiterten Register auch allgemein verwenden zurzeit nur in Assembler moglich Architektur Bearbeiten Der MSP430 hat 16 Register Register 0 ist der Program Counter PC Register 1 der Stack Pointer SP Stapelzeiger und Register 2 das Prozessor Status Register PS Register 3 Constant Generator CG ist ein Pseudo Register das die haufig benotigten Konstanten 1 0 1 und 2 liefert Diese vier Register haben spezielle Funktionen sind aber wie alle anderen zwolf Register auch frei benutzbar Die Moglichkeit den Program Counter oder den Stack Pointer als freie Register zu benutzen wurde bereits bei der PDP 11 verwendet Die Register sind nicht adressierbar sie sind nicht als Kopie im Adressraum des MSP430 verfugbar Mogliche Adressierungsarten sind Registeradressierung Rn indizierte Adressierung X Rn symbolische Adressierung absolute Adressierung indirekte Adressierung Rn indirekte Adressierung mit Autoinkrement Rn und direkte Adressierung fur Konstanten Diese Adressierungsarten stehen fur den Quelloperanden zur Verfugung Bei Instruktionen mit zwei Operanden stehen fur den Zieloperanden nur Register Adressierung symbolische Adressierung absolute Adressierung und indizierte Adressierung bereit Interne Peripherie Module BearbeitenDie Register der internen Peripherie Takt Erzeugung SVS Uberwachung der Versorgungsspannung Hardwaremultiplizierer DMA Ports Watchdog Timer serielle Schnittstellen Komparatoren ADCs und DACs sind wie oben erwahnt im Adressbereich eingebunden Diese Peripherie ist je nach Modell mit auf dem Chip integriert Es wird zwischen 8 Bit Peripherie und 16 Bit Peripherie unterschieden Takterzeugung Bearbeiten Bei der Takterzeugung setzt TI auf drei unterschiedliche Quellen die je nach Bedarf sehr geringen Stromverbrauch 32 768 kHz in Form eines Uhrenquarz sehr schnelles Aufwachen nach einem Interrupt interner RC Oszillator 6 µs Zeit bis zum Erreichen der nominellen RC Taktfrequenz oder hohe Frequenz bis zu 16 MHz ermoglichen Der MSP430 eignet sich sehr gut zum Ubertakten Der Niederfrequenzoszillator kann mit einem 100 kHz Quarz rund 200 Ubertaktung betrieben werden und der HF Oszillator kann um 100 ubertaktet werden zumindest bei Raumtemperatur und bei der maximal zulassigen Betriebsspannung SVS Bearbeiten Der Supply Voltage Supervisor auch Brown Out Reset oder Brown Out Detector genannt uberwacht die Versorgungsspannung und ermoglicht auch bei einem kurzfristigen Unterschreiten der Mindestspannung ein geregeltes neues Hochfahren Reset des Systems Wird die Mindestspannung unterschritten konnen unvorhersehbare Fehler im System auftreten die zu nicht gewollten Programmausfuhrungen oder Hangen bleiben fuhren konnen Mit dem SVS werden solche Fehler vermieden und ein geregelter Neustart auch ohne Abschaltung der Versorgungsspannung vollzogen Hardwaremultiplizierer Bearbeiten Der Hardwaremultiplizierer beherrscht die Multiplikation von vorzeichenlosen und vorzeichenbehafteten 8 Bit und 16 Bit Zahlen wobei als Ergebnis eine bis zu 32 Bit grosse Zahl entsteht Das jungste Kind der MSP430 Familie beherrscht sogar 32 Bit grosse Zahlen und ein 64 Bit grosses Resultat Er beherrscht ebenso vorzeichenloses und vorzeichenbehaftetes Multiplizieren und Zusammenzahlen MAC eine Domane der DSPs Der erste Operand dieser vier Operationen ist jeweils in einem speziellen Register abzulegen der zweite Operand immer im gleichen Register Das Ergebnis steht immer in den beiden gleichen Ausgangsregistern Es liegt automatisch drei Takte nach dem Ablegen des zweiten Operanden zur Verfugung DMA Bearbeiten Mit Hilfe des DMA Controllers konnen ohne Zutun der CPU sehr schnell Daten von einem Speicherbereich in einen anderen transferiert werden In dieser Zeit kann die CPU nicht auf den Bus zugreifen weshalb sie angehalten werden muss Der DMA Transfer ist aber auch in den Low Power Modi zugelassen wobei der CPU Takt hochgefahren werden muss Ein weiterer Vorteil des DMA Moduls besteht darin dass es im Tandem Prinzip verwendet werden kann das heisst dass die Taktzyklen alternierend zwischen CPU und DMA aufgeteilt werden Das eignet sich beispielsweise hervorragend um ein Videobild aufzubauen ohne dass dazu die CPU verwendet werden muss Durch die Moglichkeit der Hintereinanderschaltung der DMA Einheiten meistens 3 kann so aber auch ein digitaler Filter realisiert werden welcher mit Hilfe der AD und DA Wandler beispielsweise fur Audioapplikationen verwendet werden kann Eine weitere sehr hilfreiche Funktion mit dem DMA ist Speicherinhalte zu verschieben das erspart erheblich Zeit und Programmieraufwand Es ist beispielsweise bei der MSP430F16XX Serie sehr interessant da diese mehr Speicher RAM besitzen Auch das Kopieren vom RAM zum FLASH kann per DMA einfacher gestaltet werden als mit Software Ports Bearbeiten Die Ports sind zum Teil interrupt fahig was bedeutet dass der MSP430 uber sie aus einem Low Power Mode aufgeweckt werden kann In solch einem Zustand verbraucht der MSP430 die wenigste Energie ca 0 4 µA Die Ports selbst konnen nur sehr wenig Strom treiben und aufnehmen ca 6 mA wobei der Gesamtstrom in den Baustein je nach Typ bei weitem kein Vielfaches der Pinanzahl dieses Wertes ist Die Bezeichnungen der Ports verlaufen so P1 0 P2 5 es gibt also z B zwei Register beim MSP430G2xxxx P1 P2 die dann jeweils einzelne Ausgange haben P1 0 Die einzelnen Ausgange konnen sowohl als Eingang als auch als Ausgang verwendet werden So lassen sich alle Ausgange Eingange auf einmal uber den Port definieren oder man definiert jeden Ausgang Eingang einzeln Watchdog Bearbeiten Der Watchdog Timer wird eingesetzt wenn das System nach einem Deadlock ohne Zutun des Nutzers wieder bedienbar sein soll Dazu zahlt der Watchdog einen Timer herauf der von der Applikation immer wieder auf Null gesetzt werden muss Ist die Applikation wegen eines Deadlocks dazu nicht in der Lage im Allgemeinen sagt man sie hat sich verlaufen wird durch den Watchdog ein Reset ausgelost Das System fangt von vorne an und ist wieder bedienbar auch wenn es dem Benutzer nicht unbedingt gefallt wenn er von vorne anfangen muss So kann sichergestellt werden dass auch nach einer intensiven Storung von aussen zum Beispiel ESD Entladung uber den Prozessor das Programm wieder in einen definierten Betriebszustand zuruckkehrt Auch sehr selten auftretende bei Tests nicht gefundene Programmablauffehler konnen so abgefangen werden Die Funktion des Watchdog Timers kann jedoch auch abgeschaltet werden wenn die oben genannte Funktionalitat nicht gewunscht wird bzw storend ist Man kann den Watchdog Timer auch als zusatzlichen Zahler benutzen um damit zum Beispiel eine Real Time Clock zu realisieren Das geschieht indem man den Zahler so konfiguriert dass er jede Sekunde einen Interrupt auslost und zahlt dann in dem Interrupt die Sekunden hoch Nachteil dieser Softwareuhr gegenuber einem externen Uhrenschaltkreis Wenn der MSP430 komplett ausgeschaltet wird also keine Moglichkeit mehr hat den Interrupt auszulosen kann naturlicherweise die Zeit nicht mitgezahlt werden und muss dann beim nachsten Starten neu initialisiert werden Timer Bearbeiten Die Timer haben grundsatzlich 16 Bit Sie konnen durch unterschiedliche Takte angesprochen werden auch von externen Ereignissen Damit sind von sehr kurzen Timerzeiten im Bereich einiger hundert Nanosekunden schneller 16 MHz Takt bis zu beliebig langen Timerzeiten viele Monate und Jahre durch sehr langsame externe Signale moglich Selbst durch die zweite eigene Zeitbasis mit 32 kHz sind noch direkte Timerzeiten von bis zu zwei Sekunden bei Benutzung eines zusatzlichen Registers bis zu 1 5 Tagen realisierbar Auch Timer konnen die CPU aus einem Low Power Modus aufwecken Damit sie aber laufen sie brauchen einen Takt kann die Stromsparfunktionalitat nicht so hoch getrieben werden wie bei den Ports wo praktisch keine interne Peripherie zur Unterstutzung notwendig ist Serielle Schnittstellen Bearbeiten Bei den seriellen Schnittstellen sind derzeit als Protokoll UART SPI USB nur slave und I C in Hardware realisiert Weitere wie z B LIN sollen folgen CAN wird auf absehbare Zeit nicht durch den MSP430 unterstutzt werden da der Fertigungsprozess mit dem die Controller hergestellt werden nicht fur den Temperaturbereich im Automotive Sektor geeignet ist Die Baudrate konnte theoretisch auf bis zu 16 MBit s gesetzt werden Asynchrone Kommunikation lauft sicher bis 115 2 kBit s SPI arbeitet um 1 MBit s und I C in den unterstutzten Modi bis 400 kBit s Komparatoren Bearbeiten Mit den Komparatoren konnen analoge Spannungen gegen unterschiedliche Referenzspannungen verglichen werden Die Referenzspannung kann intern 0 5 VCC 0 25 VCC oder rund 0 55 V oder extern erzeugt werden Mit dem Ergebnis konnen Interrupts ausgelost oder Timer getriggert werden Mit dem getriggerten Timer sind so PWM Signale erzeugbar die von einem Eingangssignal abhangig pulsweiten moduliert sind Man kann auch den Vergleich direkt auf einen Port CAOUT schalten Wenn die 2 Eingangsports des Comparators mit displaystyle nbsp und displaystyle nbsp bezeichnet sind dann ist CAOUT High wenn die Spannung grosser ist die an displaystyle nbsp anliegt Welcher der beiden Ports displaystyle nbsp und welcher displaystyle nbsp ist kann mittels der Bits CARSEL und CAEX im Comparator Control Register eingestellt werden ADCs Bearbeiten Die AD Wandler haben eine Auflosung von 10 12 14 oder 16 Bit wobei je nach Typ des MSP430 als Wandlungsverfahren das SAR Sukzessive Approximation Slope Rampenverfahren oder Sigma Delta Verfahren eingesetzt wird Wie bei den Komparatoren benotigt man fur AD Wandler ebenfalls eine Referenzspannung die intern oder extern erzeugt werden kann Die Abtastrate kann nominell bis 5 MHz betragen womit Signale bis theoretisch 2 5 MHz abtastbar waren Die mit derart hoher Abtastrate gewonnenen Daten konnten aber kaum von der CPU verarbeitet werden da dieser pro Abtastwert nur 3 2 Taktzyklen 16 MHz Takt zur Verfugung stunden CRC16 Bearbeiten Das CRC16 Modul erzeugt einen CRC Code beruhend auf einer Folge von Datenwerten und kann fur die Prufung und Korrektur der Daten verwendet werden Der CRC16 Modul Prufcode beruht auf dem CRC CCITT Standard Ideal kann dieses Modul fur Datenubertragung via TCP IP oder mit angekoppelten W LAN Modulen verwendet werden Es eignet sich aber auch als Prufcodegenerator beim Schreiben auf magnetische Datentrager wie Disketten oder Festplatten DACs Bearbeiten Die DACs haben eine Auflosung von 8 oder 12 Bit Das analoge Ausgangssignal kann also in 256 oder 4096 Stufen variiert werden Als Referenzspannung konnen hier wie bei den Komparatoren und ADCs die internen oder externen Referenzen benutzt werden Als Ausgabeformat konnen die binaren Daten direkt oder als Zweierkomplement ausgegeben werden Der Ausgangsverstarker kann automatisch kalibriert werden damit die Ausgangsspannung korrekt den digitalen Werten folgt Der DAC selbst kann mit bis zu 550 kHz getaktet werden was entsprechend eine theoretische Ausgangsfrequenz bis zu 275 kHz ermoglicht Operationsverstarker Bearbeiten Bausteine mit integrierten Operationsverstarkern erlauben es analoge Spannungen zu verstarken was der Nutzung in Messsystemen zugutekommt Die Operationsverstarker sind wie der Rest des Bausteins stromsparend und werden aus einer einzigen Spannungsquelle versorgt single supply low current Die Ausgangsspannung kann bis zur Versorgungsspannung reichen rail to rail Die Einschwingzeit settling time kann bei hoherem Stromverbrauch kurzer programmiert werden Fur eine programmierbare Verstarkung sind unterschiedliche Widerstande fur die Ruckkopplung eingebaut LCD Treiber Bearbeiten Der in den Bausteinen der 4xx Serie und der 6xx Serie eingebaute LCD Treiber kann statische und gemultiplexte LCDs ansteuern Dabei sind bis zu 40 Segmente und 4 gemeinsame Anschlusse backplanes moglich Dafur reicht der Displayspeicher mit 20 Byte aus der im Adressbereich 0091h bis 00A4h eingeblendet ist Uber externe Widerstande kann der Kontrast eingestellt werden Echtzeituhr Bearbeiten Die Echtzeituhr RTC englisch Real Time Clock kann als Mehrzweck 32 Bit Zahler counter mode oder als Uhr mit Kalenderfunktion verwendet werden calendar mode Im Zahlmodus umfasst das RTC Modul zwei unabhangige 8 Bit Timer die auch als ein 16 Bit Timer zusammenschaltet werden konnen Beide Zahler sind dann Zeitgeber und konnen durch die Software gelesen und beschrieben werden Die Kalenderfunktion beachtet Monate mit weniger als 31 Tagen und sogar Schaltjahre Das RTC Modul hat Alarm Register zur Weckfunktion und unterstutzt Hardware Interrupts Im Gegensatz zu den Timern uberlebt die Echtzeituhr Resets USB Bearbeiten MSP430F55XX mit integriertem Universal Serial Bus USB sind verfugbar Full Speed Universal Serial Bus USB Device mit integrierter physikalischer Ubertragungseinheit und SIE Integriertes 3 3 V 1 8 V USB Stromversorgungs System geeignet fur self powered und bus powered USB Gerate ohne zusatzliche Spannungsregler Integrierter Frequenzgenerator PLL fur USB Quarz erforderlich Acht Eingangs und acht Ausgangs USB Endpunkte nicht isochroner Transfermodus verfugbar USB Bootloader lauft mit einer ganzen Reihe verschiedener Quarze an nicht nur ein bestimmter Quarz Mit der USB Schnittstelle lasst sich beispielsweise ein HID ein serielles USB Gerat oder ein USB Stick realisieren nicht aber ansteuern Sein zugeordneter Dual Port RAM 2 KByte kann bei Nichtbenutzung des USB Moduls als zusatzlicher Arbeitsspeicher dem internen ohnehin etwas knappen Arbeitsspeicher zugefugt werden Isochrone Datenubertragung ist nicht vorgesehen daher kann die Video und Audio Gerateklasse nicht implementiert werden Weitere Peripheriemodule Bearbeiten Seit dem Shrinking Ende 2008 gibt es einige Typen der Reihe MSP430X5xx mit integriertem RF Transceiver LDO Spannungsregler und einer AES Cryptoengine Programmierung BearbeitenAls Programmiersprache bietet sich C an Die Architektur ist dafur ausgelegt Zeiger Arrays und Stapelspeicher lassen sich leicht implementieren Obwohl der MSP430 einen RISC Befehlssatz hat lasst er es zum Teil zu dass ein C Ausdruck dank der unterschiedlichen Adressierungsmodi in eine einzelne Maschinenanweisung ubersetzt wird Unterschiedliche kommerzielle und freie C Compiler stehen zur Verfugung Liste der verfugbaren C Compiler unvollstandige Auswahl Bearbeiten Name Hersteller Erhaltliche VersionenMSP CCE430 TI Freeware Version vorhanden Bis zu 16 kB Code sind in der neuen Version 3 erlaubt MSP430 GCC TI GNU Compiler Collection fur MSP430 Vollstandiger Open Source Compiler und Debug StackIAR EW430 Kickstart TI Freeware de facto von IAR mit bis zu 4 kB CodeAQ430 Quadravox Demo Version mit Codebegrenzung auf 4 kBCrossworks Rowley Associates 30 Tage DemoHi Tech HI TECH Software Zeitlich begrenzte Demo Version erhaltlichHFW 430 HiTex Vollversion die aber MSP EVK330 voraussetzt EW430 IAR 30 Tage Demo Version mit 4 kB Code LimitICC430 Imagecraft Memento vom 12 Oktober 2007 im Internet Archive 30 Tage DemoMCC 430 MicroCOSM Memento vom 12 Januar 2010 im Internet Archive Demo mit Codebegrenzung auf 4 kBMSPGCC Peter A Bigot et al Freie GNU Variante eingestellt abgelost durch den GCC von Texas Instruments LLVM MSP430 Verschiedene Entwickler Memento vom 25 Marz 2012 im Internet Archive Backend fur die LLVMEs gibt auch Anwender die den MSP430 in Assembler programmieren Da die C Compiler in der Regel hoch optimierend eingestellt werden konnen und es eigentlich per se auch schon sind ist das wirklich nur fur zeitkritische Applikationsteile notwendig Dazu konnen die meisten C Compilern Assembler in den C Code einbauen Ein etwas ausgefallenes aber sehr effizientes Programmier und Testsystem ist FORTH Neben einigen OpenSource FORTH Projekten gibt es ein sehr gutes professionelles FORTH Entwicklungssystem Swift X Forth verwendet die umgekehrte polnische Notation UPN Die Programmierung des Bausteins und das Debugging sind uber eine JTAG Schnittstelle zu realisieren Dazu bietet TI eine als FLASH Emulation Tool FET bezeichnete Hardware an die uber den Parallelport oder die USB Schnittstelle des PC auf den JTAG Port zugreift In den neuesten Varianten MSP430F20xx ist der JTAG Port der eigentlich uber mindestens vier Signalleitungen und Reset verfugt durch ein Interface das TI Spy Bi Wire nennt auf 2 Signalleitungen reduziert worden so dass nur noch vier Anschlusse auf einem Zielsystem zum Debugging notwendig sind Zwei fur Spy Bi Wire Masse und Versorgungsspannung Das moderne FET Tool wird als USB Stick geliefert Wenn das Zielsystem hinreichend wenig Speisestrom benotigt genugt dafur USB und eine externe Spannungsversorgung ist nicht notwendig Das MSP430 LaunchPad MSP EXP430G2 eigentlich ein Eval Board lasst sich ebenfalls ganz offiziell zur Programmierung per Spy Bi Wire verwenden Die benotigende Anschlusse finden sich auf der Anschlussleiste J3 und der nicht bestuckten Anschlussleiste J4 Liste der FLASH Emulation Tools FET Bearbeiten Name Hersteller Schnittstelle ProtokollMSP FET430PIF TI Parallel Port JTAGMSP FET430UIF TI USB Schnittstelle JTAG Spy Bi WireMSP 430 LaunchPad TI USB Schnittstelle Spy Bi WireeZ430 F2013 TI USB Schnittstelle Spy Bi WireeZ430 RF2500 TI USB Schnittstelle Spy Bi WireFETP SoftBaugh Memento vom 14 Mai 2015 im Internet Archive Parallel Port JTAGUSBP SoftBaugh Memento vom 14 Mai 2015 im Internet Archive USB Schnittstelle JTAG Spy Bi WireMSP430 JTAG Olimex Memento vom 1 Juli 2012 im Internet Archive Parallel Port JTAGMSP430 JTAG ISO Olimex USB Schnittstelle JTAG Spy Bi WireMSP430 JTAG Tiny Olimex USB Schnittstelle JTAG Spy Bi WireMSP430 JTAG RF Olimex USB Schnittstelle JTAG Spy Bi WireFlashPro CC Elprotronic USB Schnittstelle JTAG Spy Bi Wire BSLVisSim ECD Visual Solutions USB Schnittstelle JTAG Spy Bi WireLA 3713 Lauterbach USB Schnittstelle Ethernet JTAG Spy bi WireDes Weiteren enthalt jeder programmierbare MSP 430 einen Bootstraploader der uber eine UART Schnittstelle das Programmieren der Bausteine erlaubt Details sind in einer TI Application Note 2 aufgefuhrt Nicht jeder MSP430 ist mit einem Bootstraploader ausgestattet MSP430F20xy x 0 1 y 1 2 3 sh SLAU319AE Seite 4 diese konnen aber mit dem MSP430 Flasher programmiert werden SLAU654 Mit Hilfe des Boot Strap Loaders BSL kann aber auch uber eine serielle Schnittstelle das Programm neu geladen werden Das von HiTex angebotene Tool DProbe430 mit seinem Aufrustmodul DBox16 ist der bislang einzige Emulator fur den MSP430 Es unterstutzt Realtime Debugging in Assembler von TI und Hochsprache mit IAR C Compiler mit Anzeige samtlicher Prozessor Ressourcen Es werden nur wenige Derivate der MSP430 Reihe unterstutzt Ubertaktung BearbeitenEin unfreiwilliges Eingestandnis von TI zur Ubertaktung zeigt das Entwicklungstool eZ430 Es beinhaltet als Hostrechner fur die USB Bridge einen MSP430F169 Laut Datenblatt hat dieser eine maximale Taktfrequenz von 8 MHz Der Quarz fur diesen Baustein ist aber ein 12 MHz Typ 3 Somit gibt TI hier ein eigenes Produkt mit einer Ubertaktung von 50 in den Markt MSP432 BearbeitenAm 24 Marz 2015 stellte Texas Instruments eine neue Familie mit einer 32 bit CPU des Typs Arm Cortex M4 vor Die meisten Peripherieelemente stellen sich selbst wenn sie technisch neu entwickelt oder verbessert wurden aus Entwicklersicht wie beim MSP430 dar so dass eine Codeportierung vom MSP430 zum MSP432 vergleichsweise einfach umgesetzt werden kann 4 Literatur BearbeitenLutz Bierl Das grosse MSP430 Praxisbuch Franzis Munchen 2004 ISBN 978 3 7723 4299 8 John H Davies MSP430 Microcontroller Basics 1 Auflage Newnes 2008 ISBN 978 0 7506 8276 3 Marian Walter Stefan Tappertzhofen Das MSP430 Mikrokontroller Buch 1 Auflage Elektor 2011 ISBN 978 3 89576 236 9 Matthias Sturm Mikrocontrollertechnik 2 Auflage Carl Hanser Verlag Munchen 2011 ISBN 978 3 446 42231 5 Einzelnachweise Bearbeiten Uberblick uber die FRAM Technologie MSP430 Webseite Application Note Features of the MSP430 Bootstrap Loader slau176d Seite 9 PDF 283 kB Frank Riemenschneider TIs MSP432 Mikrocontroller mit ARM Cortex M4 Artikel bei Elektroniknet de vom 24 Marz 2015 Weblinks Bearbeiten nbsp Commons MSP430 Sammlung von Bildern Videos und Audiodateien MSP430 Homepage GCC fur MSP430 Installationsanleitung der MSPGCC Toolchain Eclipse msp430 gdbproxy Tutorial Betriebssystem Linux Debian Ubuntu Zahlreiche Tutorials und Beispielprojekte u a G LCD USART I2C CAN Technical Documents MSP430 Memory Programming User s Guide Mikrocontroller net Artikel zum MSP430 Abgerufen von https de wikipedia org w index php title TI MSP430 amp oldid 221105625