Программирование BASCOM
Меню сайта
Категории каталога
Мои статьи [113]
Наш опрос
Оцените мой сайт
Всего ответов: 1160
Главная » Статьи » Мои статьи

Давайте пощупаем ATmega328PB

Новость взята отсюда: BYE-BYE ATMEGA328P, HELLO 328PB! by 

Оригинал переводной статьи на Радиолоцмане: http://www.rlocman.ru/review/article.html?di=162667
 

В микроконтроллере (МК) нам всегда не хватает встроенной периферии. Будь то аппаратные каналы ШИМ, АЦП или последовательные интерфейсы обмена данными – в конечном итоге нам всегда хочется иметь хотя бы еще один из них, хотя на самом деле многие из них нам не нужны. Видимо, услышав наши мольбы, на смену популярному 8-разрядному МК ATmega328  Atmel выпустила ATmega328PB.

До свидания, ATmega328! Здравствуй, ATmega328PB!

К настоящему времени официального пресс-релиза по ATmega328PB Atmel так и не выпустила, как и не получил массового распространения по дистрибьюторским сетям сам микроконтроллер. В начале 2015 года сообщалось о выходе приборов семейства megaAVR серии «PB» (ATmega168PB, ATmega88PB, ATmega48PB) и возможном релизе ATmega328PB, но если по первым уже имеются какие-то наработки и пользователи применяют их в своих устройствах и делятся впечатлениями, то ATmega328PB до сих пор остается загадкой.

Прежде всего, необходимо подчеркнуть, что ATmega328PB не является полной заменой ATmega328/ATmega328P, а представляет собой новое устройство, однако по выполняемым функциям он обратно совместим с существующим ATmega328. Ранее разработанный для этих устройств программный код будет корректно работать и на новых приборах без изменения существующей конфигурации или включения новых функций, в то время как обратная совместимость кода не гарантируется. Несмотря на то, что серия выпускается только в 32-выводных корпусах TQFP/QFN/MLF, по расположению выводов с ATmega328 она не совместима, о чем более подробно будет сказано ниже.

В статье мы не будем останавливаться на технических характеристиках, а постараемся раскрыть пользователям основные функциональные отличия ATmega328PB от своего предшественника.

Общие сведения

В высокопроизводительном 8-разрядном AVR RISC микроконтроллере ATmega328PB реализована технология управления питанием picoPower. Он имеет 32 КБ Flash-памяти с поддержкой чтения во время записи, 1 КБ EEPROM и 2 КБ ОЗУ. Пользователю доступны 27 линий ввода/вывода общего назначения, 32 регистра общего назначения, пять таймеров/счетчиков с расширенным функционалом и гибкими настройками, внутренние и внешние прерывания, 8-канальный 10-разрядный АЦП, программируемый сторожевой таймер с отдельным генератором, последовательные интерфейсы USART, TWI и SPI. МК сохраняет полную работоспособность в широком диапазоне напряжений питания от 1.8 В до 5.5 В. Оценить функциональный состав МК можно по блок-схеме на Рисунке 1.

До свидания, ATmega328! Здравствуй, ATmega328PB!
Рисунок 1. Блок-схема микроконтроллера ATmega328PB.

Для поддержки разработчиков компания предлагает оценочный набор ATMEGA328PB-XMINI (серия Xplained Mini), который может использоваться не только для знакомства с возможностями микроконтроллера, но также для разработки и отладки собственных приложений. Выполненная в Arduino-совместимом форм-факторе оценочная плата упростит интеграцию ATmega328PB в пользовательские устройства.

Дополнительные порты ввода/вывода

В ATmega328PB добавлен дополнительный 4-битный порт ввода/вывода PORTE [3:0] (Таблица 1). Две линии ввода/вывода PE2 (вывод 19) и PE3 (вывод 22) мультиплексированы с входами АЦП ADC6 и ADC7. Выводы 3 (GND в ATmega328) и 6 (VCC в ATmega328) заменены на линии ввода/вывода PE0 и PE1, соответственно, при этом PE0 выполняет альтернативную функцию выходного канала аналогового компаратора ACO.

Таблица 1.g=em> Функциональные отличия портов
ввода/вывода ATmega328PB
Выводы корпуса
TQFP/MLF
ATmega328 ATmega328PB
3 GND PE0/ACO
6 VCC PE1
19 ADC6 ADC6/PE2
22 ADC7 ADC7/PE3

ATmega328PB стал первым 8-разрядным МК семейства AVR с интегрированным контроллером сенсорного интерфейса QTouch (Peripheral Touch Controller, PTC), обрабатывающим сигналы емкостных сенсоров для определения касания. Как правило, внешние емкостные сенсоры формируются на печатной плате, а их электроды подключаются непосредственно к аналоговому интерфейсу PTC посредством мультиплексирования линий ввода/вывода в микроконтроллере. PTC поддерживает режимы работы как с определением собственной емкости сенсоров, так взаимной.

Первый режим обеспечивает возможность подключения к МК 24 сенсорных кнопок, второй – 144 кнопок. Отлично зарекомендовавшая себя технология QTouch и гибкость настроек контроллера позволяют использовать одновременно оба типа сенсоров, при этом для одного электрода требуется один вывод микроконтроллера. Аппаратная фильтрация, автоматическая калибровка и рекалибровка сенсоров, встроенные схемы компенсации паразитной емкости и регулировка чувствительности повышают надежность сенсорного интерфейса и исключают необходимость использования каких-либо внешних компонентов (Рисунок 2).

До свидания, ATmega328! Здравствуй, ATmega328PB!
Рисунок 2. Блок-схема контроллера QTouch в режиме определения
собственной емкости сенсоров.

Разработка и отладка сенсорного интерфейса для приложений на МК ATmega328PB поддерживается программной средой QTouch Composer с библиотекой QTouch Library, в которой можно создавать различные комбинации сенсорных кнопок, слайдеров, колес и датчиков приближения.

Механизм обнаружения сбоев синхронизации

Clock Failure Detection mechanism (CFD) – еще одно нововведение в ATmega328PB. Это схема цифровой логики с собственным генератором 128 кГц, предназначенная для отслеживания сбоев синхронизации (только для кварцевого резонатора и внешнего источника тактовой частоты) и автоматического переключения на встроенную схему RC-генератора 1 МГц.

Включение механизма контроля синхронизации выполняется автоматически на стадии программирования Fuse-битов выбора источника тактовой частоты (CKSEL) и активизируется только при тактовой частоте выше 256 кГц. При переходе микроконтроллера в режим пониженного энергопотребления схема контроля тактовой частоты отключается, и включается автоматически при пробуждении МК.

Два дополнительных таймера/счетчика

В ATmega328PB интегрированы два дополнительных 16-разрядных таймера/счетчика с отдельными предделителями, блоками сравнения и входами захвата. Таким образом, теперь ATmega328PB имеет два 8-разрядных и три 16-разрядных таймера/счетчика с расширенным набором функций. С добавлением этих таймеров число доступных каналов аппаратной ШИМ выросло до 10 (на ATmega328 их всего 6).

OCM1C2 – модулятор выходов таймеров

Встроенный модулятор Output Compare Modulator (OCM) позволяет генерировать модулированные сигналы. Он использует выходы блоков сравнения (Output Compare Unit B) двух появившихся в ATmega328PB новых 16-разрядных таймеров/счетчиков Timer/Counter3 и Timer/Counter4, о которых было сказано выше. Когда работа модулятора разрешена, два выхода каналов сравнения образуют модулятор, где один канал служит источником несущей частоты, а другой – модулирующей, как это показано на Рисунке 3.

До свидания, ATmega328! Здравствуй, ATmega328PB!
Рисунок 3. Блок-схема модулятора выходов таймеров.

Выходы блоков сравнения Output Compare 3B и Output Compare 4B совместно используют один вывод порта PD2. Имея более высокий приоритет, выходы блоков сравнения (OC3B и OC4B) переопределяют конфигурацию вывода PD2, заданную битом PORTD2. Когда OC3B и OC4B разрешены одновременно, автоматически разрешается работа модулятора.

Дополнительные последовательные интерфейсы обмена данными

Количество последовательных интерфейсов обмена данными увеличено в два раза. Теперь микроконтроллер имеет два USART, два SPI и два TWI, каждый с индивидуальными конфигурационными регистрами и отдельными сигнальными линиями.

Универсальный приемопередатчик содержит детектор начала блока данных, который имеет гибкие настройки и может использоваться для пробуждения МК при получении стартового бита. Детектор старт-бита имеет собственный тактовый генератор 8 МГц, поддерживает работу как в асинхронном, так и в синхронном режиме, и может быть сконфигурирован для генерации сигнала прерывания немедленно после определения старт-бита.

Аналоговый компаратор

Выход аналогового компаратора ACO подключен к отдельному выводу микроконтроллера, мультиплексируемому с портом PE0.

Уникальный серийный номер

Узнать уникальный серийный номер ATmega328PB можно посредством чтения определенных регистров ввода/вывода. Он формируется конкатенацией 9 байт, содержащихся в этих регистрах. Регистры доступны только для чтения.

Заключение

Увеличенное количество коммуникационных интерфейсов, 10 каналов ШИМ, контроль тактовой частоты и, самое главное, поддержка сенсорного интерфейса QTouch значительно расширяют область применения микроконтроллера ATmega328PB. Это могут быть промышленные системы контроля и управления, драйверы светодиодных светильников, приборы учета, средства домашней автоматизации. Дополнительная информация доступна в техническом описании.

Микроконтроллер ATmega328PB поддерживается основными программными, аппаратными и системными отладочными инструментами, включая Atmel Studio 6 и Atmel Power Debugger. Кроме того, множество примеров, программных библиотек и вспомогательных инструментов доступно пользователям в Atmel Gallery.

Ссылки

  1. AT15007: Differences between ATmega328/P and ATmega328PB
  2. AT08401:Getting Started with Atmel ATmega328PB

Материалы по теме

  1. Datasheet Atmel ATmega328
  2. Datasheet Atmel ATmega328PB

Купить на Алиэкспрессе оценочную плату:

Категория: Мои статьи | Добавил: bascom (03.10.2016)
Просмотров: 1565
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа
Поиск
Друзья сайта
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Copyright Radan Studio © 2017