Несмотря на наличие большого числа новомодных семейств микроконтроллеров, мировые производители микросхем продолжают выпускать микроконтроллеры с традиционной архитектурой 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.
Организация памяти
Микроконтроллеры MAX7651, MAX7652 поддерживают адресацию до 64 КБ внешней памяти программ (только чтение) и памяти данных (полный доступ) в соответствии с промышленным стандартом 8051.
На рисунке 2 представлена организация памяти программ. Когда —EA=1, CPU имеет доступ к блокам внутренней памяти программ по 8 КБ, начиная с адреса 0000h (нижний блок) и 2000h (верхний блок). Область памяти программ 0000h-0006h зарезервирована для вектора сброса и векторов прерываний. Если —EA=0, то обращение происходит к внешней памяти с диапазоном адресов от 0000h по FFFFh.
Организацию памяти данных вы можете увидеть на рисунке 3. Первые 256 байт памяти разделены на блоки по 128 байт. Нижний блок предназначен для хранения данных пользователя, к нему можно обратиться непосредственной или косвенной адресацией. В верхнем блоке размещаются регистры специального назначения (SFR), в которых находятся биты управления ядром микроконтроллера и периферийными модулями. Диапазон адресов 0100h-FFFFh предназначен для реализации внешнего ОЗУ.
Рис. 3. Организация памяти данных в микроконтроллерах MAX7651, MAX7652
Модуль АЦП
Интегрированный модуль 12-разрядного АЦП последовательного приближения имеет быстродействие до 53 Kps. Для получения результата одного преобразования необходимо 224 периода тактового сигнала микроконтроллера. Заряд внутреннего удерживающего конденсатора АЦПБCHOLD происходит за 8 периодов тактового сигнала.
Аналоговые входы АЦП могут работать в обычном режиме (до 8 входов AN0-AN7) и в качестве дифференциальных входов (аналоговые входы попарно объединены). Выбор режима работы аналоговых входов осуществляется программным способом. Все аналоговые входы имеют защитные диоды, подключенные к AVDD и AGND.
Микроконтроллеры MAX7651, MAX7652 имеют максимальную дифференциальную нелинейность (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/7652 реализовано два последовательных интерфейса, которые полностью соответствуют промышленному стандарту 8051. Управление последовательными интерфейсами осуществляется через регистры специального назначения.
Таймеры/счетчики
MAX7651,MAX7652 имеют три таймера/счетчика, полностью удовлетворяют требованиям стандарта 8051 и способны работать в различных режимах. Дополнительно таймеры могут использоваться для установки скорости обмена по последовательным портам ввода/вывода.
Небольшое энергопотребление и большой набор периферийных модулей позволяет использовать микроконтроллеры MAX7651, MAX7652 в таких приложениях как: носимые устройства сбора данных; контроллеры температуры; интеллектуальные передатчики данных; многоканальные системы сбора и обработки данных.
Дополнительную информацию и техническую консультацию по этим устройствам можно получить, обратившись к официальному дистрибьютору фирмы MAXIM в Росси Rainbow Technologies.
Источник: rtcs.ru
Автор: Александр Зайцев