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

ATmega644A, ATmega644P и ATmega644PA

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

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

Ядро
AVR, 8 бит
Флеш-память
64 КБ
ОЗУ
4 КБ
EEPROM
2 КБ
Частота
до 20 МГц
Питание
1,8–5,5 В
Температура
−40…+105 °C
Линии ввода-вывода
32
Корпуса
PDIP40, TQFP44, VQFN44
Программирование
ISP, HVPP, JTAG

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

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

Распиновка ATmega644A, ATmega644P, ATmega644PA в корпусе PDIP40, вид сверхуATmega644A/644P/644PAPDIP40, вид сверхуPB0 — вывод 1: PCINT8, XCK0, T01PB0PB1 — вывод 2: PCINT9, CLKO, T12PB1PB2 — вывод 3: PCINT10, INT2, AIN03PB2PB3 — вывод 4: PCINT11, OC0A, AIN14PB3PB4 — вывод 5: PCINT12, OC0B, SS5PB4PB5 — вывод 6: PCINT13, MOSI6PB5PB6 — вывод 7: PCINT14, MISO7PB6PB7 — вывод 8: PCINT15, SCK8PB7RESET — вывод 99RESETVCC — вывод 1010VCCGND — вывод 1111GNDXTAL2 — вывод 12: XTAL212XTAL2XTAL1 — вывод 13: XTAL113XTAL1PD0 — вывод 14: RXD0, PCINT2414PD0PD1 — вывод 15: PCINT25, TXD015PD1PD2 — вывод 16: PCINT26, RXD1, INT016PD2PD3 — вывод 17: PCINT27, TXD1, INT117PD3PD4 — вывод 18: PCINT28, XCK1, OC1B18PD4PD5 — вывод 19: PCINT29, OC1A19PD5PD6 — вывод 20: PCINT30, OC2B, ICP120PD6PD7 — вывод 21: OC2A, PCINT3121PD7PC0 — вывод 22: SCL, PCINT1622PC0PC1 — вывод 23: SDA, PCINT1723PC1PC2 — вывод 24: TCK, PCINT1824PC2PC3 — вывод 25: TMS, PCINT1925PC3PC4 — вывод 26: TDO, PCINT2026PC4PC5 — вывод 27: TDI, PCINT2127PC5PC6 — вывод 28: TOSC1, PCINT2228PC6PC7 — вывод 29: TOSC2, PCINT2329PC7AVCC — вывод 3030AVCCGND — вывод 3131GNDAREF — вывод 3232AREFPA7 — вывод 33: ADC7, PCINT733PA7PA6 — вывод 34: ADC6, PCINT634PA6PA5 — вывод 35: ADC5, PCINT535PA5PA4 — вывод 36: ADC4, PCINT436PA4PA3 — вывод 37: ADC3, PCINT337PA3PA2 — вывод 38: ADC2, PCINT238PA2PA1 — вывод 39: ADC1, PCINT139PA1PA0 — вывод 40: ADC0, PCINT040PA0
PDIP40
Распиновка ATmega644A, ATmega644P, ATmega644PA в корпусе TQFP44, VQFN44, вид сверхуATmega644A/644P/644PATQFP44, VQFN44, вид сверхуPB5 — вывод 1: PCINT13, MOSI1PB5PB6 — вывод 2: PCINT14, MISO2PB6PB7 — вывод 3: PCINT15, SCK3PB7RESET — вывод 44RESETVCC — вывод 55VCCGND — вывод 66GNDXTAL2 — вывод 7: XTAL27XTAL2XTAL1 — вывод 8: XTAL18XTAL1PD0 — вывод 9: RXD0, PCINT249PD0PD1 — вывод 10: PCINT25, TXD010PD1PD2 — вывод 11: PCINT26, RXD1, INT011PD2PD3 — вывод 12: PCINT27, TXD1, INT112PD3PD4 — вывод 13: PCINT28, XCK1, OC1B13PD4PD5 — вывод 14: PCINT29, OC1A14PD5PD6 — вывод 15: PCINT30, OC2B, ICP115PD6PD7 — вывод 16: OC2A, PCINT3116PD7VCC — вывод 1717VCCGND — вывод 1818GNDPC0 — вывод 19: SCL, PCINT1619PC0PC1 — вывод 20: SDA, PCINT1720PC1PC2 — вывод 21: TCK, PCINT1821PC2PC3 — вывод 22: TMS, PCINT1922PC3PC4 — вывод 23: TDO, PCINT2023PC4PC5 — вывод 24: TDI, PCINT2124PC5PC6 — вывод 25: TOSC1, PCINT2225PC6PC7 — вывод 26: TOSC2, PCINT2326PC7AVCC — вывод 2727AVCCGND — вывод 2828GNDAREF — вывод 2929AREFPA7 — вывод 30: ADC7, PCINT730PA7PA6 — вывод 31: ADC6, PCINT631PA6PA5 — вывод 32: ADC5, PCINT532PA5PA4 — вывод 33: ADC4, PCINT433PA4PA3 — вывод 34: ADC3, PCINT334PA3PA2 — вывод 35: ADC2, PCINT235PA2PA1 — вывод 36: ADC1, PCINT136PA1PA0 — вывод 37: ADC0, PCINT037PA0VCC — вывод 3838VCCGND — вывод 3939GNDPB0 — вывод 40: PCINT8, XCK0, T040PB0PB1 — вывод 41: PCINT9, CLKO, T141PB1PB2 — вывод 42: PCINT10, INT2, AIN042PB2PB3 — вывод 43: PCINT11, OC0A, AIN143PB3PB4 — вывод 44: PCINT12, OC0B, SS44PB4
TQFP44 и VQFN44
  • ввод-вывод
  • питание и земля
  • сброс и выбор загрузки
  • не подключён
  • выбранная периферия

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

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

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

БлокСигналЛиния порта
USART0RXD0PD0
TXD0PD1
XCK0PB0
USART1RXD1PD2
TXD1PD3
XCK1PD4

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

БлокСигналЛиния порта
SPIMISOPB6
MOSIPB5
SCKPB7
SSPB4

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

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

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

БлокСигналЛиния порта
TC0OC0APB3
OC0BPB4
T0PB0
TC1ICP1PD6
OC1APD5
OC1BPD4
T1PB1
TC2OC2APD7
OC2BPD6
TOSC1PC6
TOSC2PC7

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

БлокСигналЛиния порта
ADCADC0PA0
ADC1PA1
ADC2PA2
ADC3PA3
ADC4PA4
ADC5PA5
ADC6PA6
ADC7PA7

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

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

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

БлокСигналЛиния порта
EXINTINT0PD2
INT1PD3
INT2PB2
PCINT0PA0
PCINT1PA1
PCINT2PA2
PCINT3PA3
PCINT4PA4
PCINT5PA5
PCINT6PA6
PCINT7PA7
PCINT8PB0
PCINT9PB1
PCINT10PB2
PCINT11PB3
PCINT12PB4
PCINT13PB5
PCINT14PB6
PCINT15PB7
PCINT16PC0
PCINT17PC1
PCINT18PC2
PCINT19PC3
PCINT20PC4
PCINT21PC5
PCINT22PC6
PCINT23PC7
PCINT24PD0
PCINT25PD1
PCINT26PD2
PCINT27PD3
PCINT28PD4
PCINT29PD5
PCINT30PD6
PCINT31PD7

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

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

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

БлокСигналЛиния порта
JTAGTCKPC2
TDIPC5
TDOPC4
TMSPC3

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

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

PDIP40TQFP44, VQFN44ИмяТипФункции
140PB0ввод-выводPCINT8, XCK0, T0
241PB1ввод-выводPCINT9, CLKO, T1
342PB2ввод-выводPCINT10, INT2, AIN0
443PB3ввод-выводPCINT11, OC0A, AIN1
544PB4ввод-выводPCINT12, OC0B, SS
61PB5ввод-выводPCINT13, MOSI
72PB6ввод-выводPCINT14, MISO
83PB7ввод-выводPCINT15, SCK
94RESETсброс—
105, 17, 38VCCпитание—
11, 316, 18, 28, 39GNDпитание—
127XTAL2служебныйXTAL2
138XTAL1служебныйXTAL1
149PD0ввод-выводRXD0, PCINT24
1510PD1ввод-выводPCINT25, TXD0
1611PD2ввод-выводPCINT26, RXD1, INT0
1712PD3ввод-выводPCINT27, TXD1, INT1
1813PD4ввод-выводPCINT28, XCK1, OC1B
1914PD5ввод-выводPCINT29, OC1A
2015PD6ввод-выводPCINT30, OC2B, ICP1
2116PD7ввод-выводOC2A, PCINT31
2219PC0ввод-выводSCL, PCINT16
2320PC1ввод-выводSDA, PCINT17
2421PC2ввод-выводTCK, PCINT18
2522PC3ввод-выводTMS, PCINT19
2623PC4ввод-выводTDO, PCINT20
2724PC5ввод-выводTDI, PCINT21
2825PC6ввод-выводTOSC1, PCINT22
2926PC7ввод-выводTOSC2, PCINT23
3027AVCCпитание—
3229AREFпитание—
3330PA7ввод-выводADC7, PCINT7
3431PA6ввод-выводADC6, PCINT6
3532PA5ввод-выводADC5, PCINT5
3633PA4ввод-выводADC4, PCINT4
3734PA3ввод-выводADC3, PCINT3
3835PA2ввод-выводADC2, PCINT2
3936PA1ввод-выводADC1, PCINT1
4037PA0ввод-выводADC0, PCINT0

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

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

ИмяВыводыНазначение
RESETPDIP40: 9; TQFP44: 4вход сброса, активный уровень — низкий
VCCPDIP40: 10; TQFP44: 5, 17, 38напряжение питания
GNDPDIP40: 11, 31; TQFP44: 6, 18, 28, 39общий провод
XTAL2PDIP40: 12; TQFP44: 7выход генератора для кварца
XTAL1PDIP40: 13; TQFP44: 8вход генератора: кварц или внешний тактовый сигнал
AVCCPDIP40: 30; TQFP44: 27питание АЦП и части линий порта; подключают к VCC, даже если АЦП не используется, при работе АЦП — через фильтр нижних частот
AREFPDIP40: 32; TQFP44: 29вход опорного напряжения АЦП

Исполнения

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

МикроконтроллерФлешОЗУEEPROMЧастота и питаниеСигнатураavrdude
ATmega644A64 КБ4 КБ2 КБ20 МГц, 1,8–5,5 В1E 96 09m644a
ATmega644P64 КБ4 КБ2 КБ10 МГц, 1,8–5,5 В; 20 МГц, 2,7–5,5 В1E 96 0Am644p
ATmega644PA64 КБ4 КБ2 КБ20 МГц, 1,8–5,5 В1E 96 0Am644pa

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

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

НомерКорпусЧастотаПитаниеТемпература
ATmega644A-AUTQFP44до 20 МГц1,8–5,5 В−40…+85 °C
ATmega644A-PUPDIP40до 20 МГц1,8–5,5 В−40…+85 °C
ATmega644A-MUVQFN44до 20 МГц1,8–5,5 В−40…+85 °C
ATmega644PV-10AUTQFP44до 10 МГц1,8–5,5 В−40…+85 °C
ATmega644PV-10PUPDIP40до 10 МГц1,8–5,5 В−40…+85 °C
ATmega644PV-10MUVQFN44до 10 МГц1,8–5,5 В−40…+85 °C
ATmega644P-20AUTQFP44до 20 МГц2,7–5,5 В−40…+85 °C
ATmega644P-20PUPDIP40до 20 МГц2,7–5,5 В−40…+85 °C
ATmega644P-20MUVQFN44до 20 МГц2,7–5,5 В−40…+85 °C
ATmega644PV-10ANTQFP44до 10 МГц1,8–5,5 В−40…+105 °C
ATmega644PV-10PNPDIP40до 10 МГц1,8–5,5 В−40…+105 °C
ATmega644PV-10MNVQFN44до 10 МГц1,8–5,5 В−40…+105 °C
ATmega644P-20ANTQFP44до 20 МГц2,7–5,5 В−40…+105 °C
ATmega644P-20PNPDIP40до 20 МГц2,7–5,5 В−40…+105 °C
ATmega644P-20MNVQFN44до 20 МГц2,7–5,5 В−40…+105 °C
ATmega644PA-AUTQFP44до 20 МГц1,8–5,5 В−40…+85 °C
ATmega644PA-PUPDIP40до 20 МГц1,8–5,5 В−40…+85 °C
ATmega644PA-MUVQFN44до 20 МГц1,8–5,5 В−40…+85 °C
ATmega644PA-ANTQFP44до 20 МГц1,8–5,5 В−40…+105 °C
ATmega644PA-PNPDIP40до 20 МГц1,8–5,5 В−40…+105 °C
ATmega644PA-MNVQFN44до 20 МГц1,8–5,5 В−40…+105 °C

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

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

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

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

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

№ВекторИсточник
1RESETсброс: включение питания, вывод RESET, BOD, сторожевой таймер
2INT0внешнее прерывание INT0
3INT1внешнее прерывание INT1
4INT2внешнее прерывание INT2
5PCINT0изменение уровня на выводах группы PCINT0
6PCINT1изменение уровня на выводах группы PCINT1
7PCINT2изменение уровня на выводах группы PCINT2
8PCINT3изменение уровня на выводах группы PCINT3
9WDTсторожевой таймер
10TIMER2_COMPAтаймер 2: совпадение с OCR2A
11TIMER2_COMPBтаймер 2: совпадение с OCR2B
12TIMER2_OVFтаймер 2: переполнение
13TIMER1_CAPTтаймер 1: захват
14TIMER1_COMPAтаймер 1: совпадение с OCR1A
15TIMER1_COMPBтаймер 1: совпадение с OCR1B
16TIMER1_OVFтаймер 1: переполнение
17TIMER0_COMPAтаймер 0: совпадение с OCR0A
18TIMER0_COMPBтаймер 0: совпадение с OCR0B
19TIMER0_OVFтаймер 0: переполнение
20SPI_STCSPI: передача завершена
21USART0_RXUSART0: приём завершён
22USART0_UDREUSART0: регистр данных пуст
23USART0_TXUSART0: передача завершена
24ANALOG_COMPаналоговый компаратор
25ADCАЦП: преобразование завершено
26EE_READYEEPROM готова к записи
27TWITWI (I²C)
28SPM_READYготовность к записи флеш-памяти (SPM)
29USART1_RXUSART1: приём завершён
30USART1_UDREUSART1: регистр данных пуст
31USART1_TXUSART1: передача завершена

Совместимые по выводам

Микроконтроллеры, у которых в том же корпусе на тех же местах стоят те же выводы. Распиновка совпадает полностью, но периферия, память, регистры и фьюзы могут отличаться: перед заменой сверьте даташиты.

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

Чем отличаются ATmega644A, ATmega644P и ATmega644PA?

Память одинаковая: 64 КБ флеш, 4 КБ ОЗУ и 2 КБ EEPROM. Классы скорости по заказным номерам: ATmega644A — 20 МГц, 1,8–5,5 В; ATmega644P — 10 МГц, 1,8–5,5 В или 20 МГц, 2,7–5,5 В; ATmega644PA — 20 МГц, 1,8–5,5 В. Сигнатуры: ATmega644A — 1E 96 09, ATmega644P — 1E 96 0A, ATmega644PA — 1E 96 0A. В общих корпусах расположение выводов и их функции одинаковые.

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

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

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

32 линии: PA0–PA7, PB0–PB7, PC0–PC7, PD0–PD7. У каждой есть альтернативные функции периферии — они перечислены в таблице выводов.

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

Через ISP-программатор: MOSI — PB5 (вывод 6 в PDIP40), MISO — PB6 (вывод 7 в PDIP40), SCK — PB7 (вывод 8 в PDIP40), RESET — вывод 9 в PDIP40, плюс питание и общий провод. В avrdude микроконтроллер выбирается ключом -p m644a. Другие интерфейсы ATmega644A: HVPP — высоковольтное параллельное программирование, JTAG — программирование и отладка.

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

PDIP40; TQFP44 и VQFN44. Через точку с запятой — корпуса с разной распиновкой, внутри группы она одинаковая. Полный список заказных номеров с диапазонами температуры и питания — в разделе «Заказные номера».

Источники

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

Функции и расположение выводов сверены с даташитами ATmega164A/PA/324A/PA/644A/PA/1284/P (DS40002070B), ATmega644P/V (Atmel-8011R).