Журнал "Новости Электроники", номер 4, 2008 год

Журнал "Новости Электроники", номер 4, 2008 год Использование режимов пониженного энергопотребления РЧ-трансиверов Всеволод Нестеров (КОМПЭЛ)

Многообразие режимов работы с пониженным энергопотреблением позволяет использовать современные радиочастотные трансиверы в устройствах с батарейным питанием. В статье рассказывается о режимах пониженного энергопотребления трансиверов Texas Instruments CC111xFx/CC251xFx/CC243x из производственной линейки Chipcon.

Трансиверы CC111xFx/CC251xFx/CC243x имеют пять основных режимов работы:

Активный режим: Режим полной функциональности. Включен внутренний стабилизатор напряжения и питание подается на ядро. Активны высокочастотные тактовые генераторы - либо по отдельности, либо оба вместе. Также работают либо RC-, либо кварцевый генератор 32,768 кГц, либо они оба одновременно.

Режим PM0: Аналогичен активному, но процессор находится в ждущем режиме, то есть код не выполняется.

Режим PM1: Включен внутренний стабилизатор напряжения и питание подается на ядро. Ни один из тактовых генераторов не работает. Работает либо RC-, либо кварцевый генератор 32,768 кГц. Система перейдет в активный режим по сигналу RESET, или по сигналу внешнего прерывания, или по срабатыванию таймера спящего режима.

Режим PM2: Питание на ядро не подается. Ни один из тактовых генераторов не работает. Работает либо RC-, либо кварцевый генератор 32,768 кГц. Система перейдет в активный режим по сигналу RESET, или по сигналу внешнего прерывания, или по срабатыванию таймера спящего режима. Информация о состоянии USB для трансивера CC2511Fx будет потеряна при вхождении в режим PM2. Таким образом, не следует использовать режим PM2 с USB.

Режим PM3: Питание на ядро не подается. Ни один из генераторов не работает. Система перейдет в активный режим либо по сигналу RESET, либо по сигналу внешнего прерывания. Информация о состоянии USB для трансивера CC2511Fx будет потеряна при вхождении в режим PM3. Этот режим также не следует использовать с USB.

Требуемый режим выбирается установкой битов SLEEP.MODE. После установки этих битов необходимо установить биты IDLE в регистре PCON SFR, что переведет трансивер в выбранный режим. Надо заметить, что при SLEEP.MODE?0 прерывания и переключение между генераторами блокированы. Также надо соблюдать гарантированное время нахождения тактовых генераторов в режимах пониженного энергопотребления. Если это время будет меньше, чем указано в описаниях, то могут быть коллизии.

На рисунке 1 указан пример кода на языке С для перевода трансиверов в режимы PM0-PM3.

 

 

Рис. 1. Пример кода на языке С для перевода трансиверов в режимы PM0...PM3

Для трансиверов CC111xFx/CC251xFx при «пробуждении» из режимов PM{2-3} есть небольшая вероятность того, что SLEEP.MODE-биты будут ошибочно установлены в отличное от нуля значение перед тем, как бит PCON.IDLE будет очищен микроконтроллером. Вследствие этого трансиверы CC111xFx/CC251xFx немедленно вновь перейдут в режим PM{2-3}. Так как причина пробуждения (прерывание) все еще будет активна в этот момент, трансиверы CC111xFx/CC251xFx «проснутся» и снова перейдут в режим PM{2-3}, что приведет к зависанию, из которого можно выйти только по сигналу RESET.

Для того чтобы быть уверенным, что биты SLEEP.MODE установлены в 0, рекомендуется передавать посредством DMA-передачи определенное количество байт в регистр SLEEP. Этот регистр переключается записью DMAREQ.DMAREQx битов непосредственно перед записью бита PCON.IDLE, однако это требует определенных условий:

Трансивер CC111xFx/CC251xFx должен работать на максимально возможной частоте HS RC-генератора.Генератор HS XOSC должен быть отключенКэш-память должна быть отключена

Следующий код на рисунке 2 предполагает, что трансивер CC111xFx/CC251xFx уже работает на максимально возможной скорости HS RC-генератора.

 

 

Рис. 2. Пример кода для начала DMA-передачи

Код, выделенный жирным цветом, критичен ко времени выполнения, поэтому должен быть использован без изменений.

Трансивер CC243x не имеет таких проблем с пробуждением, как CC111xFx/CC251xFx. Таким образом, процедура ввода CC243x в режим PM{2-3} такая же, как описана на рисунке 1. Надо лишь заметить, что CC243x должен вводиться в режим PM{2-3} на максимально возможной скорости HS RC-генератора. Однако в кристаллах версии D для CC243x есть другая проблема с «пробуждением» из режимов PM{2-3}.

Трансивер CC243x имеет встроенный регулятор, который выдает напряжение 1,8 В для питания ядра при входных 2,0...3,6 В. Типичное напряжение в режиме PM{2-3} показано на рисунке 3.

 

 

Рис. 3. Напряжение на регуляторе в режиме PM{2 - 3}

Проблема заключается в том, что если прерывание на «пробуждение» поступает в момент, когда напряжение на выходе регулятора находится в пределах 0,5...1,6 В, то это может привести к зависанию ядра, потерям данных в оперативной памяти и регистрах и другим проблемам (рис. 4).

 

 

Рис. 4. Гарантированные и негарантированные «пробуждения» трансивера СС2430

Для борьбы с этим явлением рекомендуется использование внешнего регулятора (рис. 5).

 

 

Рис. 5. Принципиальная схема применения внешнего регулятора напряжения

При возвращении трансиверов CC111xFx/CC251xFx (рис. 6) и СС243х (рис. 7) в активный режим важно правильно сделать проверку/инициализацию генераторов.

 

 

Рис. 6. Проверка/инициализация генераторов для CC111xFx/CC251xFx

 

 

Рис. 7. Проверка/инициализация генераторов для СС243х

Собственно код возвращения в активный режим для трансиверов CC111xFx/CC251xFx/CC243x:показан на рисунке 8.

 

 

Рис. 8. Код возвращения в активный режим

При использовании для питания трансиверов аккумуляторов важно знать, за какое время устройство разрядит используемый элемент. Для определения потребления можно использовать следующую схему (рис. 9) на примере ZigBee-трансиверов CC2430.

 

 

Рис. 9. Блок-схема изменения потребления тока

На экране осциллографа измерения могут выглядеть примерно так, как показано на рисунке 10.

 

 

Рис. 10. Вид измерений на экране осциллографа

Итого имеем следующие данные, обобщенные в таблице 1.

Таблица 1. Потребляемые токи в каждом из режимов Интервал Описание Ток,
мА Длительность,
мс Потребление,
мА/мс 1 Переход из спящего режима
в режим генератора
HS RCOSC 16 МГц 0,75 0,49 0,3675 2 Переход в режим генератора
 HS XOSC 32 МГц 12 1,8 21,6 3 CMSA/CA алгоритм. Трансивер в режиме приема. 31 1,6 32,86 4 Переключение из режима приема в режим передачи 18 0,19 3,42 5 Передача пакетов. Трансивер в режиме передачи. 29 0,58 16,82 6 Переключение из режима передачи в режим приема 18 0,11 1,98 7 Прием подтверждения от координатора. Трансивер в режиме приема 31 1,1 34,1 8 Обработка пакетов.
Ядро в режиме 32 МГц 12 1,1 13,2 9 Переход в спящий режим
(PM0 ® PM2).
Ядро в режиме 16 МГц. 7 0,62 4,34

Вычисляем общее потребление, оно получается 128,7 мА/мс.

Попробуем рассчитать время жизни батареи при односекундных интервалах опроса:

Потребление во время опроса:

Потребление во время сна:

Общее потребление в сутки:

Если питать устройство от двух последовательно соединенных 1,5 В батарей емкостью, например 3,1 А/ч, то время жизни батарей составляет 1000 дней.

Таким же образом можно рассчитать время жизни батарей и при других значениях интервала опросов.

Литература

1. Application Note AN053 Measuring power consumption with CC2430 Z-Stack

2. Design Note DN106 Power Modes in CC111xFx, CC243x, and CC251xFx

3. Application Note AN044 CC2430 Revision D, Power Modes.

Вернуться к содержанию номера







Рекомендуемый контент




Copyright © 2010-2019 housea.ru. Контакты: info@housea.ru При использовании материалов веб-сайта Домашнее Радио, гиперссылка на источник обязательна.