АТмега328
ATmega328 , — это однокристальный микроконтроллер созданный компанией Atmel в семействе megaAVR (позже Microchip Technology приобрела Atmel в 2016 году). Он имеет процессора Гарвардской архитектуры модифицированное 8-битное ядро RISC- .
Технические характеристики
[ редактировать ]микроконтроллер Atmel 8-битный AVR на базе RISC сочетает в себе 32 КБ памяти ISP флэш- с возможностью чтения во время записи, 1 КБ EEPROM , 2 КБ SRAM общего назначения , 23 линии ввода-вывода общего назначения, 32 рабочих регистра , 3 гибких таймер/ счетчики с режимами сравнения, внутренние и внешние прерывания , программируемый последовательный интерфейс USART , байт-ориентированный 2-проводной последовательный интерфейс, последовательный порт SPI , 6-канальный 10-битный АЦП (8 каналов в TQFP и QFN / MLF) корпусах ), программируемый сторожевой таймер с внутренним генератором и 5 программно выбираемых режимов энергосбережения. Устройство работает при напряжении от 1,8 до 5,5 вольт.Устройство достигает пропускной способности, приближающейся к 1 MIPS /МГц. [1]
Функции
[ редактировать ]Параметр | Ценить |
---|---|
Тип процессора | 8-битный АВР |
Максимальная скорость процессора | 20 МГц |
Производительность | 20 MIPS при 20 МГц [2] |
Флэш-память | 32 КБ |
СРАМ | 2 КБ |
ЭСППЗУ | 1 КБ |
Количество контактов на упаковке | 28 или 32 |
Емкостные сенсорные каналы | 16 |
Максимальное количество контактов ввода/вывода | 23 |
Внешние прерывания | 3 |
USB- интерфейс | Нет |
Семья
[ редактировать ]Распространенной альтернативой ATmega328 является ATmega328P picoPower. Полный список всех остальных представителей серии megaAVR можно найти на веб-сайте Atmel. [3]
- АТмега328
- ATmega328P и ATmega328P-АВТОМОБИЛЬНЫЙ
- ATmega328PB и ATmega328PB-AUTOMOTIVE (надстройка ATmega328P) — имеет больше периферийных устройств UART, I2C и SPI, чем ATmega328P.
Приложения
[ редактировать ]ATmega328 обычно используется во многих проектах и автономных системах, где необходим простой, маломощный и недорогой микроконтроллер. Пожалуй, наиболее распространенная реализация этого чипа находится на популярной платформе разработки Arduino , а именно Arduino Uno , Arduino Pro Mini. [4] и Arduino Nano модели .
Программирование
[ редактировать ]Квалификация надежности показывает, что прогнозируемая частота сбоев при сохранении данных составляет намного меньше 1 ppm в течение 20 лет при 85 °C или 100 лет при 25 °C. [5]
Сигнал программирования | Имя контакта | ввод/вывод | Функция |
---|---|---|---|
РДЙ/БСИ | ПД1 | ТО | Высокий уровень означает, что MCU готов к новой команде, в противном случае он занят. |
ТЫ | ПД2 | я | Разрешение выхода (активный низкий уровень) |
WR | ПД3 | я | Импульс записи (активный низкий уровень) |
БС1 | ПД4 | я | Выбор байта 1 («0» = младший байт, «1» = старший байт) |
XA0 | ПД5 | я | Действие XTAL, бит 0 |
XA1 | ПД6 | я | Действие XTAL, бит 1 |
ПАГЕЛЬ | ПД7 | я | Загрузка памяти программ и страницы данных EEPROM |
БС2 | ПК2 | я | Выбор байта 2 («0» = младший байт, «1» = 2-й старший байт) |
ДАННЫЕ | ПК[1:0]:ПБ[5:0] | ввод/вывод | Двунаправленная шина данных (выход при низком уровне OE) |
Режим программирования вводится, когда PAGEL (PD7), XA1 (PD6), XA0 (PD5), BS1 (PD4) установлены на ноль. [2] Вывод RESET установлен на 0 В, а V CC на 0 В. V CC установлен на 4,5–5,5 В. Подождите 60 мкс, а RESET установлен на 11,5–12,5 В. Подождите более 310 мкс. [2] Установите XA1:XA0:BS1:DATA = 100 1000 0000 , импульс XTAL1 в течение не менее 150 нс, импульс WR на ноль. Это начнет стирание чипа. Подождите, пока RDY/BSY (PD1) не станет высоким. XA1:XA0:BS1:DATA = 100 0001 0000 , импульс XTAL1, импульс WR до нуля. Это команда записи флэш-памяти. [2] И так далее.
Символ | Булавки | ввод/вывод | Описание |
---|---|---|---|
ДЫМ | ПБ3 | я | Серийные данные в |
МИСО | ПБ4 | ТО | Выход последовательных данных |
ССК | ПБ5 | я | Серийные часы |
Последовательные данные, поступающие в MCU, синхронизируются по нарастающему фронту, а данные от MCU — по заднему фронту. Питание подается на V CC, в то время как RESET и SCK установлены на ноль. Подождите не менее 20 мс, а затем на вывод MOSI будет отправлена последовательная инструкция разрешения программирования 0xAC, 0x53, 0x00, 0x00. Второй байт (0x53) будет возвращен MCU. [2]
См. также
[ редактировать ]- АТмега88
- Микроконтроллеры AVR
- Набор инструкций Atmel AVR
- Сравнительная таблица микроконтроллеров ATtiny
- Внутрисистемное программирование
Ссылки
[ редактировать ]- ^ «АТмега328П» . Проверено 14 июля 2016 г.
- ^ Jump up to: а б с д и ж г «Полное техническое описание 8-битных AVR-микроконтроллеров Atmel ATmega328/P» (PDF) . Проверено 14 июля 2016 г.
- ^ «Микроконтроллеры megaAVR» . Атмел . Проверено 14 июля 2016 г.
- ^ «Ардуино — ArduinoBoardProMini» . www.arduino.cc . Проверено 8 декабря 2021 г.
- ^ «Сводное техническое описание 8-битных AVR-микроконтроллеров Atmel ATmega328/P» (PDF) . Июнь 2016 года . Проверено 14 июля 2016 г.
Внешние ссылки
[ редактировать ]- Официальные веб-страницы
- ATmega328 — Микрочип
- ATmega328P — Микрочип
- ATmega328PB — Микросхема