4 sierpnia 2010

Rzut okiem na MSP430

Texas Instruments podjął kolejny krok w kierunku promocji i zainteresowania elektroników/programistów/konstruktorów swą rodziną energooszczędnych mikroprocesorów MSP430.
Dokonali tego poprzez wypuszczenie na rynek nowej płytki ewaluacyjnej, którą ochrzczono nazwą LaunchPad.

LaunchPad z przylutowanymi gniazdami na goldpiny.

Zestaw sam w sobie jest bardzo bogaty, bowiem składa się prócz z samej płytki z MSP430G2211IN14 w podstawce, dodatkowo z:
  • dodatkowego mikroprocesora MSP430G2231IN14
  • pary goldpinów jednorzędowych wraz z gniazdami pod nie, 
  • zegarkowego rezonatora kwarcowego (32.768kHz),
  • kabla mini USB,
  • dwóch naklejek z logo LaunchPad.
Mikroprocesor, który znajdował się domyślnie w podstawce został uprzednio zaprogramowany przykładową aplikacją, której zadaniem jest odczyt temperatury z wewnętrznego czujnika, wysłanie jej wartości przez interfejs szeregowy, oraz w zależności od temperatury płynne rozjaśnianie poprzez PWM diod LED umieszczonych na płytce (co zostało zademonstrowane tutaj).

Warto dodać, że po podłączeniu płytki do komputera - tworzony jest wirtualny port szeregowy, który umożliwia komunikację z mikroprocesorem.

Środowisko programistyczne pozostawiono do wyboru pomiędzy Code Composer Studio od TI lub IAR Embedded Workbench KickStart. Oba programy są darmowe, lecz z ograniczeniami na program wynikowy odpowiednio 16kB dla CCS i 4kB dla EWK.
Wybrałem środowisko od IAR, a to ze względu na brak obowiązku rejestracji po to by móc go ściągnąć ;-)
Środowisko to jest przejrzyste i łatwe do opanowania. Wstępnie przy każdym nowym projekcie należy pamiętać o ustaleniu konkretnego modelu procesora, pod który aktualnie się pisze program, oraz wybraniu metody debugowania (symulacja czy na układzie). Sam proces debugowania nie różni się niczym szczególnym od innych środowisk. Jest możliwość zakładania breakpointów, dodawania zmiennych i rejestrów do watch'a (co jest szalenie przydatne), podgląd instrukcji maszynowych itp.

Programowanie MSP430 różni się nieco od innych rodzin mikroprocesorów. A to ze względu na swoją energooszczędną specyfikę, należy zapoznać się z rejestrami za to odpowiadającymi. Wystarczy przejrzeć kilka przykładowych programów, aby zrozumieć w czym rzecz.

Podsumowując: Texas Instruments podjął słuszny krok w kierunku rozpropagowania swej rodziny mikroprocesorów, tworząc istną alternatywę i konkurencję dla słynnego Arduino na AVR od Atmel.
Co prawda, po części rację ma David Jones w jednym z odcinków swojego videobloga, że platforma LaunchPad była by jeszcze większym konkurentem dla Arduino, gdyby była z nią kompatybilna złączem, co umożliwiało by rozbudowę o istniejące już moduły. Lecz z drugiej strony nic nie stoi na przeszkodzie, by stworzyć przejściówkę dla LaunchPad kompatybilną z pinologią Arduino.