Микропроцессоры и микроконтроллеры

 
 
 
«Отладка кода вдвое сложнее, чем его написание. Так что если вы пишете код настолько умно, насколько можете, то вы по определению недостаточно сообразительны, чтобы его отлаживать.»
Brian W. Kernighan.
Русский | Українська


Микропроцессоры и микроконтроллеры :: Статьи :: 16-разрядные приборы MSP430F20XX -кардинальное обновление рынка микроконтроллеров.Часть третья

16-разрядные приборы MSP430F20XX -кардинальное обновление рынка микроконтроллеров.Часть третья

Выпускаемые на сегодняшний день приборы класса «микроконвертор» в основном имеют 8-разрядное процессорное ядро, совместимое со стандартом 8051, с производительностью 8-12 MIPS и 12/16/24-разрядный модуль АЦП. Это, прежде всего, семейство MSC12xx фирмы Texas Instruments и семейство ADuC8xx фирмы Analog Devices. Исключение составляют приборы семейства ADuC70xx фирмы Analog Devices с 16/32-разрядным процессорным ядром ARM7TDMI, однако у них имеется только 12-разрядный модуль АЦП.

Таким образом, приборы MSP430F20xx, имеющие на кристалле 16-разрядное процессорное ядро с тактовой частой до 16 МГц и 16-разрядный модуль АЦП, являются шагом вперед на рынке МК смешанных сигналов (микроконверторов).

Архитектура MSP430F20xx, обеспечивающая возможность МК функционировать в пяти различных режимах потребления мощности, в сочетании с чрезвычайно низким базовым энергопотреблением позволяет с успехом применять эти приборы в приложениях с автономным (батарейным) питанием, для которых, собственно, они и создавались.

Встроенный управляемый цифровым кодом генератор (DCO) позволяет производить «пробуждение» МК из режимов с низким

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

Типичным приложением для MSP430F20xx является система сбора данных, которая фиксирует аналоговые сигналы, преобразует их в цифровую форму, а затем обрабатывает эти данные для индикации или для передачи в ведущую систему. Другое приложение MSP430F20xx — автономная «головная» часть интеллектуального датчика, связанного с ведущей системой по радиоканалу.

Следует заметить, что ввиду небольшого количества линий ввода-вывода общего назначения и малого объема памяти программ устройства MSP430F20xx целесообразно использовать в небольших приложениях.

Для получения дополнительной информации о приборах MSP430F20xx рекомендуется обратиться к источнику [1].

ПРОЦЕССОРНОЕ ЯДРО

И ПРОГРАММНАЯ МОДЕЛЬ

MSP430F20XX

Процессорное ядро MSP430F20xx имеет 16-разрядную RISC-архитектуру и систему команд, состоящую из 51 инструкции. Каждая команда имеет три формата и может оперировать с данными размером в байт и в слово. Для операнда источника в команде имеется семь способов адресации, а для операнда приемника — четыре. Ядро интегрировано с шестнадцатью 16-разрядными регистрами, из которых четыре специализированы как программный счетчик, указатель вершины стека, регистр состояния и генератор констант. Остальные регистры образуют регистровый файл аккумуляторов, используемый для ускорения выполнения программы. Одна команда формата «регистр-регистр» выполняется ядром за один цикл тактовой частоты. Таким образом, удельная пиковая производительность ядра MSP430F20xx состав-

ляет 1 MIPS/МГц, а абсолютная пиковая производительность — 16 MIPS.

Программная модель MSP430F20xx предполагает единое адресное пространство для регистров специального назначения (РСН), RAM и Flash-памяти команд и данных. Область 8- и 16-разрядных РСН занимает пространство адресов 01FFh-0000h, область RAM — пространство 027Fh-0200h, область Flash-памяти данных — пространство OlOFFh-OlOOOh, а область Flash-памяти программ — OFFFFh-OFCOOh или 0FFFFh-0F800h в зависимости от конкретного устройства. Векторы прерывания и вектор сброса расположены во Flash-памяти программ в адресном интервале OFFFFh-OFFCOh. После сброса ядро начинает выполнять программу с адреса OFFFEh.

FLASH-ПАМЯТЬ MSP430F20XX

Flash-память устройств MSP430F20xx может быть запрограммирована через встроенный порт Spy-Bi-Wire/JTAG или непосредственно в системе средствами встроенной управляющей программы. При внутрисистемном программировании Flash-память доступна для модификации побайтно и пословно.

Flash-память состоит из главной памяти (программ) размером 1 Кбайт/2 Кбайт и информационной памяти (данных) размером 256 байт. Главная память состоит из п сегментов по 512 байт, а информационная — из четырех сегментов (от А до D) по 64 байта.

Стирание главной памяти может производиться целиком или посегментно, а информационной памяти — только посегментно. Сегмент А информационной памяти содержит данные калибровки и после сброса по умолчанию защищен от программирования и стирания.

Типичное время полного стирания Flash-памяти составляет 20 мс, время программирования сегмента — 10 мс. Flash-память допускает 10000 циклов программирования/ стирания, а время сохранности

данных при номинальной температуре составляет 100 лет.

ГЕНЕРАТОРЫ И СИСТЕМНЫЕ СИНХРОСИГНАЛЫ

Система синхронизации устройств MSP430F20xx образована основным модулем синхронизации, который включает в себя кварцевый генератор с частотой 32768 Гц, внутренний низкочастотный генератор с очень низким энергопотреблением и внутренний управляемый цифровым кодом генератор (DCO).

Основной модуль синхронизации вырабатывает следующие синхросигналы:

• Вспомогательная тактовая частота (ACLK), источником которой является кварцевый генератор с частотой 32768 Гц или внутренний низкочастотный малопотребляющий генератор.

• Основная тактовая частота (MCLK), используемая для тактирования процессорного ядра.

• Периферийная тактовая частота (SMCLK), используемая для тактирования периферийных модулей МК.