Flash-микроконтроллеры MAX7651 и MAX7652
с 12-разрядным АЦП
Несмотря на наличие большого числа новомодных семейств микроконтроллеров, мировые производители микросхем продолжают выпускать микроконтроллеры с традиционной структурой MCS-51 и расширенными периферийными функциями. Наличие необходимых периферийных модулей и достоинства классической архитектуры микроконтроллеров позволяют широко применять их в новых разработках, особенно в портативных системах сбора данных. Примером могут служить Flash-микроконтроллеры фирмы MAXIM — MAX7651 и MAX7652 с интегрированным 12-разрядным АЦП.
Микроконтроллеры MAX7651 и MAX7652 имеют ядро промышленного стандарта 8051 и расширенный набор периферийных модулей: АЦП, ШИМ (ЦАП), таймеры, различные порты ввода-вывода. Упрощенная структурная схе-
ма микроконтроллеров MAX7651 и MAX7652 показана на рис. 1.
![Упрощенная структурная схема микроконтроллеров MAX7651 и MAX7652](/images/arhiv/02_07/58_1.gif)
Основные характеристики:
- Тип ядра (промышленный стандарт) - 8051
- Объем внутренней Flash-памяти программ - 8 КБ
- Адресуемая внешняя память программ - 64 КБ
- Объем памяти данных - 256 Б
- Максимальная тактовая частота - 12 МГц
- Выполнение команд за 4 машинных цикла микроконтроллера
- Номинальное напряжение питания:
- MAX7651 - 5 В
- MAX7652 - 3 В
- Корпус - 64-выводной TQFP
Периферийные модули:
- 12-разрядный АЦП последовательного приближения с полными дифференциальными входами;
- два 8-разрядных ШИМ-модуля (ЦАП);
- три таймера общего назначения;
- четыре параллельных порта ввода-вывода;
- два последовательных порта;
- контроллер прерываний;
- программируемый сторожевой таймер.
Микроконтроллеры MAX7651 и MAX7652 имеют малое энергопотребление и несколько режимов энергосбережения. Ток потребления модуля АЦП в режиме преобразования — 2 мА, а ток потребления микроконтроллеров при непрерывном выполнении преобразований АЦП и тактовой частоте 12 МГц составляет 5 мА (напряжение питания 3 В).
Для снижения энергопотребления, когда ядро микроконтроллера простаивает, предусмотрено два режима энергосбережения:
- Режим ожидания. В этом режиме работа ядра микроконтроллера приостановлена, внутренние регистры не изменяют своего состояния. Отличием от традиционных микроконтроллеров с ядром 8051 является то, что при переходе в режим ожидания тактовый генератор не выключается (вход внешнего тактового сигнала не заблокирован). Это дает возможность после возникновения прерывания, выводящего микроконтроллер из режима ожидания, быстро перейти к выполнению программы.
- Режим остановки. В этом режиме тактовый генератор выключен (вход внешнего тактового сигна-
ла заблокирован), ядро микроконтроллера остановлено, аналоговые модули выключены. Микроконтроллер потребляет минимальный ток (только токи утечки), единственный способ выхода из этого режима — сброс микроконтроллера.
MAX7652 и MAX7652 позволяют подключать ко входам XLAT1 и XLAT кварцевый резонатор с резонансной частотой от 1 до 12 МГц, что дает возможность формировать тактовый сигнал без реализации внешнего тактового генератора.
Рассмотрим более подробно некоторые особенности микроконтроллеров MAX7651 и MAX7652.
Организация памяти
Микроконтроллеры поддерживают адресацию до 64 КБ внешней памяти программ (только чтение) и памяти данных (полный доступ) в соответствии с промышленным стандартом 8051. На рис. 2 представлена организация памяти программ. Когда –EA=1, CPU имеет доступ к блокам внутренней памяти программ по 8 КБ, начиная с адреса 0000h (нижний блок) и 2000h (верхний блок). Область памяти программ 0000h-0006h зарезервирована для вектора сброса и векторов прерываний. Если –EA=0, то обращение происходит к внешней памяти с диапазоном адресов от 0000h по FFFFh.
![Организация памяти программ в микроконтроллерах MAX7651 и MAX7652](/images/arhiv/02_07/58_2.gif)
Организацию памяти данных вы можете увидеть на рис. 3. Первые 256 байт памяти разделены на блоки по 128 байт. Нижний блок предназначен для хранения данных пользователя, к нему можно обратиться непосредственной или косвенной адресацией. В верхнем блоке размещаются регистры специального назначения (SFR), в которых находятся биты управления ядром микроконтроллера и периферийными модулями. Диапазон адресов 0100h-FFFFh предназначен для реализации внешнего ОЗУ.
![Организация памяти данных в микроконтроллерах MAX7651 и MAX7652](/images/arhiv/02_07/58_3.gif)
Модуль АЦП
Интегрированный модуль 12-разрядного АЦП последовательного приближения имеет быстродействие до 53 Kps. Для получения результата одного преобразования необходимо 224 периода тактового сигнала микроконтроллера. Заряд внутреннего удерживающего конденсатора АЦП CHOLD происходит за 8 периодов тактового сигнала.
Аналоговые входы АЦП могут работать в обычном режиме (до 8 входов AN0-AN7) и в качестве дифференциальных входов (аналоговые входы попарно объединены). Выбор режима работы аналоговых входов осуществляется программным способом. Все аналоговые входы имеют защитные диоды, подключенные к AVDD и AGND.
Микроконтроллеры имеют максимальную дифференциальную нелинейность (DNL) ±1 бит, максимальную интегральную нелинейность (INL) ±1,5 бит (для MAX7651) и ±1 бит (для MAX7652).
Модуль ШИМ (ЦАП)
В MAX7651 и MAX7652 содержится два модуля ШИМ, предназначенных для приложений, в которых не требуется высокая точность преобразований. Оба выхода ШИМ имеют одинаковый период, но различную длительность импульсов. Период определяется настройкой делителя тактовой частоты микроконтроллера 2 (х+1), где х — значение регистра предделителя ШИМ (PWPS). 8-разрядное значение длительности импульса ШИМ сохраняется в регистрах PWDA (вывод А) и PWDB (вывод B).
Для реализации ЦАП на выходе ШИМ необходимо включить RC-цепочку. Рекомендуемое значение R > 2 кОм для предотвращения чрезмерного тока вывода (максимальный ток вывода 2 мА).
Сторожевой таймер
В MAX7651 и MAX7652 предусмотрен программируемый сторожевой таймер, предотвращающий «зависание» программы. Если программа пользователя не будет выполнять сброс сторожевого таймера, то произойдет сброс микроконтроллера. Микроконтроллер будет находиться в состоянии сброса 512 периодов тактового генератора. Программно можно выбрать один из четырех периодов тактового генератора (относительно тактового сигнала микроконтроллера): 216, 219, 222 или 225.
Порты ввода-вывода
Подобно другим микроконтроллерам с ядром 8051, в MAX7651 и MAX7652 реализовано четыре 8-разрядных параллельных порта ввода-вывода. Параллельные порты поддерживают: общий ввод-вывод данных; реализацию внешних шин адреса и данных; дополнительные функции от периферийных модулей. Каждый двунаправленный порт имеет регистр защелки данных (P0, P1, P2 и P3), входной буфер и драйвер выхода.
Порт ввода-вывода P0 имеет выводы с открытым коллектором (стоком). При использовании в качестве порта ввода-вывода необходимо подключать внешние подтягивающие резисторы. Когда порт работает как выход адреса или данных, то на выводах дополнительно включаются драйверы высокого логического уровня.
Остальные порты ввода-вывода (P1, P2 и P3) имеют выходы с открытым коллектором (стоком) и внутренними подтягивающими резисторами. В MAX7651 и MAX7652 реализовано два последовательных интерфейса, которые полностью соответствуют промышленному стандарту 8051. Управление последовательными интерфейсами осуществляется через регистры специального назначения.
Таймеры-счетчики
MAX7651 и MAX7652 имеют три таймера (счетчика), которые полностью удовлетворяют требованиям стандарта 8051 и работают в различных режимах. Дополнительно таймеры могут использоваться для установки скорости обмена по последовательным портам ввода-вывода.
Малое энергопотребление и большой набор периферийных модулей позволяет использовать микроконтроллеры MAX7651 и MAX7652 в таких приложениях, как носимые устройства сбора данных, контроллеры температуры, интеллектуальные передатчики данных, многоканальные системы сбора и обработки данных.
Александр Зайцев
|