Перейти к содержанию

Микроконтроллеры MSP430

MSP430 — 16-битные микроконтроллеры Texas Instruments, рассчитанные на питание от батарейки: ядро работает короткими вспышками, а остальное время спит, потребляя доли микроампера. Здесь — что умеет ядро, чем отличаются семейства с флеш-памятью и FRAM, что внутри популярного MSP430G2553 и где искать подробности.

MSP430 — архитектура микроконтроллеров Texas Instruments. Её ядро — 16-битный RISC-процессор с 16 регистрами, 27 командами и семью режимами адресации, общим адресным пространством для кода, данных и периферии и пятью режимами пониженного потребления. Подробно — в статьях «Архитектура MSP430» и «Система команд MSP430».

Семейства

СемействоПамять программРуководство TIОсобенности
MSP430F2xx, MSP430G2xxфлеш-памятьSLAU144модуль тактирования Basic Clock+ с DCO, LFXT1 и VLO; режимы LPM0–LPM4; G2xx — недорогая линейка Value Line
MSP430FR2xx, MSP430FR4xxFRAMSLAU445FRAM пишется как ОЗУ; система тактирования CS с FLL и генератором REFO; режимы LPM3.5 и LPM4.5
MSP430FR5xx, MSP430FR6xxFRAMSLAU367DMA, шифрование AES, защита памяти MPU, до 256 КБ FRAM

Как задать частоту в каждом семействе — на странице «Тактирование MSP430», отладочные платы — на странице «LaunchPad для MSP430». Сравнение микросхем с FRAM — FR2433, FR2355, FR2476, FR4133, FR5969, FR5994, FR6989 — на странице «MSP430 с FRAM». Устройство ядра и система команд у семейств одинаковы, различаются память, периферия и модуль тактирования. Номера руководств — главный ориентир: в даташите конкретной микросхемы только параметры и выводы, а описание модулей — в руководстве семейства.

MSP430G2553

Самый распространённый представитель Value Line — по даташиту TI SLAS735J:

ПараметрЗначение
Памятьфлеш 16 КБ, ОЗУ 512 байтов, информационная флеш 256 байтов
Питание1,8–3,6 В
Частотадо 16 МГц при 3,3 В, четыре калиброванные частоты DCO — 1, 8, 12 и 16 МГц
Потребление230 мкА при 1 МГц и 2,2 В; 0,5 мкА в режиме ожидания; 0,1 мкА с сохранением ОЗУ
Таймерыдва 16-битных Timer_A с тремя каналами захвата и сравнения
ИнтерфейсыUSCI_A0 (UART с автоопределением скорости, SPI, IrDA) и USCI_B0 (SPI, I²C)
Аналог10-битный АЦП 200 тыс. выборок/с с внутренним опорным, компаратор Comparator_A+
Выводыдо 24 линий ввода-вывода; в корпусе DIP-20 — 16
ОтладкаSpy-Bi-Wire, загрузчик BSL по UART

Карта памяти, векторы прерываний, тактирование и сторожевой таймер G2553 — в статье об архитектуре. Сравнение с другими платформами — на странице «Микроконтроллеры»: 8-битные AVR и 32-битные STM32.

Программирование и отладка

MSP430 программируют и отлаживают через JTAG или его двухпроводной вариант Spy-Bi-Wire: у MSP430G2553 это выводы TEST/SBWTCK и RST/SBWTDIO. Кроме того, в микросхеме есть загрузчик BSL, который принимает прошивку по UART и защищён паролем; описание протокола TI вынесла в отдельное руководство SLAU319. Первая строка программы на MSP430 почти всегда останавливает сторожевой таймер — после сброса он включён и через 32768 тактов перезагрузит микроконтроллер.

На старом gaw.ru был раздел о MSP430 — архитектура, система команд, примеры; эти адреса теперь ведут сюда и на новые статьи.

Готовятся к публикации

Калькулятор частоты FLL

Частые вопросы

Чем MSP430 отличается от AVR и STM32?

Разрядностью и упором на потребление. MSP430 — 16-битный, с фон-неймановской архитектурой и 27 командами; его главный козырь — режимы пониженного потребления: у MSP430G2553 по даташиту 0,5 мкА в режиме ожидания с работающим таймером и 0,1 мкА с сохранением ОЗУ. AVR — 8-битный с гарвардской архитектурой, STM32 — 32-битный на ядрах Cortex-M с более богатой периферией.

Чем FRAM лучше флеш-памяти в MSP430?

FRAM — энергонезависимая память, которая по руководству TI SLAU445 читается и пишется как обычное ОЗУ: побайтно, без стирания страниц и без специальной процедуры записи. Поэтому в неё удобно сохранять данные на лету. Встроенный код коррекции ошибок исправляет одиночные ошибки и сообщает о многократных.

Как прошить MSP430G2553?

Через двухпроводной отладочный интерфейс Spy-Bi-Wire — выводы TEST/SBWTCK и RST/SBWTDIO, — который есть на отладочных платах TI, или через встроенный загрузчик BSL по UART. Загрузчик защищён паролем, а по адресу 0xFFDE даташит предусматривает ключ, которым BSL можно отключить совсем.

Сколько питания нужно MSP430G2553?

От 1,8 до 3,6 В, но максимальная частота зависит от напряжения: 6 МГц при 1,8 В, 12 МГц при 2,7 В и 16 МГц при 3,3 В. Для записи флеш-памяти нужно не меньше 2,2 В. От 5 В микроконтроллер питать нельзя — нужен стабилизатор на 3,3 В.