Flash-микроконтроллеры MAX7651 и MAX7652
с 12-разрядным АЦП
Несмотря на наличие большого числа новомодных семейств микроконтроллеров, мировые производители микросхем продолжают выпускать микроконтроллеры с традиционной структурой MCS-51 и расширенными периферийными функциями. Наличие необходимых периферийных модулей и достоинства классической архитектуры микроконтроллеров позволяют широко применять их в новых разработках, особенно в портативных системах сбора данных. Примером могут служить Flash-микроконтроллеры фирмы MAXIM — MAX7651 и MAX7652 с интегрированным 12-разрядным АЦП.
Микроконтроллеры MAX7651 и MAX7652 имеют ядро промышленного стандарта 8051 и расширенный набор периферийных модулей: АЦП, ШИМ (ЦАП), таймеры, различные порты ввода-вывода. Упрощенная структурная схе-
ма микроконтроллеров MAX7651 и MAX7652 показана на рис. 1.
Основные характеристики:
- Тип ядра (промышленный стандарт) - 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.
Организацию памяти данных вы можете увидеть на рис. 3. Первые 256 байт памяти разделены на блоки по 128 байт. Нижний блок предназначен для хранения данных пользователя, к нему можно обратиться непосредственной или косвенной адресацией. В верхнем блоке размещаются регистры специального назначения (SFR), в которых находятся биты управления ядром микроконтроллера и периферийными модулями. Диапазон адресов 0100h-FFFFh предназначен для реализации внешнего ОЗУ.
Модуль АЦП
Интегрированный модуль 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 в таких приложениях, как носимые устройства сбора данных, контроллеры температуры, интеллектуальные передатчики данных, многоканальные системы сбора и обработки данных.
Александр Зайцев
|