Радиоконтроллеры семейства B41-RC. Радиомодем и управляющий контроллер в одном модуле
Сергей Богуш, начальник отдела микросистем, Михаил Дябин, руководитель группы отдела микросистем, Михаил Игнатов, программист Отдела Микросистем, Игорь Панкратов, ведущий программист отдела микросистем; «Кедах Электроникс Инжиниринг»
В настоящей статье предлагается описание радиоконтроллеров семейства B41-RC, построенных на основе микроконтроллера В41 и представленных в нескольких вариантах исполнения, отличающихся по частотному диапазону радиоканала, объему установленной флэш-памяти, подключению антенны и другим признакам.
Область применения
Основное назначение радиоконтроллеров семейства B41-RC – применение в качестве аппаратного ядра в портативных системах с радиоканалом. Это могут быть системы цифровой радиосвязи или управляющие системы, в которых радиоканал используется для передачи звукового потока, сигналов управления, показаний датчиков и другой информации. В качестве иллюстраций применения радиоконтроллеров B41-RC можно привести такие примеры, как беспроводные домашние и офисные телефоны, системы дистанционного съема и обработки данных с различного оборудования, системы дистанционного управления промышленными объектами и бытовыми приборами, беспроводные торговые кассовые сети, охранные и противопожарные системы.
Принципиальным отличием радиоконтроллера от радиомодема является то, что кроме обслуживания радиоканала, он имеет аппаратные и вычислительные ресурсы для выполнения функций управления оборудованием и обработки поступающих данных. Использование этих ресурсов позволяет отказаться от дополнительного микроконтроллера в составе устройства, а все задачи управления оборудованием и потоками данных возложить на основной и единственный микроконтроллер В41, являющийся ядром радиоконтроллеров B41-RC. Например, в трубке беспроводного телефона радиоконтроллер, помимо функции обслуживания радиоканала, реализует протокол телефонного соединения (набор номера, установление соединения, управление вызовами и пр.), преобразует формат звукового потока, обслуживает вывод изображения на экран цветного графического OLED- или ЖК-дисплея, поддерживает систему 2-х координатного пиктограммного меню, сканирует клавиатуру и преобразует скан-коды в ASCII-символы, управляет зарядом батареи, осуществляет функционирование файловой системы (телефонная книга, загружаемые мелодии звонка и экранные заставки), реализует сервисные функции (часы, будильник, калькулятор и т.д.). При необходимости, микроконтроллер может выполнять функцию криптографической защиты информации, как с помощью встроенных аппаратных средств, так и путем программной реализации алгоритмов шифрования.
Реализация комплексной задачи обслуживания радиоканала, управления аппаратурой и обработки данных на одном микроконтроллере позволяет минимизировать энергопотребление, массогабаритные показатели и цену конечного изделия. Кроме того, использование радиоконтроллера в качестве аппаратного ядра при разработке специализированных систем позволяет существенно сократить сроки проектирования, освобождает от необходимости решать задачу трассировки сложной печатной платы, содержащей в своем составе ВЧ-тракт, а также задачи, связанные с отладкой и испытаниями радиоканала.
Функциональный состав
Структурная схема радиоконтроллера приведена на рис.1. Радиоконтроллер содержит следующие основные узлы:
микроконтроллер В41-3;
флэш-память для хранения программ и данных;
радиотрансивер;
узел питания.
Рис. 1. Структурная схема радиоконтроллеров B41-RC
Следует подчеркнуть, что задача управления большим количеством оборудования в реальном масштабе времени решается в первую очередь за счет того, что микроконтроллер В41 оснащен 4-х контекстным процессорным ядром, и в нем реализован механизм контекстных прерываний, что кардинальным образом снижает нагрузку на процессорное ядро при обработке прерываний от периферийных устройств. Каждый из 4-х контекстов представляет собой полный набор регистров процессора (регистры общего назначения, сегментные регистры, указатель инструкций, указатель стека, регистр состояния). Механизм контекстных прерываний работает таким образом, что при появлении запроса на прерывание от периферийного устройства и его арбитража происходит аппаратное переключение с текущего набора контекстных регистров на набор, ответственный за активное прерывание, программа обработки которого сразу же начинает выполняться. После ее завершения процессор программно (команда CRET) возвращается к набору контекстных регистров, с которым он работал в момент возникновения запроса на прерывание от периферийного устройства. Благодаря тому, что исключается процедура сохранения содержимого регистров в стеке при входе в программу обработки прерываний и восстановления содержимого регистров при выходе из программы обработки прерываний, резко сокращается время, необходимое на вход в программу обработки прерываний и на выход из нее. По существу такой подход можно представить как работу 4-х виртуальных процессоров, каждый из которых активен в тот момент, когда его задача является наиболее приоритетной.
Широкий набор последовательных интерфейсов (UART, SPI, PCM, I2C), а также три 8-разрядных параллельных порта предоставляют возможность для подключения к радиоконтроллеру разнообразных периферийных устройств. Дополнительно к этому через системную шину (EMI) возможно подключение высокоскоростных устройств, предполагающих обмен большим объемом информации (дополнительная оперативная или флэш-память, Ethernet-контроллер, ЖК- или OLED-дисплеи, контроллер видеокамеры). Краткие характеристики интерфейсов приведены далее.
UART – обеспечивает обмен данными со скоростью до 921, 6 Кбит/с. Используется для загрузки программного обеспечения, вывода отладочной информации и подключения внешних устройств с интерфейсами RS-232 и RS-485 через соответствующие преобразователи уровней. Имеется возможность мультиплексирования основных выводов UART с выводами PIO2 [7:6] параллельного порта.
SPI – позволяет осуществлять обмен данными в дуплексном режиме со скоростью до 12 Мбит/с в режиме Master и 4 Мбит/с в режиме Slave. Предоставляет возможность подключить 2 внешних устройства (с дешифратором – 3). Может быть использован для подключения внешней флэш-памяти или ЖК-дисплея, оснащенных SPI-интерфейсом. При использовании интерфейса следует учитывать, что в радиоконтроллере один из каналов SPI задействован для управления радиотрансивером.
PCM – последовательный синхронный интерфейс для канала звука. Обеспечивает дуплексный канал с фиксированной скоростью 8 тысяч 13–битовых отсч етов в секунду. Служит для подключения звукового PCM-кодека.
I2C – обеспечивает обмен данными со скоростью до 400 Кбит/с. Может быть использован для подключения внешней флэш-памяти или управляющего канала видеосенсора.
PIO0, PIO1, PIO2 – 8-ми разрядные параллельные порты. Могут быть запрограммированы на вход и на выход, при этом разряды, запрограммированные на вход, могут быть в свою очередь запрограммированы на генерацию запроса прерывания по изменению уровня входного сигнала. Порт PIO0 снабжен высокоомными pull-up транзисторами для упрощения реализации сканируемой матричной клавиатуры.
EMI – 16-ти разрядная системная шина (интерфейс внешней памяти). На разъемы радиоконтроллера выведено 16 разрядов данных (EMI_D [15:0]), 8 или 23 (при установленном дополнительным разъеме) разряда адреса (EMI_A [7:0] или EMI_A [22:0]), три сигнала выбора устройства (EMI_CSn [3:1]) и сигналы записи/чтения (EMI_WEn/EMI_OEn). Диаграмма работы шины – стандартная для статических ОЗУ.
Выход PWM предназначен для генерации ШИМ-сигнала, который обычно используется для звуковой индикации (например, вызывной сигнал в телефоне). Формирование сигнала обеспечивается двумя встроенными таймерами микроконтроллера B41.
Наличие выхода питающего напряжения VCC = 3, 0 В позволяет подавать питание на внешнюю периферию без дополнительного стабилизатора напряжения. Механизм управления энергопотреблением радиоконтроллера обеспечивает программное отключение питания и аппаратное его включение с помощью внешнего вывода PwrON.
Конструктивно радиоконтроллер выполнен в виде отдельного модуля и имеет два основных (PLL-40) и один опционный (PLL-20) соединительные разъемы, а также, в зависимости от варианта исполнения, встроенную антенну или ВЧ-разъем для подключения внешней антенны. Внешний вид радиоконтроллеров приведен на рис. 2.
Габариты радиоконтроллера (без антенны) – 53 x 35 x 9 мм.
Масса – не более 15 г.
Электрические параметры
Напряжение питания радиоконтроллера может варьироваться в широком пределе, от 3, 5 до 6, 0 В, поэтому его питание может быть реализовано различными способами: от сетевого 5-ти вольтового источника, через разъем USB-порта персонального компьютера, от Lion аккумулятора (3, 7 В) или батареи из 3-х NiMH аккумуляторов напряжением 1, 2 В каждый.
Рабочий диапазон температур радиоконтроллера зависит от исполнения и составляет 0°...+70°C для варианта «C» и –40...+85°C для варианта «I».
Типовые токи потребления радиоконтроллеров в различных режимах и основные параметры радиоканала представлены в таблицах 1 и 2 соответственно.
Таблица 1. Типовой ток потребления
Режим | Значение | Условия измерения | |
В режиме «Выключено» | не более 50 мкА | ||
В дежурном режиме | 0, 8 мА | Активны только сторожевой таймер и служба реального времени | |
При минимальной мощности (PRF) передатчика | B41-RCb (a) | 70 мА | PRF = 0 dBm |
B41-RCc | 25 мА | PRF = 0 dBm | |
При максимальной мощности (PRF) передатчика | B41-RCb (a) | 105 мА | PRF = 16 dBm |
B41-RCc | 30 мА | PRF = 10 dBm |
Таблица 2. Основные параметры радиоканала