Компоненты и технологии, № 4'2003
Новые Fiash-микроконтроллеры PIC16 со сверхнизким энергопотреблением
от Microchip
В одном из предыдущих номеров журнала («КиТ» № 92002) уже рассказывалось о микропотребляющих Flash-контроллерах компании Microchip из серии высокопроизводительных микроконтроллеров PIC18F.
Максим Еременко
maxim.eremenko@
microchip.com.ru
б:
е-
отличие от более мощного семейства PIC18F, микроконтроллеры PIC16F ориентированы в первую очередь на продукцию, выпускаемую огромными тиражами, а это требует минимальной цены микроконтроллера. Поэтому реализация всех режимов микропотребления, имеющихся в PIC18, повлекла бы увеличение цены микроконтроллера. Тем не менее разработчикам Microchip удалось решить эту непростую задачу: добавлены все новые режимы энергосбережения, и при этом цена микроконтроллеров даже несколько снизилась по сравнению со старыми моделями PIC16. Такая непростая задача была решена традиционным для Microchip способом: «каждой задаче — отдельный PICmicro!». Рассмотрев таблицу 1, можно заметить, что выпущена целая линейка семейств PIC16F с различными сочетаниями параметров. Таким образом, можно подобрать контроллер практически под любую задачу, при этом максимально сэкономив на его цене.
Уменьшение энергопотребления при высокой производительности в технологии NanoWatt достигается тремя способами:
1. Совершенствованием технологии изготовления кристаллов и минимизацией токов утечки.
2. Снижением напряжения питания (все Flash-микроконтроллеры Microchip могут работать при напряжениях 2-5,5 В).
3. Специальными режимами тактирования ядра и периферии.
Если первые два способа традиционно использовались в ранних семействах PICmicro, то последний стал применяться в новых семействах NanoWatt PIC18 и PIC16 и позволяет более гибко использовать ресурсы микроконтроллера, затрачивая при этом минимум энергии.
Схема тактирования контроллера
Рассмотрим блок-схему тактирования семейств PIC16F с режимами энергосбережения (рис. 1). Что изменилось по сравнению с традиционным PIC16?
Модуль Таймера1 существенно изменен, благодаря чему в несколько раз сократился потребляемый им ток (менее 2 мкА). Это позволило в большинстве задач отказаться от применения специализированной микросхемы при создании часов реального времени, подключая низкочастотный резонатор 32768 Гц не-------www.finestreet.ru-----------------------
Компоненты и технологии, № 4'2003
Таблица 1. PIC16F с режимами микропотребления Low Power Modes
Тип Flash-память программ Байт Прогр. слов ОЗУ данных EEPROM Количество выводов Порты I/O Каналов 10 бит АЦП Аналоговые компараторы CCP (ЕИМ) AUSART SPI, Master К Таймеры 8/16 бит Внутренний RC-генератор 1% Отладка ICD2
PIC16F684 3584 2048x14 128 256 14 12 8 2 1 (4 канала) Нет Нет 2/1 Есть Есть
PIC16F627A 1792 1024x14 224 128 18 16 Нет 2 1 Есть Нет 2/1 Есть Нет
PIC16F628A 3584 2048x14 224 128 18 16 Нет 2 1 Есть Нет 2/1 Есть Нет
PIC16F648A 7168 4096x14 256 256 18 16 Нет 2 1 Есть Нет 2/1 Есть Нет
PIC16F818 1792 1024x14 128 128 18 16 5 Нет 1 Нет Есть 2/1 Есть Есть
PIC16F819 3584 2048x14 256 256 18 16 5 Нет 1 Нет Есть 2/1 Есть Есть
PIC16F87 7168 4096x14 368 256 18 16 Нет 2 1 Есть Нет 2/1 Есть Есть
PIC16F88 7168 4096x14 368 256 18 16 7 2 1 Есть Нет 2/1 Есть Есть
PIC16F737 7168 4096x14 368 Нет 28 25 11 2 3 Есть Есть 2/1 Есть Есть
PIC16F747 7168 4096x14 368 Нет 40 36 14 2 3 Есть Есть 2/1 Есть Есть
PIC16F767 14336 8192x14 368 Нет 28 25 11 2 3 Есть Есть 2/1 Есть Есть
PIC16F777 14336 8192x14 368 Нет 40 36 14 2 3 Есть Есть 2/1 Есть Есть
посредственно к модулю Таймераі. Еще одной примечательной особенностью таймера стало то, что он может использоваться как дополнительный источник тактовых импульсов для тактирования ядра микроконтроллера как непосредственно, так и через схему умножителя РЬЬ с последующим делением до нужного значения. В последнем случае выводы 0801 и 0802 основного генератора можно использовать как порты ввода-вывода общего назначения, стартовать от внутреннего генератора, а затем переключаться на Таймері (32768 Гц) с последующим умножением. Таким образом, с одним низкочастотным кварцевым резонатором можно работать на частотах до 256x32,768 кГц = 8,38 МГц и иметь встроенные часы реального времени. Разумеется, что если не использовать ТМИ1 в качестве дополнительного тактового генератора, то к его выводам можно подключать внешний сигнал (режим счета внешних событий) или использовать его входы как обычные порты ввода-вывода.
Добавлен новый микропотребляющий модуль внутреннего И0-генератора с умножителем РЬЬ и постделителем (аналогичный Шпо^ай РІ018Р) с программно управляемым мультиплексором выбора источника тактовых сигналов. Этот модуль, так же как и Таймері, полностью переработан. В несколько раз снижено энергопотребление, модуль нечувствителен к изменениям температуры и напряжения питания. Схема генератора термокомпенсирована и уход частоты составляет не более ±2% во всем диапазоне рабочих температур и питающих напряжений. Калибровка генератора производится на заводе-изготовителе, чем обеспечивается точность частоты. Это позволяет во многих задачах (при работе, например, с 00М-портом компьютера на скорости 9600 бит/с) вообще отказаться от использования внешних резонаторов и сэкономить на их стоимости. Внутренний генератор работает на частоте 31,25 кГц, а специальный модуль умножителя РЬЬ (х256) повышает эту частоту до 8 МГц. Благодаря встроенному постделителю при работе с внутренним генератором можно программно «на лету» выбирать тактовую частоту из 8 значений: 31,25 кГц, 125 кГц, 500 кГц, 1 МГц, 2 МГц,
4 МГц, 8 МГц, управляя мультиплексором тактового сигнала. Эта особенность позволяет управлять производительностью микроконтроллера, а значит, и потреблением тока.
---------------------www.finestreet.ru -
Убран традиционный нестабильный сторожевой таймер WDT. Теперь внутренний ИО-генератор тактирует и схему WDT, что обеспечивает отличную стабильность при изменении напряжения питания и температуры. Новый период WDT теперь стал 4 мс (вместо 18 мс), но добавлен дополнительный 16-разрядный постделитель для совместимости со старыми моделями. Отказ от отдельного ИО-генератора, обслуживающего исключительно WDT, позволил еще снизить потребление контроллера.
Обнаружение отказа тактового генератора и автоматический переход на резервный источник
Наличие трех тактовых генераторов в микроконтроллерах семейства Р1О16Р NanoWatt позволило реализовать несколько интересных функций. Встроенную функцию обнаружения отказа основного тактового генератора по достоинству оценят создатели медицинских приборов (например, кардиостимуляторов), разработчики пожарно-охранной техники, систем жизнеобеспечения. Как известно, в критических условиях (вибрация, пониженная температура и т. п.) может произойти отказ или уход параметров кварцевого резонатора. Автоматическое переключение на внутренний ИО-генератор при отказе основного генератора позволяет сохранить работоспособность прибора. При этом устанавливается специаль-
Таблица 2. Режимы микропотребления в PIC16F
ный флаг сбоя ГТИ и генерируется запрос на прерывание. Коэффициент постделителя может быть задан заранее, чтобы получить наилучшую частоту из 8 возможных вариантов. На этапе программирования контроллера работу модуля защиты от сбоев можно аппаратно заблокировать специальным битом в конфигурационном слове.
Режим быстрого старта
Очень часто встречаются задачи, когда решающим параметром при выборе микроконтроллера является то, насколько быстро он «стартует» — начинает работу после подачи напряжения питания или при выходе из режима «SLEEP». Именно для таких задач пригодится режим быстрого старта.
Предположим, что мы используем основной тактовый генератор с внешним кварцевым резонатором. Как известно, такой генератор относительно долго выходит на стабильный режим работы. Поэтому схема запуска автоматически «ждет» первые 1024 периода такого генератора, и лишь после этого разрешает работу микроконтроллера. В ряде задач такие задержки неприемлемы, для чего и предусмотрен режим быстрого старта. В режиме быстрого старта запускается внутренний RC-генератор, и программа пользователя начинает (продолжает) работу именно с ним. Одновременно стартует и основной (или дополнительный) ГТИ. После его выхода на стабильный режим работы микроконт-
Возможности микропотребления 16F684 16F627/628A 16F818/819 16F87/88 16F7x7 Коментарии
Самопрограммирование FLASH Да Нет Да Да Да Возможность удаленного программирования
Низкопотребляющий TMR1 Да Да Да Да Да 1 мкА @32 кГц
Внутренний RC-генератор (2% Typ) Да Да Да Да Да Низкопотребляющий 1 мкА
Умножитель частоты RC-генератора Да Нет Да Да Да от 8 МГц до 31,25 кГц (стабильность 1%)
Тактирование ядра от TMR1 Нет Нет Нет Да Да от 8 МГц до 32 кГц (стабильность <1%)
Тактирование WDT от внутр. RC Да Нет Да Да Да Низкопотребляющий 1 мкА
Большой период WDT Да Нет Нет Да Да Период WDT от 131 сек до 4 мсек
Низкопотребляющий WDT Да Да Да Да Да Низкопотребляющий 1 мкА
Режим быстрого старта Да Да Нет Да Да Быстрый запуск на внутреннем генераторе
Переключение частоты Нет Нет Нет Да Да переключение между TMR1 и N RC
Детектор сбоя генератора Да Нет Нет Да Да
е
121
Компоненты и технологии, № 4'2003
роллер автоматически переключается с внутреннего ИО-генератора на основной. При этом устанавливается специальный флаг, сообщающий программе пользователя, что тактовая частота стабилизировалась и можно приступать к выполнению подпрограмм, особо критичных к стабильности тактового генератора.
Функцию быстрого старта при необходимости можно заблокировать на этапе программирования микроконтроллера.
По существу, практически все, что есть в NanoWatt Р1О18Р, есть и в новых Р1О16Р, с той лишь разницей, что нет четкой систематизации режимов работы, и переключение их происхо-
дит настройкой управляющих регистров периферийных модулей. Отдельно следует отметить, что приведенная блок-схема в некоторых семействах PIC16F может быть реализована не полностью, в зависимости от конкретного типа PICmicro (см. табл. 2). Таким образом достигается максимальное снижение цены для некоторых типов PIC16F. К сожалению, объем статьи не позволяет привести список всех различий для PIC16F, поэтому настоятельно рекомендуем воспользоваться фирменной документацией на продукцию Microchip, которою можно найти на сайте www.microchip.com или на компакт-диске 2003 года.
Все рассмотренные микроконтроллеры позволяют осуществлять внутрисхемную отладку на базе встроенного модуля ICD. Отличные характеристики при чрезвычайно низкой цене позволяют использовать новые микроконтроллеры в крупносерийных изделиях. Малые размеры, низкое потребление и встроенная аналоговая периферия позволяют использовать эти микроконтроллеры в приборах с батарейным питанием. А благодаря высокой надежности работы контроллеры РГСшкго крайне привлекательны для устройств автомобильной электроники, пожарной сигнализации и промышленной автоматики.
122
- www.finestreet.ru -