Перейти к содержанию

ATmega32U4 и ATmega16U4

8-битные микроконтроллеры AVR серии megaAVR с 32 и 16 КБ флеш-памяти и частотой до 16 МГц в корпусах TQFP44, QFN44. Распиновка с функциями выводов, сверенными с даташитом, заказные номера, фьюзы с завода и векторы прерываний — по описаниям Microchip.

Обновлено данные Microchip, ATmega_DFP 3.6.299

Ядро
AVR, 8 бит
Флеш-память
16 и 32 КБ
ОЗУ
1280 байт и 2560 байт
EEPROM
512 байт и 1 КБ
Частота
до 16 МГц
Питание
2,7–5,5 В
Температура
−40…+85 °C
Линии ввода-вывода
26
Корпуса
TQFP44, QFN44
Программирование
ISP, HVPP, JTAG

Схема корпуса

Вид сверху. Выберите периферию — её выводы подсветятся на схеме, а в списке ниже останутся только её сигналы. Наведите курсор на вывод, чтобы увидеть все его функции. Расположение выводов сверено с рисунками и таблицами даташитов.

Распиновка ATmega32U4, ATmega16U4 в корпусе TQFP44, QFN44, вид сверхуATmega32U4ATmega16U4TQFP44, QFN44, вид сверхуPE6 — вывод 1: INT6, AIN01PE6UVCC — вывод 22UVCCD- — вывод 33D-D+ — вывод 44D+UGND — вывод 55UGNDUCAP — вывод 66UCAPVBUS — вывод 77VBUSPB0 — вывод 8: SS, PCINT08PB0PB1 — вывод 9: SCK, PCINT19PB1PB2 — вывод 10: PDI, PCINT2, MOSI10PB2PB3 — вывод 11: PDO, MISO, PCINT311PB3PB7 — вывод 12: PCINT7, OC0A, OC1C, RTS12PB7RESET — вывод 1313RESETVCC — вывод 1414VCCGND — вывод 1515GNDXTAL2 — вывод 16: XTAL216XTAL2XTAL1 — вывод 17: XTAL117XTAL1PD0 — вывод 18: OC0B, SCL, INT018PD0PD1 — вывод 19: SDA, INT119PD1PD2 — вывод 20: RXD1, INT220PD2PD3 — вывод 21: TXD1, INT321PD3PD5 — вывод 22: XCK1, CTS22PD5GND — вывод 2323GNDAVCC — вывод 2424AVCCPD4 — вывод 25: ICP1, ADC825PD4PD6 — вывод 26: T1, OC4D̅, ADC926PD6PD7 — вывод 27: T0, OC4D, ADC1027PD7PB4 — вывод 28: PCINT4, ADC1128PB4PB5 — вывод 29: OC1A, PCINT5, OC4B̅, ADC1229PB5PB6 — вывод 30: OC1B, PCINT6, OC4B, ADC1330PB6PC6 — вывод 31: OC3A, OC4A̅31PC6PC7 — вывод 32: ICP3, CLKO, OC4A32PC7PE2 — вывод 33: HWB33PE2VCC — вывод 3434VCCGND — вывод 3535GNDPF7 — вывод 36: ADC7, TDI36PF7PF6 — вывод 37: ADC6, TDO37PF6PF5 — вывод 38: ADC5, TMS38PF5PF4 — вывод 39: ADC4, TCK39PF4PF1 — вывод 40: ADC140PF1PF0 — вывод 41: ADC041PF0AREF — вывод 4242AREFGND — вывод 4343GNDAVCC — вывод 4444AVCC
TQFP44 и QFN44
  • ввод-вывод
  • питание и земля
  • сброс и выбор загрузки
  • не подключён
  • выбранная периферия

Периферия и её выводы

На какие линии порта выходит каждый сигнал. У классических AVR функции закреплены за линиями: включённая периферия сама занимает свой вывод, выбирать другой, как у STM32, нельзя.

USART — синхронно-асинхронный приёмопередатчик

БлокСигналЛиния порта
USART1CTSPD5
RTSPB7
RXD1PD2
TXD1PD3
XCK1PD5

SPI — последовательный интерфейс SPI

БлокСигналЛиния порта
SPIMISOPB3
MOSIPB2
PDIPB2
PDOPB3
SCKPB1
SSPB0

TWI (I²C) — двухпроводной интерфейс, совместимый с I²C

БлокСигналЛиния порта
TWISCLPD0
SDAPD1

Таймеры — выходы сравнения и ШИМ, входы счёта и захвата таймеров

БлокСигналЛиния порта
TC0OC0APB7
OC0BPD0
T0PD7
TC1ICP1PD4
OC1APB5
OC1BPB6
OC1CPB7
T1PD6
TC3ICP3PC7
OC3APC6
TC4OC4APC7
OC4A̅PC6
OC4BPB6
OC4B̅PB5
OC4DPD7
OC4D̅PD6

АЦП — аналого-цифровой преобразователь

БлокСигналЛиния порта
ADCADC0PF0
ADC1PF1
ADC4PF4
ADC5PF5
ADC6PF6
ADC7PF7
ADC8PD4
ADC9PD6
ADC10PD7
ADC11PB4
ADC12PB5
ADC13PB6

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

БлокСигналЛиния порта
ACAIN0PE6

Прерывания — внешние прерывания INT и PCINT

БлокСигналЛиния порта
EXINTINT0PD0
INT1PD1
INT2PD2
INT3PD3
INT6PE6
PCINT0PB0
PCINT1PB1
PCINT2PB2
PCINT3PB3
PCINT4PB4
PCINT5PB5
PCINT6PB6
PCINT7PB7

Тактирование — кварцевый генератор, вход и выход тактового сигнала

БлокСигналЛиния порта
CPUCLKOPC7

JTAG — отладка и программирование по JTAG

БлокСигналЛиния порта
JTAGTCKPF4
TDIPF7
TDOPF6
TMSPF5

Таблица выводов

Номера выводов в каждом корпусе и функции линий. Обычный режим порта — вход, выход, вход с подтяжкой — есть у каждой линии ввода-вывода, в таблице перечислены только альтернативные функции. Функции сверены с даташитом.

TQFP44, QFN44ИмяТипФункции
1PE6ввод-выводINT6, AIN0
2UVCCпитание—
3D-служебный—
4D+служебный—
5UGNDпитание—
6UCAPпитание—
7VBUSпитание—
8PB0ввод-выводSS, PCINT0
9PB1ввод-выводSCK, PCINT1
10PB2ввод-выводPDI, PCINT2, MOSI
11PB3ввод-выводPDO, MISO, PCINT3
12PB7ввод-выводPCINT7, OC0A, OC1C, RTS
13RESETсброс—
14, 34VCCпитание—
15, 23, 35, 43GNDпитание—
16XTAL2служебныйXTAL2
17XTAL1служебныйXTAL1
18PD0ввод-выводOC0B, SCL, INT0
19PD1ввод-выводSDA, INT1
20PD2ввод-выводRXD1, INT2
21PD3ввод-выводTXD1, INT3
22PD5ввод-выводXCK1, CTS
24, 44AVCCпитание—
25PD4ввод-выводICP1, ADC8
26PD6ввод-выводT1, OC4D̅, ADC9
27PD7ввод-выводT0, OC4D, ADC10
28PB4ввод-выводPCINT4, ADC11
29PB5ввод-выводOC1A, PCINT5, OC4B̅, ADC12
30PB6ввод-выводOC1B, PCINT6, OC4B, ADC13
31PC6ввод-выводOC3A, OC4A̅
32PC7ввод-выводICP3, CLKO, OC4A
33PE2ввод-выводHWB
36PF7ввод-выводADC7, TDI
37PF6ввод-выводADC6, TDO
38PF5ввод-выводADC5, TMS
39PF4ввод-выводADC4, TCK
40PF1ввод-выводADC1
41PF0ввод-выводADC0
42AREFпитание—

Питание и служебные выводы

Выводы, которые не являются линиями порта. Номиналы блокировочных конденсаторов и фильтра питания АЦП — в разделе о питании даташита.

ИмяВыводыНазначение
UVCCTQFP44: 2питание стабилизатора USB
D-TQFP44: 3линия данных USB
D+TQFP44: 4линия данных USB
UGNDTQFP44: 5общий провод USB
UCAPTQFP44: 6выход стабилизатора USB, к нему подключают внешний конденсатор
VBUSTQFP44: 7вход контроля напряжения шины USB
RESETTQFP44: 13вход сброса, активный уровень — низкий
VCCTQFP44: 14, 34напряжение питания
GNDTQFP44: 15, 23, 35, 43общий провод
XTAL2TQFP44: 16выход генератора для кварца
XTAL1TQFP44: 17вход генератора: кварц или внешний тактовый сигнал
AVCCTQFP44: 24, 44питание АЦП и части линий порта; подключают к VCC, даже если АЦП не используется, при работе АЦП — через фильтр нижних частот
AREFTQFP44: 42вход опорного напряжения АЦП

Исполнения

ATmega32U4 и ATmega16U4 — микроконтроллеры с общей распиновкой: в общих корпусах выводы расположены одинаково. Различия — в таблице. Частота и питание — классы скорости из заказных номеров: предельная частота и диапазон питания. Многие модели работают на предельной частоте не во всём диапазоне — зависимость показывает график Speed Grades в даташите. Сигнатура — три байта, по которым программатор узнаёт микроконтроллер, в последнем столбце — его обозначение для ключа -p программы avrdude.

МикроконтроллерФлешОЗУEEPROMЧастота и питаниеСигнатураavrdude
ATmega32U432 КБ2560 байт1 КБ16 МГц, 2,7–5,5 В1E 95 87m32u4
ATmega16U416 КБ1280 байт512 байт16 МГц, 2,7–5,5 В1E 94 88m16u4

Заказные номера

Номера для заказа из описания Microchip с корпусом, предельной частотой, диапазонами питания и рабочей температуры.

НомерКорпусЧастотаПитаниеТемпература
ATmega32U4-AUTQFP44до 16 МГц2,7–5,5 В−40…+85 °C
ATmega32U4RC-AUTQFP44до 16 МГц2,7–5,5 В−40…+85 °C
ATmega32U4-MUQFN44до 16 МГц2,7–5,5 В−40…+85 °C
ATmega32U4RC-MUQFN44до 16 МГц2,7–5,5 В−40…+85 °C
ATmega16U4-AUTQFP44до 16 МГц2,7–5,5 В−40…+85 °C
ATmega16U4RC-AUTQFP44до 16 МГц2,7–5,5 В−40…+85 °C
ATmega16U4-MUQFN44до 16 МГц2,7–5,5 В−40…+85 °C
ATmega16U4RC-MUQFN44до 16 МГц2,7–5,5 В−40…+85 °C

Фьюзы с завода

Значения фьюзов, с которыми микроконтроллер приходит с завода, и источник тактового сигнала, который они выбирают. В скобках — имя байта в avrdude. Расшифровку каждого бита, другие режимы и готовую команду avrdude даёт калькулятор фьюзов AVR.

МикроконтроллерLOW (lfuse)HIGH (hfuse)EXTENDED (efuse)ТактированиеКалькулятор
ATmega32U40x520x990xFBВнутренний RC-генератор, делитель на 8 (CKDIV8)открыть
ATmega16U40x520x990xFBВнутренний RC-генератор, делитель на 8 (CKDIV8)открыть

Векторы прерываний

Таблица векторов ATmega32U4: номер, как в даташите (сброс — первый), имя вектора по описанию Microchip и источник прерывания. Обработчик в avr-gcc объявляют макросом ISR() с именем вектора из avr/io.h — обычно это имя из таблицы с суффиксом _vect, например ISR(INT0_vect).

№ВекторИсточник
1RESETсброс: включение питания, вывод RESET, BOD, сторожевой таймер
2INT0внешнее прерывание INT0
3INT1внешнее прерывание INT1
4INT2внешнее прерывание INT2
5INT3внешнее прерывание INT3
6Reserved1Reserved1
7Reserved2Reserved2
8INT6внешнее прерывание INT6
9Reserved3Reserved3
10PCINT0изменение уровня на выводах группы PCINT0
11USB_GENUSB: общие события
12USB_COMUSB: события конечных точек
13WDTсторожевой таймер
14Reserved4Reserved4
15Reserved5Reserved5
16Reserved6Reserved6
17TIMER1_CAPTтаймер 1: захват
18TIMER1_COMPAтаймер 1: совпадение с OCR1A
19TIMER1_COMPBтаймер 1: совпадение с OCR1B
20TIMER1_COMPCтаймер 1: совпадение с OCR1C
21TIMER1_OVFтаймер 1: переполнение
22TIMER0_COMPAтаймер 0: совпадение с OCR0A
23TIMER0_COMPBтаймер 0: совпадение с OCR0B
24TIMER0_OVFтаймер 0: переполнение
25SPI_STCSPI: передача завершена
26USART1_RXUSART1: приём завершён
27USART1_UDREUSART1: регистр данных пуст
28USART1_TXUSART1: передача завершена
29ANALOG_COMPаналоговый компаратор
30ADCАЦП: преобразование завершено
31EE_READYEEPROM готова к записи
32TIMER3_CAPTтаймер 3: захват
33TIMER3_COMPAтаймер 3: совпадение с OCR3A
34TIMER3_COMPBтаймер 3: совпадение с OCR3B
35TIMER3_COMPCтаймер 3: совпадение с OCR3C
36TIMER3_OVFтаймер 3: переполнение
37TWITWI (I²C)
38SPM_READYготовность к записи флеш-памяти (SPM)
39TIMER4_COMPAтаймер 4: совпадение с OCR4A
40TIMER4_COMPBтаймер 4: совпадение с OCR4B
41TIMER4_COMPDтаймер 4: совпадение с OCR4D
42TIMER4_OVFтаймер 4: переполнение
43TIMER4_FPFTimer/Counter4 Fault Protection Interrupt

Частые вопросы

Чем отличаются ATmega32U4 и ATmega16U4?

Объём памяти: ATmega32U4 — 32 КБ флеш, 2560 байт ОЗУ, 1 КБ EEPROM; ATmega16U4 — 16 КБ флеш, 1280 байт ОЗУ, 512 байт EEPROM. Сигнатуры разные: avrdude сверяет сигнатуру с типом, указанным ключом -p, и не станет прошивать другой микроконтроллер без ключа -F. В общих корпусах расположение выводов и их функции одинаковые.

Какие фьюзы у ATmega32U4 с завода?

LOW 0x52, HIGH 0x99, EXTENDED 0xFB — тактирование: внутренний RC-генератор, делитель на 8 (CKDIV8). Расшифровку каждого бита и команду avrdude для своих значений даёт калькулятор фьюзов AVR.

Сколько линий ввода-вывода у ATmega32U4?

26 линий: PB0–PB7, PC6–PC7, PD0–PD7, PE2, PE6, PF0, PF1, PF4, PF5, PF6, PF7. У каждой есть альтернативные функции периферии — они перечислены в таблице выводов.

Как прошить ATmega32U4?

Через ISP-программатор: PDI — PB2 (вывод 10 в TQFP44), PDO — PB3 (вывод 11 в TQFP44), SCK — PB1 (вывод 9 в TQFP44), RESET — вывод 13 в TQFP44, плюс питание и общий провод. В avrdude микроконтроллер выбирается ключом -p m32u4. Другие интерфейсы ATmega32U4: HVPP — высоковольтное параллельное программирование, JTAG — программирование и отладка.

В каких корпусах выпускается ATmega32U4?

TQFP44 и QFN44. Распиновка у них одинаковая. Полный список заказных номеров с диапазонами температуры и питания — в разделе «Заказные номера».

Источники

Корпуса, выводы, память, заказные номера, фьюзы, сигнатуры и векторы прерываний — из файлов описания устройств (ATDF) в паках Microchip ATmega_DFP 3.6.299 от 22 января 2026 г., лицензия Apache 2.0. Данные преобразованы в таблицы и схемы корпусов; тексты и рисунки — GAW. Лицензии и источники данных.

Функции и расположение выводов сверены с даташитом ATmega16U4/32U4 (Atmel-7766J).