ATmega328 является одно- чип микроконтроллер , созданный Atmel в megaAVR семье (позже Microchip Technology приобрела Atmel в 2016 году). Он имеет модифицированное ядро 8-битного RISC- процессора с гарвардской архитектурой .
Характеристики
8-разрядный микроконтроллер Atmel AVR на базе RISC сочетает в себе 32 КБ флэш- памяти ISP с возможностями чтения во время записи, 1 КБ EEPROM , 2 КБ SRAM , 23 линии ввода-вывода общего назначения, 32 рабочих регистра общего назначения , три гибких таймера / счетчики с режимами сравнения, внутренними и внешними прерываниями , последовательным программируемым USART , байтовым 2-проводным последовательным интерфейсом, последовательным портом SPI , 6-канальным 10-битным аналого - цифровым преобразователем (8 каналов в пакетах TQFP и QFN / MLF ) , программируемый сторожевой таймер с внутренним генератором и пять программно выбираемых режимов энергосбережения. Устройство работает в диапазоне 1,8-5,5 вольт. Пропускная способность устройства приближается к 1 MIPS на МГц. [1]
Функции
Параметр | Значение |
---|---|
Тип процессора | 8-битный AVR |
Представление | 20 MIPS при 20 МГц [2] |
Флэш-память | 32 КБ |
SRAM | 2 КБ |
EEPROM | 1 КБ |
Количество контактов | 28 или 32 контакта: |
Максимальная рабочая частота | 20 МГц |
Количество сенсорных каналов | 16 |
Аппаратное получение QTouch | Нет |
Максимальное количество контактов ввода / вывода | 23 |
Внешние прерывания | 2 |
Интерфейс USB | Нет |
Скорость USB | - |
Семья
Распространенной альтернативой ATmega328 является ATmega328P "picoPower". Полный список всех остальных членов серии megaAVR можно найти на веб-сайте Atmel. [3]
- ATmega328
- ATmega328P и ATmega328P-АВТОМОБИЛЬ
- ATmega328PB и ATmega328PB-AUTOMOTIVE (расширенный набор ATmega328P) - имеет больше периферийных устройств UART, I2C и SPI, чем ATmega328P
Приложения
ATmega328 обычно используется во многих проектах и автономных системах, где требуется простой, маломощный и недорогой микроконтроллер. Пожалуй, наиболее распространенная реализация этого чипа находится на популярной платформе разработки Arduino , а именно на моделях Arduino Uno и Arduino Nano .
Программирование
Квалификация надежности показывает, что прогнозируемая частота отказов при хранении данных намного меньше 1 PPM за 20 лет при 85 ° C или 100 лет при 25 ° C. [4]
Сигнал программирования | Имя PIN-кода | Ввод / вывод | Функция |
---|---|---|---|
RDY / BSY | PD1 | О | Высокий означает, что MCU готов к новой команде, в противном случае занят. |
OE | PD2 | я | Разрешение выхода (активный низкий уровень) |
WR | PD3 | я | Импульс записи (активный низкий) |
BS1 | PD4 | я | Выбор байта 1 («0» = младший байт, «1» = старший байт) |
XA0 | PD5 | я | Бит действия XTAL 0 |
XA1 | PD6 | я | XTAL Action бит 1 |
PAGEL | PD7 | я | Программная память и загрузка страницы данных EEPROM |
BS2 | ПК2 | я | Выбор байта 2 («0» = младший байт, «1» = 2-й старший байт) |
ДАННЫЕ | ПК [1: 0]: PB [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 до нуля. Это команда записи Flash. [2] И так далее ..
Символ | Булавки | Ввод / вывод | Описание |
---|---|---|---|
MOSI | PB3 | я | Серийные данные в |
MISO | PB4 | О | Последовательный выход данных |
SCK | PB5 | я | Последовательные часы |
Последовательные данные к MCU синхронизируются по переднему фронту, а данные от MCU синхронизируются по заднему фронту. Питание подается на V CC, в то время как RESET и SCK установлены на ноль. Подождите не менее 20 мс, а затем на вывод MOSI отправляется последовательная инструкция включения программирования 0xAC, 0x53, 0x00, 0x00. Второй байт (0x53) будет возвращен MCU. [2]
Смотрите также
- ATmega88
- Микроконтроллеры AVR
- Набор инструкций Atmel AVR
- Таблица сравнения микроконтроллеров ATtiny
- Внутрисистемное программирование
Рекомендации
- ^ "ATmega328P" . Проверено 14 июля 2016 .
- ^ Б с д е е г "Atmel 8-битные микроконтроллеры AVR ATmega328 / P Datasheet Complete" (PDF) . Проверено 14 июля 2016 .
- ^ «Микроконтроллеры megaAVR» . Атмель . Проверено 14 июля 2016 .
- ^ "Краткое описание спецификации 8-битных микроконтроллеров AVR ATmega328 / P Atmel" (PDF) . Июнь 2016 . Проверено 14 июля 2016 .
Внешние ссылки
- Официальные веб-страницы
- ATmega328 - Микрочип
- ATmega328P - Микрочип
- ATmega328PB - Микрочип