Энергосбережение с микроконтроллерами AVR128DB
Новые возможности независимых от ядра периферийных устройств в схемах от Microchip.
- Event System
- Configurable Logic Cell
- Zero Cross Detector
- Усовершенствованный Watchdog
- Cyclic Redundancy Check (CRC/SCAN)
В настоящее время наибольшую долю рынка микроконтроллеров для встраиваемых систем (embedded), занимают системы с 32-битной архитектурой, однако системы с 8- и 16-битными ядрами также часто используются. Микроконтроллеры этого типа построены с использованием хорошо известных ядер, которые, благодаря длительному присутствию на рынке, всесторонне проверены и доработаны. Инструменты для этих микроконтроллеров также со временем были улучшены, и теперь у разработчика есть набор отличных компиляторов и библиотек функций, что значительно улучшает процесс разработки программного обеспечения. В современных системах реализуются также дополнительные функциональные возможности, расширяющие диапазон приложений, в которых могут быть использованы микроконтроллеры.
Важным фактором, способствующим непрерывному развитию «более простых» 8- и 16-битных микроконтроллеров, является рынок приложений Интернета вещей (Internet of Things, IoT). Ввиду большого количества устройств и приложений, работающих в этом сегменте, к схемам предъявляется требование низкого энергопотребления. Главным образом это относится к интеллектуальным датчикам с беспроводной связью, носимым электронным устройствам (wereables), информационным системам, заменяющим традиционные ценники в магазинах, маякам и т. п. Очень часто устройства этого типа питаются от батареи, а пользователи требуют максимально длительного времени работы без необходимости замены батареи. В этих приложениях не имеют себе равных 8- и 16-битные микроконтроллеры, которые можно легко перевести (и быстро разбудить) в режим пониженного энергопотребления, в котором их периферия и/или ядро находится в энергосберегающем режиме и активируется/просыпается только на время, необходимое для выполнения требуемых действий.
В современных микроконтроллерах используются периферийные модули, которые могут работать независимо от CPU и выполнять определенные задания (которые традиционно выполнялись с участием CPU программным способом) самостоятельно и аппаратно. Это способствует низкому энергопотреблению и высвобождает вычислительную мощность относительно небольшого микроконтроллера, ядро которого может быть выделено для выполнения ключевых заданий с точки зрения приложения. Использование этих модулей сокращает время разработки нового приложения. Более того, такие периферийные модули различных типов, реализованные в микроконтроллерах, могут быть внутренне объединены в блоки большего размера, что позволяет реализовать более сложные функции. Чтобы разработчику было проще сконфигурировать периферийные модули, работающие независимо от ядра (Core Independent Peripherals, CIP), производитель предоставляет в его распоряжение инструменты с удобным графическим интерфейсом.
Микроконтроллер семейства AVR128DB в корпусе TQFP48
Микроконтроллеры с вышеперечисленными характеристиками не могут быть не представлены в предложении фирмы Microchip.
AVR128DB
Семейство микроконтроллеров AVR128DB сочетает в себе производительность ядра AVR® с низким потреблением тока и набором периферийных устройств, работающих независимо от ядра (Core Independent Peripherals, CIP), а также большим количеством встроенной аналоговой периферии. Возможность работы с напряжением питания 5 В повышает устойчивость к помехам.
Ниже будет обсуждена прежде всего предлагаемая в схемах серии AVR128DB периферия CIP, хотя функциональность самих схем значительно больше. В микроконтроллерах семейства AVR128DB, среди прочего, можно найти преобразователи A/C и 10-битный DAC (т.е. преобразователь C/A), схему RTC (часы реального времени), генераторы PWM (в т.ч. 12-битные генераторы TCB, рассчитанные на работу в системах питания), аппаратные интерфейсы USART, SPI и TWI), источники опорного напряжения, полезные для точных измерений, компараторы, возможность генерировать внешние прерывания на всех контактах I/O. Схемы AVR128DB также оснащены встроенными операционными усилителями (до 3 штук). В сочетании с аналого-цифровыми преобразователями они обеспечивают широкую и точную обработку входных сигналов. Микроконтроллеры также имеют порт входа/-выхода, рассчитанный на работу с различными логическими уровнями (от 1,8 В до 5,5 В). Следовательно, отпадает необходимость в использовании внешних конвертеров, что является следующим шагом на пути к миниатюризации и энергосбережению схем, в которых будут использоваться схемы производства фирмы Microchip. Приглашаем ознакомиться с полным предложением.
Event System
Event System – это мощный инструмент, разгружающий ядро микроконтроллера. Он позволяет установить простые зависимости между событиями. Условные инструкции будут выполняться без участия ядра (и даже без его пробуждения). Примером может служить независимая от программного кода обработка нажатия кнопок. Превышение установленной разности потенциалов на компараторе может привести, например, к срабатыванию преобразователя на определенном контакте, началу отсчета и т. п. Такая функциональность ограничивает количество кода, необходимого для работы устройства, и увеличивает скорость реакции всего микроконтроллера.
Configurable Logic Cell
Конфигурируемые логические блоки CLC являются аналогичным удобством, также активным в режиме пониженного энергопотребления. Они позволяют выполнять логические операции с сигналами от внешних и внутренних источников (счетчик, регистр) и передавать результат операции на одно из периферийных устройств или на один из выходных контактов. Это позволяет избежать использования условных инструкций в программном коде. Модуль CLC выполняет функции логических вентилей (AND, OR, XOR, NOT и их комбинации), защелок или триггеров без энергоемкой процедуры пробуждения.
Zero Cross Detector
Модуль ZCD служит для запуска прерываний, когда сигнал AC превышает порог с нулевым потенциалом (относительно GND микроконтроллера). Встроенная в микроконтроллер схема может стробировать напряжение непосредственно из энергетической линии. Единственным необходимым пассивным элементом в этом случае будет последовательно подключенный резистор, ограничивающий силу тока, а также (необязательно) подтягивающий резистор. Для эквивалентной аналоговой схемы потребуется гораздо больше компонентов. Функциональность ZCD обеспечивает эффективное управление триаком (затемнение света, регулировка нагрева), мониторинг качества энергии (измерение периода) или ограничение электромагнитных помех в цепях, управляющих питанием данного устройства с помощью переменного тока (включение в момент, когда синусоида близка к нулю, исключает резкие скачки напряжения и создаваемые ими электромагнитные помехи). Более того, периферия может быть сконфигурирована так, чтобы сигнализировался конкретный тип превышения (растущая, падающая кривая или обе). Сигнал ZCD не требует программной обработки и может быть выведен на один из контактов I/O микроконтроллера.
Усовершенствованный Watchdog
Даже спроектированные наилучшим образом цифровые системы, выполняющие безошибочный и многократно проверенный код, могут «зависнуть». Эта проблема может возникать по многим причинам, иногда не связанным с функциями, выполняемыми кодом. Это может быть превышение допустимой рабочей температуры или помехи в цепи питания. Основной защитой от таких ситуаций являются счетчики типа Watchdog (WDT), работающие независимо от выполняемой программы. В случае, когда выполнение инструкции занимает больше времени, чем ожидалось, WDT сбрасывает микроконтроллер. В случае семейства AVR128DB можно запрограммировать «временное окно» (Window Mode Watchdog Timer, WWDT), в котором программа должна быть выполнена. В случае такого контроля работа устройства будет прервана и возобновлена с начала, как в случае слишком долгого, так и слишком короткого периода между ответами от ядра. В последнем случае существует возможность, что часть инструкции не была выполнена, что может иметь негативные последствия, особенно если пропущенный блок операции был напрямую связан с защитой цепи или оператора устройства (например, незамеченный сигнал от концевого выключателя).
Cyclic Redundancy Check (CRC/SCAN)
Генерирование и проверка контрольной суммы – это широко используемый способ обеспечения надежной связи между схемами в микропроцессорных системах. К сожалению, программная реализация такой проверки требует больших вычислительных мощностей задействованных схем, и, кроме того, может задерживать их работу. Особенно в случае 8-битных устройств, работающих на ограниченной (для экономии энергии) частоте. Новейшие микроконтроллеры от Microchip (как PIC, так и AVR) оснащены периферией, которая автоматически генерирует контрольную сумму (даже в виде 32-битного полинома) и помещают ее в доступный для программы регистр. Функциональность, известная как SCAN, позволяет системе CRC напрямую обращаться к памяти микроконтроллера, что дополнительно улучшает работу с контрольными суммами.
Пример использования модулей CIP в конкретных приложениях и связанные с ними преимущества при создании схем, реализующих сложные функциональные возможности, показаны ниже в видеороликах, подготовленных производителем.
Источник: Transfer Multisort Elektronik Sp. z o.o.