ATmega32 и ATmega32A
8-битные микроконтроллеры AVR серии megaAVR с 32 КБ флеш-памяти и частотой до 16 МГц в корпусах PDIP40, TQFP44, QFN44. Распиновка с функциями выводов, сверенными с даташитом, заказные номера, фьюзы с завода и векторы прерываний — по описаниям Microchip.
Обновлено данные Microchip, ATmega_DFP 3.6.299
- Ядро
- AVR, 8 бит
- Флеш-память
- 32 КБ
- ОЗУ
- 2 КБ
- EEPROM
- 1 КБ
- Частота
- до 16 МГц
- Питание
- 2,7–5,5 В
- Температура
- −40…+105 °C
- Линии ввода-вывода
- 32
- Корпуса
- PDIP40, TQFP44, QFN44
- Программирование
- ISP, HVPP, JTAG
Схема корпуса
Вид сверху. Выберите периферию — её выводы подсветятся на схемах, а в списке ниже останутся только её сигналы. Наведите курсор на вывод, чтобы увидеть все его функции. Расположение выводов сверено с рисунками и таблицами даташитов.
- ввод-вывод
- питание и земля
- сброс и выбор загрузки
- не подключён
- выбранная периферия
Периферия и её выводы
На какие линии порта выходит каждый сигнал. У классических AVR функции закреплены за линиями: включённая периферия сама занимает свой вывод, выбирать другой, как у STM32, нельзя.
USART — синхронно-асинхронный приёмопередатчик
| Блок | Сигнал | Линия порта |
|---|---|---|
| USART | RXD | PD0 |
| TXD | PD1 | |
| XCK | PB0 |
SPI — последовательный интерфейс SPI
| Блок | Сигнал | Линия порта |
|---|---|---|
| SPI | MISO | PB6 |
| MOSI | PB5 | |
| SCK | PB7 | |
| SS | PB4 |
TWI (I²C) — двухпроводной интерфейс, совместимый с I²C
| Блок | Сигнал | Линия порта |
|---|---|---|
| TWI | SCL | PC0 |
| SDA | PC1 |
Таймеры — выходы сравнения и ШИМ, входы счёта и захвата таймеров
| Блок | Сигнал | Линия порта |
|---|---|---|
| TC0 | OC0 | PB3 |
| T0 | PB0 | |
| TC1 | ICP1 | PD6 |
| OC1A | PD5 | |
| OC1B | PD4 | |
| T1 | PB1 | |
| TC2 | OC2 | PD7 |
| TOSC1 | PC6 | |
| TOSC2 | PC7 |
АЦП — аналого-цифровой преобразователь
| Блок | Сигнал | Линия порта |
|---|---|---|
| ADC | ADC0 | PA0 |
| ADC1 | PA1 | |
| ADC2 | PA2 | |
| ADC3 | PA3 | |
| ADC4 | PA4 | |
| ADC5 | PA5 | |
| ADC6 | PA6 | |
| ADC7 | PA7 |
Компаратор — аналоговый компаратор
| Блок | Сигнал | Линия порта |
|---|---|---|
| AC | AIN0 | PB2 |
| AIN1 | PB3 |
Прерывания — внешние прерывания INT и PCINT
| Блок | Сигнал | Линия порта |
|---|---|---|
| EXINT | INT0 | PD2 |
| INT1 | PD3 | |
| INT2 | PB2 |
JTAG — отладка и программирование по JTAG
| Блок | Сигнал | Линия порта |
|---|---|---|
| JTAG | TCK | PC2 |
| TDI | PC5 | |
| TDO | PC4 | |
| TMS | PC3 |
Таблица выводов
Номера выводов в каждом корпусе и функции линий. Обычный режим порта — вход, выход, вход с подтяжкой — есть у каждой линии ввода-вывода, в таблице перечислены только альтернативные функции. Функции сверены с даташитом: те, которых нет в описании Microchip, добавлены по даташиту.
| PDIP40 | TQFP44, QFN44 | Имя | Тип | Функции |
|---|---|---|---|---|
| 1 | 40 | PB0 | ввод-вывод | XCK, T0 |
| 2 | 41 | PB1 | ввод-вывод | T1 |
| 3 | 42 | PB2 | ввод-вывод | INT2, AIN0 |
| 4 | 43 | PB3 | ввод-вывод | OC0, AIN1 |
| 5 | 44 | PB4 | ввод-вывод | SS |
| 6 | 1 | PB5 | ввод-вывод | MOSI |
| 7 | 2 | PB6 | ввод-вывод | MISO |
| 8 | 3 | PB7 | ввод-вывод | SCK |
| 9 | 4 | RESET | сброс | — |
| 10 | 5, 17, 38 | VCC | питание | — |
| 11, 31 | 6, 18, 28, 39 | GND | питание | — |
| 12 | 7 | XTAL2 | служебный | XTAL2 |
| 13 | 8 | XTAL1 | служебный | XTAL1 |
| 14 | 9 | PD0 | ввод-вывод | RXD |
| 15 | 10 | PD1 | ввод-вывод | TXD |
| 16 | 11 | PD2 | ввод-вывод | INT0 |
| 17 | 12 | PD3 | ввод-вывод | INT1 |
| 18 | 13 | PD4 | ввод-вывод | OC1B |
| 19 | 14 | PD5 | ввод-вывод | OC1A |
| 20 | 15 | PD6 | ввод-вывод | ICP1 |
| 21 | 16 | PD7 | ввод-вывод | OC2 |
| 22 | 19 | PC0 | ввод-вывод | SCL |
| 23 | 20 | PC1 | ввод-вывод | SDA |
| 24 | 21 | PC2 | ввод-вывод | TCK |
| 25 | 22 | PC3 | ввод-вывод | TMS |
| 26 | 23 | PC4 | ввод-вывод | TDO |
| 27 | 24 | PC5 | ввод-вывод | TDI |
| 28 | 25 | PC6 | ввод-вывод | TOSC1 |
| 29 | 26 | PC7 | ввод-вывод | TOSC2 |
| 30 | 27 | AVCC | питание | — |
| 32 | 29 | AREF | питание | — |
| 33 | 30 | PA7 | ввод-вывод | ADC7 |
| 34 | 31 | PA6 | ввод-вывод | ADC6 |
| 35 | 32 | PA5 | ввод-вывод | ADC5 |
| 36 | 33 | PA4 | ввод-вывод | ADC4 |
| 37 | 34 | PA3 | ввод-вывод | ADC3 |
| 38 | 35 | PA2 | ввод-вывод | ADC2 |
| 39 | 36 | PA1 | ввод-вывод | ADC1 |
| 40 | 37 | PA0 | ввод-вывод | ADC0 |
Питание и служебные выводы
Выводы, которые не являются линиями порта. Номиналы блокировочных конденсаторов и фильтра питания АЦП — в разделе о питании даташита.
| Имя | Выводы | Назначение |
|---|---|---|
| RESET | PDIP40: 9; TQFP44: 4 | вход сброса, активный уровень — низкий |
| VCC | PDIP40: 10; TQFP44: 5, 17, 38 | напряжение питания |
| GND | PDIP40: 11, 31; TQFP44: 6, 18, 28, 39 | общий провод |
| XTAL2 | PDIP40: 12; TQFP44: 7 | выход генератора для кварца |
| XTAL1 | PDIP40: 13; TQFP44: 8 | вход генератора: кварц или внешний тактовый сигнал |
| AVCC | PDIP40: 30; TQFP44: 27 | питание АЦП и части линий порта; подключают к VCC, даже если АЦП не используется, при работе АЦП — через фильтр нижних частот |
| AREF | PDIP40: 32; TQFP44: 29 | вход опорного напряжения АЦП |
Исполнения
ATmega32 и ATmega32A — микроконтроллеры с общей распиновкой: в общих корпусах выводы расположены одинаково. Различия — в таблице. Частота и питание — классы скорости из заказных номеров: предельная частота и диапазон питания. Многие модели работают на предельной частоте не во всём диапазоне — зависимость показывает график Speed Grades в даташите. Сигнатура — три байта, по которым программатор узнаёт микроконтроллер, в последнем столбце — его обозначение для ключа -p программы avrdude.
| Микроконтроллер | Флеш | ОЗУ | EEPROM | Частота и питание | Сигнатура | avrdude |
|---|---|---|---|---|---|---|
| ATmega32 | 32 КБ | 2 КБ | 1 КБ | 8 МГц, 2,7–5,5 В; 16 МГц, 4,5–5,5 В | 1E 95 02 | m32 |
| ATmega32A | 32 КБ | 2 КБ | 1 КБ | 16 МГц, 2,7–5,5 В | 1E 95 02 | m32a |
Заказные номера
Номера для заказа из описания Microchip с корпусом, предельной частотой, диапазонами питания и рабочей температуры.
| Номер | Корпус | Частота | Питание | Температура |
|---|---|---|---|---|
| ATmega32L-8AU | TQFP44 | до 8 МГц | 2,7–5,5 В | −40…+85 °C |
| ATmega32L-8PU | PDIP40 | до 8 МГц | 2,7–5,5 В | −40…+85 °C |
| ATmega32L-8MU | QFN44 | до 8 МГц | 2,7–5,5 В | −40…+85 °C |
| ATmega32-16AU | TQFP44 | до 16 МГц | 4,5–5,5 В | −40…+85 °C |
| ATmega32-16PU | PDIP40 | до 16 МГц | 4,5–5,5 В | −40…+85 °C |
| ATmega32-16MU | QFN44 | до 16 МГц | 4,5–5,5 В | −40…+85 °C |
| ATmega32A-AU | TQFP44 | до 16 МГц | 2,7–5,5 В | −40…+85 °C |
| ATmega32A-PU | PDIP40 | до 16 МГц | 2,7–5,5 В | −40…+85 °C |
| ATmega32A-MU | QFN44 | до 16 МГц | 2,7–5,5 В | −40…+85 °C |
| ATmega32A-AN | TQFP44 | до 16 МГц | 2,7–5,5 В | −40…+105 °C |
| ATmega32A-MN | QFN44 | до 16 МГц | 2,7–5,5 В | −40…+105 °C |
Фьюзы с завода
Значения фьюзов, с которыми микроконтроллер приходит с завода, и источник тактового сигнала, который они выбирают. В скобках — имя байта в avrdude. Расшифровку каждого бита, другие режимы и готовую команду avrdude даёт калькулятор фьюзов AVR.
Векторы прерываний
Таблица векторов ATmega32: номер, как в даташите (сброс — первый), имя вектора по описанию Microchip и источник прерывания. Обработчик в avr-gcc объявляют макросом ISR() с именем вектора из avr/io.h — обычно это имя из таблицы с суффиксом _vect, например ISR(INT0_vect).
| № | Вектор | Источник |
|---|---|---|
| 1 | RESET | сброс: включение питания, вывод RESET, BOD, сторожевой таймер |
| 2 | INT0 | внешнее прерывание INT0 |
| 3 | INT1 | внешнее прерывание INT1 |
| 4 | INT2 | внешнее прерывание INT2 |
| 5 | TIMER2_COMP | таймер 2: совпадение |
| 6 | TIMER2_OVF | таймер 2: переполнение |
| 7 | TIMER1_CAPT | таймер 1: захват |
| 8 | TIMER1_COMPA | таймер 1: совпадение с OCR1A |
| 9 | TIMER1_COMPB | таймер 1: совпадение с OCR1B |
| 10 | TIMER1_OVF | таймер 1: переполнение |
| 11 | TIMER0_COMP | таймер 0: совпадение |
| 12 | TIMER0_OVF | таймер 0: переполнение |
| 13 | SPI_STC | SPI: передача завершена |
| 14 | USART_RXC | USART: приём завершён |
| 15 | USART_UDRE | USART: регистр данных пуст |
| 16 | USART_TXC | USART: передача завершена |
| 17 | ADC | АЦП: преобразование завершено |
| 18 | EE_RDY | EEPROM готова к записи |
| 19 | ANA_COMP | аналоговый компаратор |
| 20 | TWI | TWI (I²C) |
| 21 | SPM_RDY | готовность к записи флеш-памяти (SPM) |
Совместимые по выводам
Микроконтроллеры, у которых в том же корпусе на тех же местах стоят те же выводы. Распиновка совпадает полностью, но периферия, память, регистры и фьюзы могут отличаться: перед заменой сверьте даташиты.
- ATmega16 и ATmega16A — PDIP40, TQFP44, QFN44
- ATmega164A, ATmega164P и ATmega164PA — PDIP40, TQFP44
- ATmega324A, ATmega324P и ATmega324PA — PDIP40, TQFP44
- ATmega644A, ATmega644P и ATmega644PA — PDIP40, TQFP44
- ATmega1284 и ATmega1284P — PDIP40, TQFP44, QFN44
Частые вопросы
Чем отличаются ATmega32 и ATmega32A?
Память одинаковая: 32 КБ флеш, 2 КБ ОЗУ и 1 КБ EEPROM. Классы скорости по заказным номерам: ATmega32 — 8 МГц, 2,7–5,5 В или 16 МГц, 4,5–5,5 В; ATmega32A — 16 МГц, 2,7–5,5 В. Сигнатура у них одна и та же. В общих корпусах расположение выводов и их функции одинаковые.
Какие фьюзы у ATmega32 с завода?
LOW 0xE1, HIGH 0x99 — тактирование: внутренний RC-генератор 1 МГц. Расшифровку каждого бита и команду avrdude для своих значений даёт калькулятор фьюзов AVR.
Сколько линий ввода-вывода у ATmega32?
32 линии: PA0–PA7, PB0–PB7, PC0–PC7, PD0–PD7. У каждой есть альтернативные функции периферии — они перечислены в таблице выводов.
Как прошить ATmega32?
Через ISP-программатор: MOSI — PB5 (вывод 6 в PDIP40), MISO — PB6 (вывод 7 в PDIP40), SCK — PB7 (вывод 8 в PDIP40), RESET — вывод 9 в PDIP40, плюс питание и общий провод. В avrdude микроконтроллер выбирается ключом -p m32. Другие интерфейсы ATmega32: HVPP — высоковольтное параллельное программирование, JTAG — программирование и отладка.
В каких корпусах выпускается ATmega32?
PDIP40; TQFP44 и QFN44. Через точку с запятой — корпуса с разной распиновкой, внутри группы она одинаковая. Полный список заказных номеров с диапазонами температуры и питания — в разделе «Заказные номера».
Источники
Корпуса, выводы, память, заказные номера, фьюзы, сигнатуры и векторы прерываний — из файлов описания устройств (ATDF) в паках Microchip ATmega_DFP 3.6.299 от 22 января 2026 г., лицензия Apache 2.0. Данные преобразованы в таблицы и схемы корпусов; тексты и рисунки — GAW. Лицензии и источники данных.
Функции и расположение выводов сверены с даташитами ATmega32(L) (2503Q–AVR–02/11), ATmega32A (DS40002072A). По даташиту исправлены ошибки описания Microchip: у ATmega32A INT1 — на PD3, а не на PD2, INT0 — на PD2, а не на PD3; у ATmega32A переставлены XTAL1 и XTAL2: по даташиту XTAL2 — вывод 12 в PDIP40 и 7 в TQFP44, XTAL1 — 13 и 8.
Калькуляторы и статьи
- Фьюзы AVRБиты фьюзов, заводские значения и avrdude
- Таймер AVR и STM32Предделитель, OCRnA, PSC и ARR под частоту
- Скорость UARTUBRR, BRR, TH1 и ошибка скорости
- Подтягивающие резисторы I²CДиапазон Rp по напряжению, скорости и ёмкости шины
- AVR ISP, UPDI и TPIISP 6 и 10 pin, USBasp, UPDI и TPI
- Система команд AVRВсе инструкции с флагами и тактами, адресация, примеры кода
- UARTКадр 8N1, скорость и допуск, TX и RX, уровни, USB–UART, AVR и STM32
- SPISCLK, MOSI, MISO, CS, режимы 0–3, daisy chain, частота, SPI в AVR