Az előző néhány napban új projectbe kezdtem, és ezzel párhuzamosan sajnos elég sok dolog nincs megírva, de igyekszem, hogy használható tudás kerüljön a blogba.
Évekkel korábban, mikor promóciós céllal 4,30$ volt a TI MSP430 Launchpad fejlesztői panelje(és ekkor még postaköltség sem volt, illetve a cég fizette a vámot).
Nagyon kedvező ajánlat volt, így beleugrottam egy ilyen board vásárlásába.
Több érdekes eszköz lett megvalósítva vele, melyekről majd később itt részletesebben is szeretnék írni.
Rövid bevezetés:
A kit magából a boardból áll, egy USB kábelből, két mikrokontrollerből, és egy 32 kHz-es kvarcból, ami felforrasztható igény szerint. Fejleszői környezete a Code Composer Studio, amiből én anno még a 4.x.x változatokat használtam. Ez fizetős alkalmazás, ám a megkötés a IDE-ben csak annyi, hogy max 32 KB-os binárist fordíthatunk vele. Ahogy láttam, már sokkal korszerűbb verziók is rendelkezésre állnak, de én ehhez szoktam, így ezt használom.
Hatalmas előnye a régi verziónak, hogy mivel már nem korszerű, ezért a TI ingyenesen ad hozzá egy licensz kulcsot, amivel teljes verzióssá tehető.
A korai verzió itt érhető el:
http://processors.wiki.ti.com/index.php/Download_CCS#Code_Composer_Studio_Version_4_Downloads
A hozzá való hivatalos licenszkulcs pedig itt:
http://processors.wiki.ti.com/index.php/Licensing_-_CCS
A boardban programozható legjobban "felszerelt" kontroller adatlapja itt található:
http://www.ti.com/lit/ds/symlink/msp430g2553.pdf
Komplett board adatlap pedig itt érhető el(Ha régebbi fejlesztő panelünk van, figyeljünk a revíziók változásaira!):
http://www.ti.com/lit/ug/slau318g/slau318g.pdf
Jó ha tudod:
- A board 3,3 V-al táplálja a mikrokontrollert.
- Itt érdemes megjegyezni, hogy a portok összesen 48 mA-el terhelhetőek mindkét irányban, egy I/O lábon pedig +-6 mA maximális áram folyhat.
- A kontroller belső RC oszcillátorát használja alapbeállításként, ami 1 MHz-en fut, és viszonylag nagy az időzítési szórása. Egyszer használtam olyan feladatra, melyben időkritikusabb kommunikációt bitbangeltem, és sajnos anno szkóp nélkül csak órákkal később jöttem rá, hogy szétesik az időzítés(kontroller keresztcserélvel működött a kód).
- A 2553-as mikrokontrollernek az Rx-Tx lábai fel vannak cserélve... Nem tudom mit gondoltak a gyárban..
- A kontroller portlábai adatlap szerint NEM 5V toleránsak!
- A CCS 4.x.x verzióval korábban tapasztaltam olyan problémákat, hogy amennyiben nagyobb méretű binárisokat használunk a kontrollerünkön, debug esetén a változók értékei könnyedén felülírhatják egymást. Ez valószínűleg IDE probléma, mert debug nélkül a hiba nem jelentkezik.
Ajánlott irodalom:
- SLAU144 --> MSP430x2xx Family User's Guide
Ez egy hasznos PDF, CPU és HW interface regiszterek leírásával. Nagyjából MUST HAVE olvasmány, jelenleg a J verzió a legfrissebb.
http://www.ti.com/lit/ug/slau144j/slau144j.pdf
- John Davies -- MSP430 microcontroller basics
Ez a könyv tényleg inkább a kezdőket célozza meg, bár terjedelemben tekintélyes. Kicsit olyan, mint az Aspirine, mindenre jó, de semmire nem elég. Kezdetnek tökéletes, a mintakódok kissé túl vannak benne bonyolítva, és csak lényeges regiszterek vannak benne kifejtve. Alapvetően jó könyv.