Из Википедии, свободной энциклопедии
Перейти к навигации Перейти к поиску

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 также использует шесть различных режимов пониженного энергопотребления, которые могут отключить ненужные тактовые частоты и ЦП. Кроме того, MSP430 способен просыпаться со временем менее 1 микросекунды, что позволяет микроконтроллеру дольше оставаться в спящем режиме, сводя к минимуму его среднее потребление тока. Устройство поставляется в различных конфигурациях с обычными периферийными устройствами: внутренний генератор , таймер, включая ШИМ , сторожевой таймер , USART , SPI , I²C., 10/12/14/16/24-битные АЦП и схему сброса при пониженном напряжении . Некоторые менее обычные периферийные опции включают компараторы (которые могут использоваться с таймерами для создания простого АЦП), операционные усилители на кристалле для преобразования сигнала , 12-битный ЦАП , драйвер ЖК-дисплея , аппаратный умножитель , USB и DMA для результатов АЦП. За исключением некоторых более старых версий СППЗУ (MSP430E3xx) и ПЗУ с маской большого объема (MSP430Cxxx), все устройства можно программировать в системе через JTAG (полный четырехпроводной илиSpy-Bi-Wire ), встроенный загрузчик начальной загрузки (BSL), использующий UART, такой как RS232 , или USB на устройствах с поддержкой USB. (BSL не входит в состав устройств семейств F20xx, G2xx0, G2xx1, G2xx2 и I20xx.)

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

Поколения MSP430 [ править ]

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

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

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

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

Серия MSP430x1xx [ править ]

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

  • Обзор характеристик мощности, начиная с:
    • Сохранение ОЗУ 0,1 мкА
    • 0,7 мкА в режиме часов реального времени
    • 200 мкА / MIPS в активном состоянии
    • Быстрый выход из режима ожидания менее чем за 6 мкс.
  • Параметры устройства
    • Варианты Flash: 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 мкс
  • Параметры устройства
    • Варианты Flash: 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 мкс
  • Параметры устройства
    • Варианты Flash: 0,5–56 КБ
    • Варианты ОЗУ: 128–4 КБ
    • Варианты GPIO: 10, 16, 24, 32 контакта
    • Варианты АЦП: наклон, 10-битный SAR
    • Другие интегрированные периферийные устройства: емкостный сенсорный ввод / вывод, до 3-х 16-битных таймеров, сторожевой таймер, сброс аварийного отключения, модуль USI (I²C, SPI), модуль USCI, Comparator_A +, датчик температуры

Серия MSP430x3xx [ править ]

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

  • Обзор характеристик мощности, начиная с:
    • Сохранение ОЗУ 0,1 мкА
    • 0,9 мкА в режиме часов реального времени
    • 160 мкА / MIPS в активном состоянии
    • Быстрый выход из режима ожидания менее чем за 6 мкс.
  • Параметры устройства:
    • Варианты ПЗУ: 2–32 КБ
    • Варианты RAM: 512 B – 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 мкс.
  • Параметры устройства:
    • Варианты Flash / ROM: 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, множитель 16x16 и 32x32, Comparator_A, датчик температуры, скорость процессора 8 MIPS

Серия MSP430x5xx [ править ]

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

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

Серия MSP430x6xx [ править ]

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

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

Серия RF SoC (CC430) [ править ]

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

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

Серия FRAM [ править ]

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

  • Обзор характеристик мощности, начиная с:
    • Сохранение ОЗУ 320 нА
    • 0,35 мкА в режиме часов реального времени
    • 82 мкА / MIPS в активном состоянии
  • Параметры устройства:
    • Варианты скорости: от 8 до 24 МГц
    • Параметры FRAM: от 4 до 256 КБ
    • Варианты RAM: от 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, ускорение обработки сигнала, емкостное касание, ИК-модуляция

Серия низкого напряжения [ править ]

Серия Low Voltage включает детали MSP430C09x и MSP430L092. Эти 2 серии низковольтных 16-битных микроконтроллеров имеют конфигурации с двумя 16-битными таймерами, 8-битным аналого-цифровым (A / D) преобразователем, 8-битным цифро-аналоговым (D / A) преобразователем, и до 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). Для получения дополнительной информации см. « Бесконтактное питание» [ постоянная мертвая ссылка ] .

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

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

  • Определения устройств:
    • HT: от -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, а регистры управления переназначены для обеспечения большего количества пар портов. Каждый порт управляется следующими регистрами. Порты, которые не реализуют определенные функции (такие как прерывание при изменении состояния), не реализуют соответствующие регистры.

P x IN
Порт x вход. Это регистр только для чтения, он отражает текущее состояние контактов порта.
P x OUT
Выход порта x . Значения, записанные в этот регистр чтения / записи, выводятся на соответствующие выводы, когда они настроены на вывод.
P x DIR
Порт x направление данных. Биты, записанные как 1, настраивают соответствующий вывод для вывода. Биты, записанные как 0, настраивают контакт для ввода.
P x SEL
Выбор функции порта x . Биты, записанные как 1, настраивают соответствующий вывод для использования специализированным периферийным устройством. Биты, записанные как 0, настраивают вывод для ввода-вывода общего назначения. Порт 0 (только части 3xx) не мультиплексирован с другими периферийными устройствами и не имеет регистра P0SEL.
P x REN
Включение резистора порта x (только '2xx и' 5xx). Биты, установленные в этом регистре, включают слабые подтягивающие или понижающие резисторы на соответствующих выводах ввода / вывода, даже если они сконфигурированы как входы. Направление вытягивания устанавливается битом, записанным в регистр P x OUT.
P x DS
Мощность диска порта x (только '5xx). Биты, установленные в этом регистре, разрешают сильноточные выходы. Это увеличивает выходную мощность, но может вызвать электромагнитные помехи .

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

P x IES
Выбор фронта прерывания порта x . Выбирает фронт, при котором будет установлен бит P x IFG. Когда входной бит изменяется с совпадающего с состоянием P x IES на несоответствие (т. Е. Всякий раз, когда бит в P x IES XOR P x IN изменяется с очищенного на установленный), устанавливается соответствующий бит P x IFG.
P x IE
Разрешение прерывания порта x . Когда этот бит и соответствующий бит P x IFG установлены, генерируется прерывание.
P x IFG
Флаг прерывания порта x . Устанавливается всякий раз, когда соответствующий вывод выполняет изменение состояния, запрошенное P x IES. Можно очистить только программно. (Также можно установить с помощью программного обеспечения.)
P x 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 или датчик температуры. Это позволяет пользователю гибко программировать серию аналоговых функций с помощью только одной настройки.
  • Компаратор A, A +
Модуль компаратора MSP430 обеспечивает точное аналого-цифровое преобразование крутизны. Контролирует внешние аналоговые сигналы и обеспечивает измерение напряжения и сопротивления резистора. Возможность выбора режимов мощности.
  • DAC12
Модуль DAC12 представляет собой 12-битный, напряжения выходного сигнал ЦАП показывая внутренний / внешний выбор эталонного и программируемое время установления для оптимального энергопотребления. Его можно настроить в 8- или 12-битном режиме. Когда присутствует несколько модулей DAC12, они могут быть сгруппированы вместе для операции синхронного обновления.
  • Операционные усилители
Однополярное питание, слаботочная работа с выходами Rail-to-Rail и программируемым временем установления. Программно выбираемые параметры конфигурации: режим единичного усиления, режим компаратора, инвертирующий PGA, неинвертирующий PGA, дифференциальный и инструментальный усилитель.
  • Сигма-дельта (SD)
Каждый модуль SD16 / SD16_A / SD24_A оснащен 16- / 24-битными сигма-дельта-аналого-цифровыми преобразователями с внутренним опорным напряжением 1,2 В. Каждый преобразователь имеет до восьми полностью дифференциальных мультиплексированных входов, включая встроенный датчик температуры. Преобразователи представляют собой сигма-дельта модуляторы с передискретизацией второго порядка с выбираемыми коэффициентами передискретизации до 1024 (SD16_A / SD24_A) или 256 (SD16).
Таймеры
  • Базовый таймер (BT)
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 +)
WDT + выполняет управляемый перезапуск системы после возникновения программной проблемы. По истечении выбранного временного интервала производится сброс системы. Если функция сторожевого таймера в приложении не требуется, модуль можно настроить как интервальный таймер и генерировать прерывания через выбранные интервалы времени.
Система
  • Расширенный стандарт шифрования (AES)
Модуль ускорителя AES выполняет шифрование и дешифрование 128-битных данных с помощью 128-битных ключей в соответствии с передовым стандартом шифрования в оборудовании и может быть настроен с помощью программного обеспечения пользователя.
  • Сброс при отключении питания (BOR)
Схема BOR обнаруживает низкие напряжения питания и сбрасывает устройство, инициируя сигнал сброса при включении питания (POR) при подаче или отключении питания. Цепь нулевого энергопотребления микроконтроллера MSP430 BOR постоянно включена, в том числе во всех режимах с низким энергопотреблением.
  • Контроллер прямого доступа к памяти (DMA)
Контроллер DMA передает данные с одного адреса на другой по всему диапазону адресов без вмешательства процессора. DMA увеличивает пропускную способность периферийных модулей и снижает энергопотребление системы. Модуль имеет до трех независимых каналов передачи.
Хотя подсистема DMA в MSP430 очень способна, у нее есть несколько недостатков, наиболее значительный из которых - отсутствие внешнего строба передачи. Хотя передача DMA может быть запущена извне, нет никакой внешней индикации завершения передачи. Следовательно, прямой доступ к памяти к внешним источникам и от них ограничен внешним запуском для каждой байтовой передачи, а не полными блоками автоматически через DMA. Это может привести к значительной сложности (например, к необходимости обширной ручной настройки кода) при реализации связи от процессора к процессору или от процессора к USB. [3] В цитируемой ссылке используется режим скрытого таймера для генерации высокоскоростных стробов для передач 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)
FRAM MPU защищает от случайной записи в указанные сегменты памяти только для чтения или выполнения кода из постоянной памяти. MPU может устанавливать любое разделение памяти с адресацией на уровне битов, делая всю память доступной для операций чтения, записи и выполнения в устройствах FRAM.
  • Модуль управления питанием (PMM)
PMM генерирует напряжение питания для логики ядра и предоставляет несколько механизмов для наблюдения и мониторинга как напряжения, приложенного к устройству, так и напряжения, генерируемого для ядра. Он интегрирован с регулятором напряжения с малым падением напряжения (LDO), сбросом при пониженном напряжении (BOR), а также контроллером и монитором напряжения питания.
  • Контроллер напряжения питания (SVS)
SVS - это настраиваемый модуль, используемый для контроля напряжения питания AVCC или внешнего напряжения. SVS может быть сконфигурирован для установки флага или генерации сброса при включении питания (POR), когда напряжение питания или внешнее напряжение падает ниже порогового значения, выбранного пользователем.
Связь и интерфейс
  • Емкостные входы / выходы Touch Sense
Встроенный емкостный модуль ввода-вывода с сенсорным управлением предлагает несколько преимуществ для приложений с сенсорными кнопками и сенсорных ползунков. Система не требует внешних компонентов для создания автоколебаний (уменьшение количества материалов), а конденсатор (который определяет частоту автоколебаний) может быть подключен напрямую. Кроме того, нет необходимости во внешних мультиплексорах, позволяющих использовать несколько пэдов, и каждая пэд ввода-вывода может непосредственно служить входом для определения ограничения. Гистерезис ~ 0,7 В обеспечивает надежную работу. Контроль и секвенирование полностью выполняются программно.
  • Входы / выходы общего назначения
В устройствах MSP430 реализовано до 12 цифровых портов ввода / вывода. Каждый порт имеет восемь контактов ввода / вывода. Каждый вывод ввода / вывода может быть сконфигурирован как вход или выход и может быть индивидуально прочитан или записан. Порты P1 и P2 имеют возможность прерывания. MSP430F2xx, F5xx и некоторые устройства F4xx имеют встроенные, индивидуально настраиваемые подтягивающие или понижающие резисторы.
  • Передняя часть RF суб-ГГц
Гибкий приемопередатчик CC1101 с частотой менее 1 ГГц обеспечивает чувствительность и характеристики блокировки, необходимые для обеспечения успешных каналов связи в любой радиочастотной среде. Он также отличается низким потреблением тока и поддерживает гибкие скорости передачи данных и форматы модуляции.
  • USART (UART, SPI, I²C)
Универсальный периферийный интерфейс синхронного / асинхронного приема / передачи (USART) поддерживает асинхронную связь RS-232 и синхронный SPI с одним аппаратным модулем. Модули USART MSP430F15x / 16x также поддерживают I²C, программируемую скорость передачи и возможность независимого прерывания для приема и передачи.
  • USB
Модуль USB полностью соответствует спецификации USB 2.0 и поддерживает управление, прерывание и массовую передачу данных со скоростью 12 Мбит / с (полная скорость). Модуль поддерживает операции приостановки, возобновления и удаленного пробуждения по USB и может быть настроен для работы с восемью входными и восемью выходными конечными точками. Модуль включает в себя интегрированный физический интерфейс (PHY); контур фазовой автоподстройки частоты (PLL) для генерации тактовых импульсов USB; а также гибкая система питания, позволяющая использовать устройства с питанием от шины и с автономным питанием.
  • USCI (UART, SPI, I²C, LIN, IrDA)
Модуль универсального интерфейса последовательной связи (USCI) имеет два независимых канала, которые можно использовать одновременно. Асинхронный канал (USCI_A) поддерживает режим UART; Режим SPI; формирование импульсов для ИК-порта; и автоматическое определение скорости передачи для связи LIN. Синхронный канал (USCI_B) поддерживает режимы I²C и SPI.
  • USI (SPI, I²C)
Модуль универсального последовательного интерфейса (USI) представляет собой интерфейс синхронной последовательной связи с длиной данных до 16 бит и может поддерживать связь SPI и I²C с минимальным программным обеспечением.
  • Инфракрасная модуляция
Эта функция, доступная в микросхемах серий MSP430FR4xxx и MSP430FR2xxx, настраивается с помощью набора регистров SYSCFG. Это периферийное устройство подключается к другим периферийным устройствам (таймерам, eUSCI_A) для генерации модулированного ИК-сигнала на выходном контакте. [5] (стр. 43)
Измерение
  • ESP430 (встроен в устройства FE42xx)
Модуль ESP430CE выполняет расчетные измерения независимо от ЦП. Модуль имеет отдельный SD16, аппаратный умножитель и встроенный процессор ESP430 для однофазных приложений измерения энергии.
  • Интерфейс сканирования (SIF)
Модуль SIF, программируемый конечный автомат с аналоговым интерфейсом, используется для автоматического измерения линейного или вращательного движения с минимально возможным энергопотреблением. Модуль поддерживает различные типы ЖК-датчиков и резистивных датчиков, а также квадратурное кодирование.
Отображать
  • LCD / LCD_A / LCD_B
Контроллер LCD / LCD_A напрямую управляет ЖК-дисплеями до 196 сегментов. Поддерживает статические, 2-мультиплексные, 3-мультиплексные и 4-мультиплексные ЖК-дисплеи. Модуль LCD_A имеет встроенный нагнетательный насос для контроля контрастности. LCD_B включает мигание отдельных сегментов с отдельной мигающей памятью.
  • LCD_E
Контроллер LCD_E поставляется с новыми микроконтроллерами серии MSP430FR4xxx и напрямую управляет ЖК-дисплеями с количеством сегментов до 448. Поддержка статических, 2-мультиплексных, 3-мультиплексных, 4-мультиплексных, 5-мультиплексных, 6-мультиплексных, 7-мультиплексных, 8-мультиплексных (смещение 1/3) ЖК-дисплеев. Сегментные и общие выводы можно перепрограммировать на доступные выводы привода ЖК-дисплея. Это периферийное устройство может работать в режиме LPM3.5 (работает RTC + режим пониженного энергопотребления при выключении ядра ЦП). [5]

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

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

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

Для тех, кому удобнее работать с Arduino , есть еще одно программное обеспечение Energia Energia , платформа для создания прототипов электроники с открытым исходным кодом, цель которой - перенести структуру Wiring и Arduino на LaunchPad Texas Instruments на базе MSP430, где можно экспортировать код Arduino для программирования MSP430. чипсы. Последняя версия Energia поддерживает MSP-EXP430G2xxx, MSP-EXP430FR5739, MSP-EXP430FR5969, MSP-EXP430FR5994, MSP-EXP430F5529LP, Stellaris EK-LM4F120XL, Tiva-C123G-EK-TM4C-WiFi CC-C123C-EK-TM4. [6]

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

( MSPGCC )

( MSPGCC Uniarch )

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

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

Доступны другие наборы коммерческих инструментов разработки, которые включают редактор, компилятор, компоновщик, ассемблер, отладчик и в некоторых случаях мастера кода. VisSim , язык блок-схем для разработки на основе моделей, генерирует эффективный C-код с фиксированной запятой непосредственно из диаграммы. [7] VisSim сгенерированный код для замкнутого контура на основе АЦП + ШИМ управления PID на F2013 компилируется до менее чем 1 Кбайт флэш - памяти и 100 байт RAM. [8] VisSim имеет встроенные периферийные блоки для всего семейства MSP430: I²C, ADC, SD16, PWM.

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

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

eZ430-F2013 [ редактировать ]

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

MSP430 LaunchPad [ править ]

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

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

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

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

Интерфейс отладки [ править ]

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

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

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

CPU MSP430 [ править ]

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

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

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

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

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

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

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

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

Когда R0 (PC) или 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 бит. Слово префикса содержит дополнительный бит размера операнда, который комбинируется с существующим битом Ч / Б для определения размера операнда. Есть одна неиспользованная комбинация размеров; есть признаки того, что это может быть использовано в будущем для 32-битного размера операнда. [11]

Слово префикса бывает двух форматов, и выбор между ними зависит от следующей инструкции. Если в инструкции есть какие-либо не регистровые операнды, то используется простая форма, которая предоставляет 2 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 байт ОЗУ; в этом случае RAM начинается с 0x1100. Первые 2048 байтов (0x1100–0x18FF) зеркалируются по адресу 0x0200–0x09FF для совместимости. Кроме того, некоторые последние модели изменяют правила для 8-битных и 16-битных периферийных устройств, обеспечивая 16-битный доступ к периферийным устройствам в 8-битном диапазоне периферийных адресов.

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

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

Ссылки [ править ]

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

Внешние ссылки [ править ]

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

  • Домашняя страница TI MSP430
  • Совет по развитию MSP430 TITAN
  • Форум сообщества TI E2E MSP430
  • Сообщество MSP430 при поддержке Texas Instruments
  • MSP430 Yahoo! Группа
  • MSP430.info
  • MSP430 Англо-японский форум
  • 43oh.com - Новости, проекты и форумы MSP430
  • TinyOS-MSP430 Порт TinyOS
  • Страницы проекта MSP430 Egel - Около 50 примеров с источниками, схемами, хорошо документированными.

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

  • Встраиваемая система разработки на основе модели VisSim MSP430

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

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

  • IDE Arduino IDE Arduino
  • Code Composer Studio IDE на основе Eclipse
  • Code Composer Studio Cloud
  • 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 Forth-компилятор
  • Среда разработки и кросс-компилятор MPE Forth для MSP430 в настоящее время находится в стадии бета-тестирования
  • HI-TECH C для MSP430 (поддержка MSP430 прекращена в 2009 г.)

Список средств отладки (неполный) [ править ]

Другие инструменты [ править ]

  • WSim - программный эмулятор для полной оценки платформы и отладки
  • MSPSim - эмулятор / симулятор MSP430 на базе Java
  • MSP430Static - инструмент обратного проектирования на Perl
  • GoodFET - открытый отладчик MSP430 JTAG на C и Python
  • mspdebug - отладчик MSP430 JTAG с открытым исходным кодом
  • Trace32 MSP430 SIM - зона загрузки с симулятором набора инструкций MSP430, бесплатная для ознакомления
  • ERIKA Enterprise - бесплатная реализация ОСРВ с открытым исходным кодом API ISO 17356 (полученная из OSEK / VDX API)
  • Energia основана на Wiring и Arduino и использует Processing IDE. Аппаратная платформа основана на TI MSP430 LaunchPad.