stringtranslate.com

ТИ MSP430

MSP 430 FG438 управляет глюкометром
Фотография двух плат экспериментатора для чипсета MSP430 от Texas Instruments. Слева — увеличенная версия чипа, справа — уменьшенная версия в формате USB.

MSP430 — это семейство микроконтроллеров смешанных сигналов от компании Texas Instruments , впервые представленное 14 февраля 1992 года. [1] Построенный на базе 16-разрядного процессора , MSP430 был разработан для использования со встроенными приложениями с низким энергопотреблением [2] и для низкой стоимости . .

Приложения

Глюкометр Aktivmed GlucoCheck Comfort — печатная плата под ЖК-дисплеем, на которой размещен ЦП MSP 430.

MSP430 можно использовать для маломощных встраиваемых устройств . Ток , потребляемый в режиме ожидания, может составлять менее 1 мкА. Максимальная частота процессора составляет 25 МГц. Его можно регулировать для снижения энергопотребления. MSP430 также использует шесть различных режимов пониженного энергопотребления, которые могут отключать ненужные часы и процессор, а также выходить из режима сна менее чем за 1 микросекунду, что позволяет контроллеру дольше оставаться в спящем режиме.

Устройство поставляется в различных конфигурациях с обычными периферийными устройствами:

Некоторые менее распространенные периферийные варианты включают встроенные операционные усилители (ОУ) для формирования сигнала , 12-битный цифро-аналоговый преобразователь (ЦАП), драйвер жидкокристаллического дисплея (ЖК-дисплея), аппаратный умножитель , USB и прямой доступ к памяти. (DMA) для результатов АЦП. За исключением некоторых более старых версий стираемой программируемой постоянной памяти ( EPROM , такой как MSP430E3xx) и ПЗУ с маской большого объема (MSP430Cxxx), все устройства поддерживают внутрисистемное программирование с помощью Joint Test Action Group ( JTAG ), полностью четырехпроводное. или Spy-Bi-Wire ), встроенный загрузчик начальной загрузки (BSL), использующий UART , например RS-232 , или USB на устройствах с поддержкой USB. BSL не включен в устройства семейств F20xx, G2xx0, G2xx1, G2xx2 или I20xx.

Ограничения памяти

Однако существуют ограничения, которые исключают его использование в более сложных встроенных системах . MSP430 не имеет внешней шины памяти , поэтому его объем ограничен встроенной памятью, флэш-памятью до 512 КБ и оперативной памятью (ОЗУ) объемом до 66 КБ, что может быть слишком мало для приложений, требующих больших буферов или таблиц данных. . Кроме того, хотя он и имеет контроллер DMA , использовать его для перемещения данных с чипа очень сложно из-за отсутствия выходного строба DMA. [4]

Поколения MSP430

Существует шесть основных поколений процессоров MSP430. В порядке развития это: поколение «3xx», поколение «1xx», поколение «4xx», поколение «2xx», поколение «5xx» и поколение «6xx». Цифра после поколения идентифицирует модель (как правило, более высокие номера моделей больше и более функциональны), третья цифра идентифицирует объем включенной памяти, а четвертая, если она присутствует, идентифицирует второстепенный вариант модели. Самый распространенный вариант — другой аналого -цифровой преобразователь, встроенный в кристалл .

Поколения 3xx и 1xx ограничены 16-битным адресным пространством. В более поздних поколениях это было расширено за счет включения инструкций «430X», допускающих 20-битное адресное пространство. Как и в случае с другими процессорными архитектурами (например, процессором PDP-11 ), расширение диапазона адресации за пределы 16-битного размера слова привело к некоторым особенностям и неэффективности для программ размером более 64 КБ.

В следующем списке полезно представить типичную емкость литиевой монеты CR2032 200 мА·ч как 200 000 мкА·ч или 22,8 мкА·год. Таким образом, учитывая только потребление процессором, такая батарея может обеспечить ток 0,7 мкА в течение 32 лет. (На самом деле саморазряд батареи уменьшит это число.)

Значение сохранения оперативной памяти по сравнению с режимом часов реального времени заключается в том, что в режиме часов реального времени ЦП может перейти в спящий режим с работающими часами, которые разбудят его в определенное время в будущем. В режиме сохранения ОЗУ для его пробуждения требуется некоторый внешний сигнал, например, сигнал контакта ввода/вывода (I/O) или прерывание приема подчиненного устройства SPI.

Серия MSP430x1xx

Серия MSP430x1xx — это базовое поколение без встроенного контроллера ЖК-дисплея . Они, как правило, меньше, чем поколение 3xx. Эти микроконтроллеры со сверхнизким энергопотреблением на базе флэш-памяти или ПЗУ обеспечивают производительность 8 MIPS, работу при напряжении 1,8–3,6 В, флэш-память объемом до 60 КБ и широкий спектр аналоговых и цифровых периферийных устройств.

  • Обзор характеристик мощности, начиная с:
    • 0,1 мкА сохранения ОЗУ
    • Режим часов реального времени 0,7 мкА
    • 200 мкА / MIPS активный
    • Обеспечивает быстрый выход из режима ожидания менее чем за 6 мкс.
  • Параметры устройства
    • Параметры флэш-памяти: 1–60 КБ
    • Варианты ПЗУ: 1–16 КБ
    • ОЗУ: 128 Б–10 КБ
    • Варианты GPIO: 14, 22, 48 контактов
    • Варианты АЦП: наклон, 10 и 12-битный SAR
    • Другие встроенные периферийные устройства: 12-битный ЦАП, до 2 16-битных таймеров, сторожевой таймер, сброс напряжения, SVS, модуль USART (UART, SPI), DMA, умножитель 16×16, Comparator_A, датчик температуры.

Серия MSP430F2xx

Серия MSP430F2xx аналогична поколению '1xx, но работает с еще меньшим энергопотреблением, поддерживает работу на частоте до 16 МГц и имеет более точную (±2%) встроенную тактовую частоту, что упрощает работу без внешнего кристалла. Эти устройства со сверхнизким энергопотреблением на основе флэш-памяти обеспечивают работу при напряжении 1,8–3,6 В. Включает в себя генератор очень малой мощности (VLO), внутренние подтягивающие/понижающие резисторы и варианты с малым количеством контактов.

  • Обзор характеристик мощности, начиная с:
    • 0,1 мкА сохранения ОЗУ
    • 0,3 мкА в режиме ожидания (VLO)
    • Режим часов реального времени 0,7 мкА
    • 220 мкА / MIPS активный
    • Сверхбыстрый выход из режима ожидания менее чем за 1 мкс.
  • Параметры устройства
    • Параметры флэш-памяти: 1–120 КБ.
    • Варианты оперативной памяти: 128 Б – 8 КБ
    • Варианты GPIO: 10, 11, 16, 24, 32 и 48 контактов.
    • Варианты АЦП: наклон, 10 и 12-битный SAR, 16 и 24-битный сигма-дельта
    • Другая встроенная периферия: операционные усилители, 12-битный ЦАП, до 2 16-битных таймеров, сторожевой таймер, сброс напряжения, SVS, модуль USI (I²C, SPI), модуль USCI, DMA, умножитель 16×16, Comparator_A+, Датчик температуры

Серия MSP430G2xx

Серия MSP430G2xx Value включает в себя микроконтроллеры со сверхнизким энергопотреблением на базе флэш-памяти со скоростью до 16 MIPS и напряжением 1,8–3,6 В. Включает генератор очень низкой мощности (VLO), внутренние подтягивающие/понижающие резисторы, а также варианты с малым количеством контактов по более низким ценам, чем серия MSP430F2xx.

  • Сверхнизкое энергопотребление, всего (@2,2 В):
    • 0,1 мкА сохранения ОЗУ
    • 0,4 мкА Режим ожидания (VLO)
    • Режим часов реального времени 0,7 мкА
    • 220 мкА / MIPS активный
    • Сверхбыстрый выход из режима ожидания менее чем за 1 мкс
  • Параметры устройства
    • Параметры флэш-памяти: 0,5–56 КБ.
    • Варианты оперативной памяти: 128 Б–4 КБ
    • Варианты GPIO: 10, 16, 24, 32 контакта
    • Опции АЦП: наклон, 10-битный SAR
    • Другие встроенные периферийные устройства: емкостный сенсорный ввод-вывод, до 3 16-битных таймеров, сторожевой таймер, сброс напряжения, модуль USI (I²C, SPI), модуль USCI, компаратор_A+, датчик температуры.

Серия MSP430x3xx

Серия MSP430x3xx — самое старое поколение, предназначенное для портативных приборов со встроенным ЖК-контроллером. Сюда также входит генератор с автоподстройкой частоты , который может автоматически синхронизироваться с низкоскоростным (32 кГц) кварцем. Это поколение не поддерживает память EEPROM , а только маскирует ПЗУ и стираемую УФ-излучением и одноразово программируемую СППЗУ . Более поздние поколения предоставляют только варианты флэш-памяти и ПЗУ маски . Эти устройства работают при напряжении 2,5–5,5 В и имеют объем ПЗУ до 32 КБ.

  • Обзор характеристик мощности, начиная с:
    • 0,1 мкА сохранения ОЗУ
    • Режим часов реального времени 0,9 мкА
    • 160 мкА / MIPS активный
    • Обеспечивает быстрый выход из режима ожидания менее чем за 6 мкс.
  • Параметры устройства:
    • Варианты ПЗУ: 2–32 КБ
    • Варианты оперативной памяти: 512 Б–1 КБ
    • Варианты GPIO: 14, 40 контактов
    • Опции АЦП: наклон, 14-битный SAR
    • Другая встроенная периферия: ЖК-контроллер, умножитель.

Серия MSP430x4xx

Серия MSP430x4xx аналогична поколению 3xx, но включает встроенный контроллер ЖК-дисплея, она больше и функциональнее. Эти устройства на базе флэш-памяти или ПЗУ обеспечивают производительность 8–16 MIPS при работе с напряжением 1,8–3,6 В, с FLL и SVS. Идеально подходит для измерения малой мощности и в медицинских целях.

  • Обзор характеристик мощности, начиная с:
    • 0,1 мкА сохранения ОЗУ
    • Режим часов реального времени 0,7 мкА
    • 200 мкА / MIPS активный
    • Обеспечивает быстрый выход из режима ожидания менее чем за 6 мкс.
  • Параметры устройства:
    • Варианты флэш-памяти/ПЗУ: 4–120 КБ
    • Варианты оперативной памяти: 256 Б – 8 КБ
    • Варианты GPIO: 14, 32, 48, 56, 68, 72, 80 контактов.
    • Варианты АЦП: наклон, 10 и 12-битный SAR, 16-битный сигма-дельта
    • Другие встроенные периферийные устройства: SCAN_IF, ESP430, 12-битный ЦАП, операционные усилители, RTC, до 2 16-битных таймеров, сторожевой таймер, базовый таймер, сброс напряжения, SVS, модуль USART (UART, SPI), модуль USCI, ЖК-контроллер, DMA, множитель 16×16 и 32x32, компаратор_A, датчик температуры, скорость процессора 8 MIPS

Серия MSP430x5xx

Серия MSP430x5xx может работать на частоте до 25 МГц, иметь флэш-память объемом до 512 КБ и ОЗУ до 66 КБ. Это семейство флэш-памяти отличается низким потреблением активной мощности: до 25 MIPS при работе с напряжением 1,8–3,6 В (165 мкА/MIPS). Включает инновационный модуль управления питанием для оптимального энергопотребления и встроенный USB. [5]

  • Обзор характеристик мощности, начиная с:
    • 0,1 мкА сохранения ОЗУ
    • Режим часов реального времени 2,5 мкА
    • 165 мкА / MIPS активный
    • Обеспечивает быстрый выход из режима ожидания менее чем за 5 мкс.
  • Параметры устройства:
    • Параметры флэш-памяти: до 512 КБ
    • Варианты оперативной памяти: до 66 КБ
    • Варианты АЦП: 10 и 12-битный SAR
    • Варианты GPIO: 29, 31, 47, 48, 63, 67, 74, 87 контактов.
    • Другие дополнительные встроенные периферийные устройства: 12-битный ЦАП, ШИМ высокого разрешения, 5 входов/выходов, USB, переключатель резервной батареи, до 4 16-битных таймеров, сторожевой таймер, часы реального времени, сброс напряжения при отключении питания, SVS, модуль USCI , DMA, множитель 32x32, Comp B, датчик температуры

Серия MSP430x6xx

Серия MSP430x6xx может работать на частоте до 25 МГц, иметь флэш-память объемом до 512 КБ и ОЗУ до 66 КБ. Это семейство флэш-памяти отличается низким потреблением активной мощности: до 25 MIPS при работе с напряжением 1,8–3,6 В (165 мкА/MIPS). Включает инновационный модуль управления питанием для оптимального энергопотребления и встроенный USB.

  • Обзор характеристик мощности, начиная с:
    • 0,1 мкА сохранения ОЗУ
    • Режим часов реального времени 2,5 мкА
    • 165 мкА / MIPS активный
    • Обеспечивает быстрый выход из режима ожидания менее чем за 5 мкс.
  • Параметры устройства:
    • Параметры флэш-памяти: до 512 КБ
    • Варианты оперативной памяти: до 66 КБ
    • Опции АЦП: 12-битный SAR
    • Варианты GPIO: 74 контакта
    • Другие встроенные периферийные устройства: USB, ЖК-дисплей, ЦАП, Comparator_B, DMA, множитель 32x32, модуль управления питанием (BOR, SVS, SVM, LDO), сторожевой таймер, RTC, датчик температуры.

Серия RF SoC (CC430)

Серия RF SoC (CC430) обеспечивает тесную интеграцию между ядром микроконтроллера, периферийными устройствами, программным обеспечением и радиочастотным приемопередатчиком. Имеет радиочастотный приемопередатчик <1 ГГц и напряжением 1,8–3,6 В. Программирование с использованием интегрированной среды разработки (IDE) Arduino возможно через API panStamp.

  • Обзор характеристик мощности, начиная с:
    • 1 мкА сохранения ОЗУ
    • Режим часов реального времени 1,7 мкА
    • 180 мкА / MIPS активный
  • Параметры устройства:
    • Варианты скорости: до 20 МГц
    • Параметры флэш-памяти: до 32 КБ
    • Варианты оперативной памяти: до 4 КБ
    • Опции АЦП: 12-битный SAR
    • Варианты GPIO: 30 и 44 контакта
    • Другие встроенные периферийные устройства: ЖК-контроллер, до 2 16-битных таймеров, сторожевой таймер, часы реального времени, модуль управления питанием (BOR, SVS, SVM, LDO), модуль USCI, DMA, умножитель 32x32, Comp B, датчик температуры.

Серия ФРАМ

Серия FRAM от Texas Instruments обеспечивает унифицированную память с динамическим разделением и скоростью доступа к памяти в 100 раз быстрее, чем флэш-память. FRAM также способна сохранять состояние нулевого энергопотребления во всех режимах питания, что означает, что запись гарантирована даже в случае сбоя питания. Благодаря ресурсу записи более 100 триллионов циклов EEPROM больше не требуется. Потребление активной мощности менее 100 мкА/МГц.

  • Обзор характеристик мощности, начиная с:
    • 320 нА оперативной памяти
    • Режим часов реального времени 0,35 мкА
    • 82 мкА / MIPS активный
  • Параметры устройства:
    • Варианты скорости: от 8 до 24 МГц
    • Варианты FRAM: от 4 до 256 КБ
    • Варианты оперативной памяти: от 0,5 до 8 КБ
    • Варианты АЦП: 10 или 12-битный SAR
    • Варианты GPIO: от 17 до 83 контактов GPIO
    • Другие возможные встроенные периферийные устройства: MPU, до 6 16-битных таймеров, сторожевой таймер, RTC, модуль управления питанием (BOR, SVS, SVM, LDO), модуль USCI, DMA, умножитель, Comp B, датчик температуры, драйвер ЖК-дисплея, I2C и UART BSL, расширенный интерфейс сканирования, 32-битный умножитель, AES, CRC, ускорение обработки сигнала, емкостное касание, ИК-модуляция

Серия низкого напряжения

Серия низковольтных микроконтроллеров включает в себя детали MSP430C09x и MSP430L092, способные работать при напряжении 0,9 В. Эти две серии низковольтных 16-разрядных микроконтроллеров имеют конфигурации с двумя 16-разрядными таймерами, 8-разрядным аналого-цифровым (АЦП) ) преобразователь, 8-битный цифро-аналоговый преобразователь (ЦАП) и до 11 контактов ввода-вывода.

  • Обзор характеристик мощности, начиная с:
    • 1 мкА сохранения ОЗУ
    • Режим часов реального времени 1,7 мкА
    • 180 мкА / MIPS активный
  • Параметры устройства:
    • Варианты скорости: 4 МГц
    • Варианты ПЗУ: 1–2 КБ
    • Варианты SRAM: 2 КБ
    • Опции АЦП: 8-битный SAR
    • Варианты GPIO: 11 контактов
    • Другие встроенные периферийные устройства: до 2 16-битных таймеров, сторожевой таймер, сброс напряжения, SVS, компаратор, датчик температуры.

Другие семейства MSP430

Другие семейства MSP430 включают детали с фиксированным назначением, автомобильные детали и детали с повышенным температурным режимом.

Фиксированная функция: 16-битный микроконтроллер MSP430BQ1010 представляет собой усовершенствованное устройство с фиксированной функцией, которое образует блок управления и связи на стороне приемника для беспроводной передачи энергии в портативных приложениях. MSP430BQ1010 соответствует спецификации Wireless Power Consortium (WPC). Для получения дополнительной информации см. «Бесконтактное питание» [ постоянная неработающая ссылка ] .

Автомобильная промышленность. Автомобильные микроконтроллеры MSP430 (MCU) от Texas Instruments (TI) представляют собой 16-разрядные процессоры смешанных сигналов на базе RISC, соответствующие требованиям AEC-Q100 и подходящие для автомобильных приложений в средах с температурой окружающей среды до 105 °C. LIN-совместимые драйверы для микроконтроллера MSP430 предоставлены IHR GmbH.

Расширенная температура: устройства MSP430 очень популярны в суровых условиях, например, в промышленных системах измерения, благодаря низкому энергопотреблению и инновационной аналоговой интеграции. Некоторые приложения в суровых условиях окружающей среды включают транспорт/автомобилестроение, возобновляемые источники энергии, военную/космическую/авионику, разведку полезных ископаемых, промышленность, а также безопасность и безопасность.

  • Определения устройств:
    • ВТ: от -55 °C до 150 °C
    • EP: продукты повышенной комфортности от -55 °C до 125 °C.
    • Q1: Автомобильный Q100 соответствует требованиям от -40 °C до 105 °C.
    • T: Применение при расширенных температурах от -40 °C до 105 °C.

Обратите внимание, что когда размер флэш-памяти превышает 64 КБ слов (128 КБ), адреса инструкций больше не могут быть закодированы всего двумя байтами. Это изменение размера указателя приводит к некоторой несовместимости с предыдущими частями.

Периферийные устройства

Периферийные устройства MSP430, как правило, просты в использовании, имеют (в основном) согласованные адреса между моделями и не имеют регистров только для записи (за исключением аппаратного умножителя).

Порты ввода-вывода общего назначения 0–10

Если периферийное устройство не требуется, вывод можно использовать для ввода-вывода общего назначения. Выводы разделены на 8-битные группы, называемые «портами», каждая из которых управляется несколькими 8-битными регистрами. В некоторых случаях порты располагаются парами, доступ к которым можно получить как 16-битные регистры.

Семейство MSP430 определяет 11 портов ввода-вывода, от P0 до P10, хотя ни один чип не поддерживает более 10 из них. P0 реализован только в семействе 3xx. P7–P10 реализованы только в самых больших членах (и версиях с наибольшим количеством контактов) семейств '4xx и '2xx. Новейшие семейства '5xx и '6xx имеют P1–P11, а регистры управления переназначены для обеспечения большего количества пар портов. Каждый порт контролируется следующими регистрами. Порты, которые не реализуют определенные функции (например, прерывание при изменении состояния), не реализуют соответствующие регистры.

П х В
Вход порта x . Это регистр, доступный только для чтения, и он отражает текущее состояние контактов порта.
П х ВЫХОД
Выход порта x . Значения, записанные в этот регистр чтения/записи, выводятся на соответствующие выводы, когда они настроены на вывод.
П х НАПРАВЛЕНИЕ
Направление данных порта x . Биты, записанные как 1, настраивают соответствующий вывод для вывода. Биты, записанные как 0, настраивают вывод для ввода.
П х ВЫБОР
Выбор функции порта x . Биты, записанные как 1, настраивают соответствующий вывод для использования специализированным периферийным устройством. Биты, записанные как 0, настраивают вывод для ввода-вывода общего назначения. Порт 0 (только детали '3xx) не мультиплексируется с другими периферийными устройствами и не имеет регистра P0SEL.
П х РЕН
Включение резистора порта x (только '2xx и '5xx). Биты, установленные в этом регистре, включают слабые подтягивающие или понижающие резисторы на соответствующих выводах ввода-вывода, даже если они сконфигурированы как входы. Направление вытягивания задается битом, записанным в регистр P x OUT.
П х ДС
Мощность диска порта x (только '5xx). Биты, установленные в этом регистре, позволяют выводить большие токи. Это увеличивает выходную мощность, но может вызвать электромагнитные помехи (EMI).

Порты 0–2 могут создавать прерывания при изменении входов. Дальнейшие регистры настраивают эту возможность:

П х МЭС
Выбор фронта прерывания порта x . Выбирает фронт, при котором будет установлен бит P x IFG. Когда входной бит переходит с состояния, соответствующего состоянию P x IES, на несоответствие ему (т. е. всякий раз, когда бит в P x IES XOR P x IN меняется со состояния «сброс» на «установлен»), устанавливается соответствующий бит P x IFG.
П х ИЭ
Разрешение прерываний порта x . Когда этот бит и соответствующий бит P x IFG установлены, генерируется прерывание.
П х ИФГ
Флаг прерывания порта x . Устанавливается всякий раз, когда соответствующий вывод меняет состояние, запрошенное P x IES. Очистить можно только программно. (Также можно установить с помощью программного обеспечения.)
П х IV
Вектор прерывания порта x (только '5xx). Этот 16-битный регистр является приоритетным энкодером , который можно использовать для обработки прерываний по смене контактов. Если n — это бит прерывания с наименьшим номером, который находится в состоянии ожидания в P x IFG и разрешен в P x IE, этот регистр читается как 2 n +2. Если такого бита нет, он читается как 0. Масштабный коэффициент 2 позволяет напрямую использовать его в качестве смещения в таблице ветвей . Чтение этого регистра также очищает сообщенный флаг P x IFG.

Некоторые контакты имеют специальное назначение: входы или выходы. (Например, выводы таймера можно настроить как входы захвата или выходы ШИМ.) В этом случае бит P x DIR определяет, какую из двух функций выполняет вывод, когда установлен бит P x SEL. Если имеется только одна специальная функция, то P x DIR обычно игнорируется. Регистр P x IN по-прежнему доступен для чтения, если установлен бит P x SEL, но генерация прерываний отключена. Если P x SEL сброшен, вход специальной функции замораживается и отключается от внешнего контакта. Кроме того, настройка вывода для вывода общего назначения не отключает генерацию прерываний.

Интегрированные периферийные устройства

Аналоговый
  • Аналого-цифровой преобразователь
Линия MSP430 предлагает два типа аналого-цифрового преобразования (АЦП). 10- и 12-битные преобразователи последовательного приближения , а также 16-битный сигма-дельта-преобразователь . Контроллеры передачи данных и буфер преобразования и управления на 16 слов позволяют MSP430 преобразовывать и сохранять образцы без вмешательства ЦП, сводя к минимуму энергопотребление.
  • Аналоговый пул
Модуль аналогового пула (A-POOL) можно настроить как АЦП, ЦАП, компаратор, SVS или датчик температуры. Это позволяет пользователю гибко программировать ряд аналоговых функций всего за одну настройку.
  • Компаратор А, А+
Модуль компаратора MSP430 обеспечивает прецизионное аналогово-цифровое преобразование. Контролирует внешние аналоговые сигналы и обеспечивает измерение напряжения и номиналов резисторов. Возможность выбора режима мощности.
  • ЦАП12
Модуль DAC12 представляет собой 12-разрядный ЦАП с выходным напряжением, имеющий выбор внутреннего/внешнего опорного напряжения и программируемое время установления для оптимального энергопотребления. Его можно настроить в 8- или 12-битном режиме. При наличии нескольких модулей DAC12 их можно сгруппировать для синхронного обновления.
  • Операционные усилители
Характеризуется однополярным питанием, малым током, выходным напряжением между напряжением и программируемым временем стабилизации. Варианты конфигурации, выбираемые программным обеспечением: режим единичного усиления, режим компаратора, инвертирующий PGA, неинвертирующий PGA, дифференциальный и инструментальный усилитель.
  • Сигма Дельта (СД)
Каждый из модулей SD16/SD16_A/SD24_A оснащен 16-/24-битными сигма-дельта АЦП с внутренним опорным напряжением 1,2 В. Каждый преобразователь имеет до восьми полностью дифференциальных мультиплексированных входов, включая встроенный датчик температуры. Преобразователи представляют собой сигма-дельта модуляторы второго порядка с передискретизацией с выбираемыми коэффициентами передискретизации до 1024 (SD16_A/SD24_A) или 256 (SD16).
Таймеры
  • Базовый таймер (БТ)
BT имеет два независимых 8-битных таймера, которые можно каскадно объединить в 16-битный таймер/счетчик. Оба таймера могут быть прочитаны и записаны программным обеспечением. BT расширен для обеспечения интегрированного RTC. Внутренний календарь компенсирует месяцы с количеством дней менее 31 и включает поправку на високосный год.
  • Часы реального времени
RTC_A/B — это 32-битные аппаратные модули счетчиков, которые обеспечивают счетчики часов с календарем, гибким программируемым сигналом тревоги и калибровкой. RTC_B включает в себя переключаемую систему резервного питания, которая обеспечивает возможность работы RTC при выходе из строя основного источника питания.
  • 16-битные таймеры
Timer_A, Timer_B и Timer_D — это асинхронные 16-битные таймеры/счетчики с семью регистрами захвата/сравнения и различными режимами работы. Таймеры поддерживают множественный захват/сравнение, выходы ШИМ и интервальную синхронизацию. Они также имеют широкие возможности прерываний. Timer_B предоставляет дополнительные функции, такие как программируемая длина таймера (8, 10, 12 или 16 бит) и обновление регистров сравнения с двойной буферизацией, а Timer_D представляет режим высокого разрешения (4 нс).
WDT+ выполняет контролируемый перезапуск системы после возникновения проблемы с программным обеспечением. Если выбранный интервал времени истечет, будет произведен сброс системы. Если функция сторожевого таймера не требуется в приложении, модуль можно настроить как интервальный таймер и генерировать прерывания через выбранные интервалы времени.
Система
  • Расширенный стандарт шифрования (AES)
Модуль ускорителя AES выполняет шифрование и дешифрование 128-битных данных с помощью 128-битных ключей в соответствии с передовым аппаратным стандартом шифрования и может быть настроен с помощью пользовательского программного обеспечения.
  • Сброс при снижении напряжения (BOR)
Схема BOR обнаруживает низкое напряжение питания и сбрасывает устройство, вызывая сигнал сброса при включении питания (POR) при подаче или отключении питания. Схема BOR с нулевым энергопотреблением микроконтроллера MSP430 постоянно включена, в том числе во всех режимах пониженного энергопотребления.
  • Контроллер прямого доступа к памяти (DMA)
Контроллер DMA передает данные с одного адреса на другой по всему диапазону адресов без вмешательства ЦП. DMA увеличивает пропускную способность периферийных модулей и снижает энергопотребление системы. Модуль имеет до трех независимых каналов передачи.
Хотя подсистема DMA MSP430 очень эффективна, у нее есть несколько недостатков, наиболее существенным из которых является отсутствие внешнего стробоскопа передачи. Хотя передача DMA может быть инициирована извне, внешний индикатор завершения передачи отсутствует. Следовательно, DMA к внешним источникам и из них ограничивается передачей побайтовых данных по внешнему триггеру, а не автоматически полными блоками через DMA. Это может привести к значительной сложности (например, к необходимости обширной ручной настройки кода) при реализации связи процессор-процессор или процессор-USB. [4] В цитируемой ссылке используется непонятный режим таймера для генерации высокоскоростных стробов для передач DMA. Таймеры недостаточно гибки, чтобы легко компенсировать отсутствие внешнего строба передачи DMA.
Операции DMA, включающие передачу слов в байтовые ячейки, вызывают усечение до 8 бит, а не преобразование в передачу двух байтов. Это делает DMA с 16-битными значениями A/D или D/A менее полезным, чем могло бы быть (хотя в некоторых версиях MSP 430 можно передавать эти значения через порт A или B, используя видимый извне триггер для каждой передачи, например выход таймера).
  • Расширенный модуль эмуляции (EEM)
EEM предоставляет различные уровни функций отладки, такие как 2–8 аппаратных точек останова, сложные точки останова, остановка при выполнении чтения/записи по указанному адресу и многое другое. Встроен во все устройства MSP430 на базе флэш-памяти.
  • Аппаратный множитель
Некоторые модели MSP430 включают в себя периферийное устройство аппаратного умножителя с отображением в памяти, которое выполняет различные операции умножения-накопления 16×16+32→33-бит. Что необычно для MSP430, это периферийное устройство включает в себя неявный 2-битный регистр, доступный только для записи, что делает практически невозможным переключение контекста . Это периферийное устройство не вмешивается в работу ЦП и доступно через DMA. MPY на всех устройствах MSP430F5xx и некоторых устройствах MSP430F4xx поддерживает разрядность до 32 x 32 бит.
Используются 8 регистров:
Первый операнд записывается в один из четырех 16-битных регистров. Записанный адрес определяет выполняемую операцию. Хотя записанное значение можно прочитать обратно из любого регистра, номер записанного регистра восстановить невозможно.
Если требуется операция умножения-накопления, необходимо также инициализировать регистры ResLoи .ResHi
Затем каждый раз, когда выполняется запись в OP2регистр, выполняется умножение, и результат сохраняется или добавляется в регистры результатов. Регистр SumExt— это регистр, доступный только для чтения, который содержит выполнение сложения (0 или 1) в случае беззнакового умножения) или расширение знака 32-битной суммы (0 или -1) в случае знакового умножения. умножать. В случае знакового умножения-накопления SumExtзначение должно быть объединено со старшим битом предыдущего SumHiсодержимого, чтобы определить истинный результат выполнения (-1, 0 или +1).
Результат доступен после трех тактовых циклов задержки, то есть времени, необходимого для выборки следующей инструкции и следующего индексного слова. Таким образом, задержка обычно незаметна. Явная задержка требуется только в том случае, если для получения результата используется режим косвенной адресации.
  • Блок защиты памяти (MPU)
MPU FRAM защищает от случайной записи в выделенные сегменты постоянной памяти или выполнения кода из постоянной памяти. MPU может устанавливать любое разделение памяти с адресацией на уровне битов, делая всю память доступной для операций чтения, записи и выполнения в устройствах FRAM.
  • Модуль управления питанием (PMM)
PMM генерирует напряжение питания для логики ядра и предоставляет несколько механизмов для контроля и мониторинга как напряжения, подаваемого на устройство, так и напряжения, генерируемого для ядра. Он интегрирован со стабилизатором напряжения с низким падением напряжения (LDO), устройством сброса напряжения (BOR), а также устройством контроля и мониторинга напряжения питания.
  • Контроллер напряжения питания (SVS)
SVS — это настраиваемый модуль, используемый для контроля напряжения питания AVCC или внешнего напряжения. SVS можно настроить на установку флага или генерирование сброса при включении питания (POR), когда напряжение питания или внешнее напряжение падает ниже порогового значения, выбранного пользователем.
Связь и интерфейс
  • Емкостные сенсорные входы/выходы
Встроенный емкостный сенсорный модуль ввода-вывода предлагает несколько преимуществ для приложений с сенсорными кнопками и сенсорными слайдерами. Система не требует внешних компонентов для создания автоколебаний (уменьшение расхода материалов), а конденсатор (определяющий частоту автоколебаний) может быть подключен напрямую. Кроме того, нет необходимости во внешних мультиплексорах, позволяющих использовать несколько контактных площадок, и каждая контактная площадка ввода-вывода может напрямую служить входом измерения ограничения. Гистерезис ~0,7 В обеспечивает надежную работу. Управление и последовательность операций полностью выполняются программным обеспечением.
  • Входы/выходы общего назначения
Устройства MSP430 имеют до 12 цифровых портов ввода-вывода. Каждый порт имеет восемь контактов ввода-вывода. Каждый вывод ввода-вывода можно настроить как вход или выход, а также индивидуально читать или записывать. Порты P1 и P2 имеют возможность прерывания. MSP430F2xx, F5xx и некоторые устройства F4xx оснащены встроенными индивидуально настраиваемыми подтягивающими или понижающими резисторами.
  • ВЧ-интерфейс суб-ГГЦ
Гибкий трансивер CC1101 с частотой менее 1 ГГц обеспечивает чувствительность и эффективность блокировки, необходимые для создания успешных каналов связи в любой радиочастотной среде. Он также отличается низким потреблением тока и поддерживает гибкие скорости передачи данных и форматы модуляции.
  • USART (UART, SPI, I²C)
Универсальный периферийный интерфейс синхронного/асинхронного приема/передачи (USART) поддерживает асинхронную связь RS-232 и синхронную связь SPI с одним аппаратным модулем. Модули USART MSP430F15x/16x также поддерживают I²C, программируемую скорость передачи данных и возможность независимого прерывания для приема и передачи.
  • USB
Модуль USB полностью соответствует спецификации USB 2.0 и поддерживает управление, прерывания и массовую передачу данных со скоростью 12 Мбит/с (полная скорость). Модуль поддерживает операции приостановки, возобновления и удаленного пробуждения USB и может быть настроен для работы до восьми входных и восьми выходных конечных точек. Модуль включает в себя интегрированный физический интерфейс (PHY); фазовая автоподстройка частоты (ФАПЧ) для генерации тактовых импульсов USB; и гибкая система электропитания, позволяющая устройствам с питанием от шины и с автономным питанием.
  • USCI (UART, SPI, I²C, LIN, IrDA)
Модуль универсального последовательного интерфейса связи (USCI) имеет два независимых канала, которые можно использовать одновременно. Асинхронный канал (USCI_A) поддерживает режим UART; режим SPI; формирование импульсов для IrDA; и автоматическое определение скорости передачи данных для связи LIN. Синхронный канал (USCI_B) поддерживает режимы I²C и SPI.
  • УЗИ (SPI, I²C)
Модуль универсального последовательного интерфейса (USI) представляет собой синхронный последовательный интерфейс связи с длиной данных до 16 бит и может поддерживать связь SPI и I²C с минимальным программным обеспечением.
  • Инфракрасная модуляция
Эта функция доступна на микросхемах серий MSP430FR4xxx и MSP430FR2xxx и настраивается с помощью набора регистров SYSCFG. Это периферийное устройство подключается к другим периферийным устройствам (таймерам, eUSCI_A) для генерации ИК-модулированного сигнала на выходном контакте. [6]
Измерение
  • ESP430 (встроен в устройства FE42xx)
Модуль ESP430CE выполняет расчеты измерений независимо от ЦП. Модуль имеет отдельный SD16, аппаратный умножитель и встроенный процессор ESP430 для однофазных приложений учета энергии.
  • Интерфейс сканирования (SIF)
Модуль SIF, программируемый конечный автомат с аналоговым интерфейсом, используется для автоматического измерения линейного или вращательного движения с минимально возможным энергопотреблением. Модуль поддерживает различные типы LC- и резистивных датчиков, а также квадратурное кодирование.
Отображать
  • ЖК-дисплей/ЖК-А/ЖК-Б
Контроллер LCD/LCD_A напрямую управляет ЖК-дисплеями, состоящими из 196 сегментов. Поддерживает статические ЖК-дисплеи с 2, 3 и 4 мультиплексорами. Модуль LCD_A имеет встроенный зарядовый насос для контроля контрастности. LCD_B позволяет мигать отдельным сегментам с отдельной памятью миганий.
  • ЖК_Е
Контроллер LCD_E поставляется с более новыми микроконтроллерами серии MSP430FR4xxx и напрямую управляет ЖК-дисплеями с числом до 448 сегментов. Поддерживает статические ЖК-дисплеи с 2, 3, 4, 5, 6, 7, 8 мультиплексорами (смещение 1/3). Сегментные и общие контакты можно перепрограммировать на доступные контакты ЖК-дисплея. Это периферийное устройство может работать в режиме LPM3.5 (работает RTC+выключение ядра основного процессора в режиме низкого энергопотребления). [6]

Среда разработки программного обеспечения

Компания Texas Instruments предлагает различные платы для экспериментаторов , поддерживающие большие (около двух квадратных сантиметров) и маленькие (около одного квадратного миллиметра) чипы MSP430. TI также предоставляет средства разработки программного обеспечения как напрямую, так и совместно с партнерами (см. полный список компиляторов, ассемблеров и IDE). Одним из таких инструментов является компилятор IAR C/C++ и интегрированная среда разработки (IDE). Выпуск Kickstart можно бесплатно загрузить на сайтах TI или IAR; он ограничен 8 КБ кода C/C++ в компиляторе и отладчике ( с помощью этой бесплатной цепочки инструментов можно разрабатывать и отлаживать программы на ассемблере любого размера).

TI также объединяет версию своего собственного компилятора и инструментов со своей интегрированной средой разработки Code Composer Studio (CCS) на базе Eclipse . Он продает полнофункциональные версии и предлагает для загрузки бесплатную версию с ограничением размера кода в 16 КБ. CCS поддерживает внутрисхемные эмуляторы и включает в себя симулятор и другие инструменты; он также может работать с другими процессорами, продаваемыми TI.

Для тех, кому удобнее работать с Arduino , есть еще одно программное обеспечение Energia , платформа для прототипирования электроники с открытым исходным кодом, цель которой — перенести структуру Wiring и Arduino на панель LaunchPad на базе Texas Instruments MSP430, куда можно экспортировать код Arduino для программирования микросхем MSP430. . Последняя версия Energia поддерживает MSP-EXP430G2xxx, MSP-EXP430FR5739, MSP-EXP430FR5969, MSP-EXP430FR5994, MSP-EXP430F5529LP, Stellaris EK-LM4F120XL, Tiva-C EK-TM4C123GXL, Tiva-C EK-TM4C1294XL, CC3200 Wi-Fi Панель запуска. [7]

Сообщество открытого исходного кода создает свободно доступный набор инструментов для разработки программного обеспечения, основанный на наборе инструментов GNU . Компилятор GNU в настоящее время отклонен в трех версиях:

(МСПГКК)

(Униарх MSPGCC)

TI проконсультировалась с RedHat для предоставления официальной поддержки архитектуры MSP430 для компилятора GNU Compiler Collection C/C++. Этот компилятор msp430-elf-gcc поддерживается программой Code Composer Studio от TI версии 6.0 и выше.

Существует очень ранний проект llvm-msp430, который в конечном итоге может обеспечить лучшую поддержку MSP430 в LLVM .

Доступны и другие наборы инструментов коммерческой разработки, которые включают редактор, компилятор, компоновщик, ассемблер, отладчик и, в некоторых случаях, мастера кода. VisSim , язык блок-схем для разработки на основе моделей, генерирует эффективный C-код с фиксированной запятой непосредственно из диаграммы. [8] Сгенерированный VisSim код для ПИД-регулирования на основе АЦП+ШИМ с замкнутым контуром на F2013 компилируется во флэш-память размером менее 1 КБ и ОЗУ объемом менее 100 байт. [9] VisSim имеет встроенные периферийные блоки для всего семейства MSP430 I²C, АЦП, SD16, ШИМ.

Недорогие платформы разработки

MSP430F2013 и его братья и сестры отличаются тем, что (за исключением MSP430G2 Value Line) это единственная деталь MSP430, доступная в двухрядном корпусе (DIP). Другие варианты этого семейства доступны только в различных корпусах для поверхностного монтажа. TI приложила некоторые усилия, чтобы поддержать платформу разработки eZ430, упрощая использование сырых чипов любителями в прототипах.

eZ430-F2013

Компания TI решила проблему малобюджетности, предложив очень маленькую плату для экспериментаторов eZ430-F2013 на USB-накопителе (ныне устаревшая). Это позволило разработчикам легко выбрать чип MSP430 для недорогих платформ разработки, которые можно использовать с компьютером. eZ430-F2013 содержит микроконтроллер MSP430F2013 на съемной макетной плате и прилагаемый компакт-диск с программным обеспечением для разработки. Это полезно [ нужна ссылка ] для школ, любителей и изобретателей гаражей. Его также приветствуют [ нужна ссылка ] инженеры крупных компаний, создающих прототипы проектов с проблемами капитального бюджета.

Панель запуска MSP430

Texas Instruments выпустила MSP430 LaunchPad в июле 2010 года по цене 4,30 доллара. MSP430 LaunchPad имеет встроенный эмулятор флэш-памяти , USB , 2 программируемых светодиода и 1 программируемую кнопку. [10] В качестве дополнения к экспериментам с LaunchPad доступна плата защиты.

С тех пор компания TI представила несколько новых LaunchPad на базе платформы MSP430:

  • MSP-EXP430F5529LP оснащен микроконтроллером MSP430F5529 с поддержкой USB-устройств, флэш-памятью 128 КБ и SRAM 8 КБ.
  • MSP-EXP430FR5969 оснащен микроконтроллером MSP430FR5969 FRAM с 64 КБ FRAM и 2 КБ SRAM.
  • MSP-EXP430FR4133 оснащен микроконтроллером MSP430FR4133 FRAM с 16 КБ FRAM, 2 КБ SRAM и встроенным ЖК-дисплеем.
  • MSP-EXP430FR6989 оснащен микроконтроллером MSP430FR6989 FRAM с 128 КБ FRAM, 2 КБ SRAM, встроенным ЖК-дисплеем и периферийным устройством с расширенным интерфейсом сканирования.
  • MSP-EXP430FR2311 оснащен микроконтроллером MSP430FR2311 FRAM с 4 КБ FRAM, 1 КБ SRAM, операционным усилителем и периферийным устройством трансимпедансного усилителя.
  • MSP-EXP430FR2433 оснащен микроконтроллером MSP430FR2433 FRAM с 15,5 КБ FRAM и 4 КБ SRAM.
  • MSP-EXP430FR2355 оснащен микроконтроллером MSP430FR2355 FRAM с 32 КБ FRAM, 4 КБ SRAM, 12-битным АЦП, 12-битным ЦАП, OpAmp/PGA, ICC для вложенных прерываний.
  • MSP-EXP430FR5994 оснащен микроконтроллером MSP430FR5994 FRAM с 256 КБ FRAM, 8 КБ SRAM, 12-битным АЦП и периферийным устройством LEA DSP.

Все три LaunchPad оснащены JTAG-отладчиком eZ-FET с обратным каналом UART, обеспечивающим скорость 1 Мбит/с. Панели запуска FRAM (например, MSP-EXP430FR5969, MSP-EXP430FR4133) включают EnergyTrace, функцию, поддерживаемую интегрированной средой разработки Code Composer Studio TI для мониторинга и анализа энергопотребления.

Отладочный интерфейс

Как и другие производители микроконтроллеров, компания TI разработала двухпроводный интерфейс отладки, который можно найти в некоторых компонентах MSP430, который может заменить более крупный интерфейс JTAG. Инструмент разработки eZ430 содержит полнофункциональный инструмент эмуляции флэш-памяти (FET) с подключением через USB для этого нового двухпроводного протокола, названного TI Spy-Bi-Wire . Первоначально Spy-Bi-Wire был представлен только на самых маленьких устройствах семейства F2xx с ограниченным количеством контактов ввода-вывода, таких как MSP430F20xx, MSP430F21x2 и MSP430F22x2. Поддержка Spy-Bi-Wire была расширена с появлением новейшего семейства 5xx, в котором все устройства помимо JTAG поддерживают интерфейс Spy-Bi-Wire.

Преимущество протокола Spy-Bi-Wire в том, что он использует только две линии связи, одна из которых является выделенной линией _RESET. Интерфейс JTAG на компонентах MSP430 с меньшим количеством контактов мультиплексирован с линиями ввода-вывода общего назначения. Это делает относительно сложной отладку схем, построенных на небольших микросхемах с малым бюджетом ввода-вывода, поскольку полное 4-контактное оборудование JTAG будет конфликтовать с чем-либо еще, подключенным к этим линиям ввода-вывода. Эта проблема решена с помощью чипов с поддержкой Spy-Bi-Wire, которые по-прежнему совместимы с обычным интерфейсом JTAG для обратной совместимости со старыми инструментами разработки.

Инструменты отладки JTAG и флэш-программирования на основе OpenOCD, широко используемые в сообществе ARM-архитектур , недоступны для MSP430. Инструменты программирования, специально разработанные для MSP430, немного дешевле, чем интерфейсы JTAG, использующие OpenOCD. Однако если в середине проекта обнаружится, что требуется больше MIPS, больше памяти и больше периферийных устройств ввода-вывода, эти инструменты не будут перенесены на процессор от другого поставщика.

Процессор MSP430

ЦП MSP430 использует архитектуру фон Неймана с единым адресным пространством для инструкций и данных. Память имеет байтовую адресацию, и пары байтов объединяются с прямым порядком байтов для создания 16-битных слов .

Процессор содержит 16 16-битных регистров, [11] из которых четыре предназначены для специальных целей: R0 — счетчик программ , R1 — указатель стека , R2 — регистр состояния и R3 — «генератор констант», который читается как ноль и игнорирует записи. Добавленные кодировки режима адреса с использованием R3 и R2 позволяют использовать в общей сложности шесть часто используемых постоянных значений (0, 1, 2, 4, 8 и -1) без необходимости использования непосредственного операндового слова. R4–R15 доступны для общего использования.

Набор инструкций очень прост: существует 27 инструкций в трёх семействах. Большинство инструкций встречаются в версиях с суффиксом .B (8-битный байт) и .W (16-битное слово), в зависимости от значения бита B/W: бит установлен в 1 для 8-битного формата и в 0 для 16-битного. кусочек. Отсутствующий суффикс эквивалентен .W. Операции с байтами в памяти влияют только на адресованный байт, тогда как операции с байтами в регистрах очищают наиболее значимый байт.

Инструкции имеют длину 16 бит, за которыми следуют до двух 16-битных слов расширения. Режимы адресации задаются 2-битным полем As и 1-битным полем Ad. Некоторые специальные версии могут быть созданы с использованием R0, а режимы, отличные от прямого использования регистров с использованием R2 (регистр состояния) и R3 (генератор констант), интерпретируются особым образом. Объявление может использовать только подмножество режимов адресации для As.

В режимах индексированной адресации к инструкции добавляется 16-битное слово расширения. Если индексируются и источник, и место назначения, то слово расширения источника идет первым. x относится к следующему слову расширения в потоке команд в таблице ниже.

Инструкции обычно занимают 1 цикл на каждое слово, выбранное или сохраненное, поэтому время выполнения инструкций варьируется от 1 цикла для простой инструкции регистр-регистр до 6 циклов для инструкции с индексами источника и назначения.

Расширение MSP430X с 20-битной адресацией добавляет дополнительные инструкции, для которых может потребоваться до 10 тактов. Установка или очистка периферийного бита занимает два такта. Прыжок, совершенный или нет, занимает два часа. Для серии 2xx 2 MCLK составляют 125 нс на частоте 16 МГц.

Разрешены ходы к программному счетчику и выполнение прыжков. Возврат из подпрограммы, например, реализуется как MOV @SP+,PC .

Когда R0 (ПК) или R1 (SP) используются в режиме автоинкрементной адресации, они всегда увеличиваются на два. Остальные регистры (с R4 по R15) увеличиваются на размер операнда: 1 или 2 байта.

Регистр состояния содержит 4 арифметических бита состояния, разрешение глобального прерывания и 4 бита, которые отключают различные тактовые сигналы для перехода в режим пониженного энергопотребления. При обработке прерывания процессор сохраняет регистр состояния в стеке и очищает биты малой мощности. Если обработчик прерывания не изменяет сохраненный регистр состояния, возврат из прерывания приведет к возобновлению исходного режима пониженного энергопотребления.

Псевдооперации

Многие добавленные инструкции реализованы как псевдонимы вышеперечисленных форм. Например, конкретной инструкции «возврат из подпрограммы» нет, но она реализована как «MOV @SP+,PC». Эмулированные инструкции:

Обратите внимание, что непосредственные константы −1 (0xffff), 0, 1, 2, 4 и 8 могут быть указаны в однословной инструкции без необходимости использования отдельного непосредственного операнда.

20-битное расширение MSP430X

Базовый MSP430 не может поддерживать больше памяти (ПЗУ + ОЗУ + периферийные устройства), чем его адресное пространство 64 КБ. Для этого расширенная версия MSP430 использует 20-битные регистры и 20-битное адресное пространство, что позволяет использовать до 1 МБ памяти. Здесь используется тот же набор команд, что и в базовой форме, но с двумя расширениями:

  1. Ограниченное количество 20-битных инструкций для общих операций и
  2. Общий механизм префиксных слов, который может расширить любую инструкцию до 20 бит.

Расширенные инструкции включают некоторые дополнительные возможности, в частности многобитовые сдвиги и операции загрузки/сохранения нескольких регистров.

20-битные операции используют суффикс длины «A» (для адреса) вместо .B или .W. .W по-прежнему используется по умолчанию. Обычно более короткие операции очищают старшие биты регистра назначения.

Новые инструкции заключаются в следующем:

Ко всем остальным инструкциям можно добавить префиксное слово, которое расширяет их длину до 20 бит. Слово префикса содержит добавленный бит размера операнда, который объединяется с существующим битом B/W для указания размера операнда. Существует одна неиспользованная комбинация размеров; признаки позволяют предположить, что в будущем его можно будет использовать для 32-битного размера операнда. [12]

Префиксное слово имеет два формата, и выбор между ними зависит от следующей инструкции. Если инструкция имеет какие-либо нерегистровые операнды, то используется простая форма, которая предоставляет два 4-битных поля для расширения любого смещения или непосредственной константы в потоке команд до 20 бит.

Если инструкция является межрегистровой, используется другое слово расширения. Сюда входит флаг «ZC», который подавляет перенос (полезно для таких инструкций, как DADD, которые всегда используют бит переноса), и счетчик повторений. 4-битное поле в слове расширения кодирует либо счетчик повторений (0–15 повторений в дополнение к начальному выполнению), либо номер регистра, который содержит 4-битный счетчик повторений.

Адресное пространство MSP430

Общая структура адресного пространства MSP430:

0x0000–0x0007
Регистры специальных функций процессора (регистры управления прерываниями)
0x0008–0x00FF
8-битная периферия. Доступ к ним должен осуществляться с использованием 8-битных загрузок и хранилищ.
0x0100–0x01FF
16-битная периферия. Доступ к ним должен осуществляться с использованием 16-битных загрузок и хранилищ.
0x0200–0x09FF
До 2048 байт оперативной памяти .
0x0C00–0x0FFF
1024 байта ПЗУ загрузчика начальной загрузки (только флэш-части).
0x1000–0x10FF
256 байт флэш-ПЗУ данных (только флэш-память).
0x1800-0x19FF
512 байт данных FRAM (большинство микроконтроллеров FRAM, записываемые пользователем, не содержат калибровочных данных)
0x1100–0x38FF
Расширенная оперативная память на моделях с объемом оперативной памяти более 2048 байт. (0x1100–0x18FF — копия 0x0200–0x09FF)
0x1100–0xFFFF
До 60 килобайт ПЗУ программы. ПЗУ меньшего размера начинаются с более высоких адресов. Последние 16 или 32 байта являются векторами прерываний .

Некоторые модели включают более 2048 байт оперативной памяти; в этом случае ОЗУ начинается с адреса 0x1100. Первые 2048 байт (0x1100–0x18FF) зеркалируются по адресам 0x0200–0x09FF для совместимости. Кроме того, некоторые последние модели нарушают правила 8-битных и 16-битных периферийных устройств, обеспечивая 16-битный доступ к периферийным устройствам в 8-битном диапазоне периферийных адресов.

Существует новая расширенная версия архитектуры (названная MSP430X), которая допускает 20-битное адресное пространство . Это позволяет добавлять ПЗУ программы, начиная с 0x10000.

Серия '5xx имеет значительно переработанное адресное пространство: первые 4 КБ предназначены для периферийных устройств и до 16 КБ оперативной памяти.

Рекомендации

  1. Эванчук, Стивен (20 августа 2013 г.). «Слайд-шоу: самые популярные MCU за всю историю». edn.com . Сеть дизайнеров электроники . Проверено 3 сентября 2020 г. .
  2. ^ MSP430 будет работать на винограде – видео на YouTube
  3. ^ «Методика однотактного аналого-цифрового преобразования с использованием микроконтроллеров MSP430™» (PDF) . Инструменты Техаса . 2017. Архивировано (PDF) из оригинала 3 февраля 2023 года . Проверено 3 сентября 2023 г.
  4. ^ ab Д. Петерс, Д. Рашкович и Д. Торсен, «Энергоэффективная параллельная встраиваемая система для приложений малых спутников», ISAST Transactions on Computers and Intelligent Systems , vol. 1(2), 2009 г.
  5. ^ Микроконтроллеры MSP430 с самым низким энергопотреблением от Texas Instruments
  6. ^ ab [1] (стр. 43) [ пустой URL-адрес PDF ]
  7. ^ http://www.energia.nu, сайт Энергии.
  8. ^ Статья MSP430 [ постоянная мертвая ссылка ], опубликованная в журнале IEEE .
  9. ^ Визуальные решения
  10. ^ MSP430 LaunchPad (MSP-EXP430G2), Wiki по встроенным процессорам Texas Instruments
  11. ^ «Микроконтроллер сверхмалого энергопотребления MSP430» (PDF) . Инструменты Техаса . Проверено 9 июля 2008 г.[ постоянная мертвая ссылка ]
  12. ^ Бит размера называется A/L, где L(long) используется другими процессорами для обозначения 32-битных операндов. Также описание инструкции SXTX (Руководство пользователя семейства MSP430F5xx alau208f, стр. 237) описывает действие инструкции в битах регистра 20–31.

Внешние ссылки

Сообщество и информационные сайты

Генераторы кода C для визуального программирования

Компиляторы, ассемблеры и IDE

  Бесплатный компилятор и IDE

  • Ардуино IDE Ардуино IDE
  • Code Composer Studio IDE на базе Eclipse
  • Облачная студия Code Composer
  • IAR Embedded Workbench Kickstart IDE (размер ограничен 4/8/16 КБ – зависит от используемого устройства)
  • Набор инструментов GCC для микроконтроллеров MSP430
  • Система разработки MSP430
  • naken_asm Ассемблер, дизассемблер, симулятор MSP430 с открытым исходным кодом.
  • Готовые двоичные файлы MSP430 GCC 4.x для Windows
  • MSP430 16-битный компилятор noForth С ассемблером, дизассемблером и исходниками.
  • FastForth с терминалом 5 МБдс, ассемблером, драйвером SD_Card...

  Самые популярные неограниченные IDE и компиляторы

  • Встроенная рабочая среда IAR для TI MSP430
  • Rowley CrossWorks для MSP430 (только 30-дневный ознакомительный период)
  • Набор инструментов GCC для микроконтроллеров MSP430 (бесплатный компилятор C)
  • Система разработки MSP430
  • Плагин для Visual Studio, поддерживающий MSP430 через MSP430-GCC (30-дневная ознакомительная версия).

  Разные IDE

  • Инструменты разработки AQ430 для микроконтроллеров MSP430
  • Инструменты ImageCraft C
  • ForthInc Форт-компилятор
  • MPE Forth IDE и кросс-компилятор для MSP430 в настоящее время находятся в бета-версии
  • HI-TECH C для MSP430 (поддержка MSP430 прекращена в 2009 г.)

Список инструментов отладки (не полный)

Другие инструменты