ATtiny1606, ATtiny806 и ATtiny406
8-битные микроконтроллеры AVR серии tinyAVR 0 с 16, 8 и 4 КБ флеш-памяти и частотой до 20 МГц в корпусах SOIC20, VQFN20. Распиновка с функциями выводов, сверенными с таблицами и рисунками даташита, заказные номера и классы скорости — по даташиту, фьюзы с завода и векторы прерываний — по описанию Microchip.
Обновлено данные Microchip, ATtiny_DFP 3.4.278
- Ядро
- AVR, 8 бит
- Серия
- tinyAVR 0
- Флеш-память
- 4, 8 и 16 КБ
- ОЗУ
- 256 байт, 512 байт и 1 КБ
- EEPROM
- 128 байт и 256 байт
- Частота
- до 20 МГц
- Питание
- 1,8–5,5 В
- Температура
- −40…+125 °C
- Линии ввода-вывода
- 18
- Корпуса
- SOIC20, VQFN20
- Программирование
- UPDI
Схема корпуса
Вид сверху. Выберите периферию — её выводы подсветятся на схемах, а в списке ниже останутся только её сигналы. Наведите курсор на вывод, чтобы увидеть все его функции. Расположение выводов сверено с рисунками и таблицами даташитов.
- ввод-вывод
- питание и земля
- сброс и выбор загрузки
- не подключён
- выбранная периферия
PNG, 1242 × 848 — для документации и печати
PNG, 1242 × 750 — для документации и печати
Периферия и её выводы
На какие линии порта выходит каждый сигнал. Блоки названы, как в даташите, с номером экземпляра: USART0, TCA0. У ATtiny1606 часть сигналов можно перенести на другой набор выводов — CCL, SPI0, TCA0, TCB0 и USART0; место выбирают регистры мультиплексора PORTMUX, альтернативные выводы помечены «альт.».
USART — синхронно-асинхронный приёмопередатчик
| Блок | Сигнал | Линия порта |
|---|---|---|
| USART0 | RxD | PA2 (альт.), PB3 |
| TxD | PA1 (альт.), PB2 | |
| XCK | PA3 (альт.), PB1 | |
| XDIR | PA4 (альт.), PB0 |
SPI — последовательный интерфейс SPI
| Блок | Сигнал | Линия порта |
|---|---|---|
| SPI0 | MISO | PA2, PC1 (альт.) |
| MOSI | PA1, PC2 (альт.) | |
| SCK | PA3, PC0 (альт.) | |
| SS | PA4, PC3 (альт.) |
TWI (I²C) — двухпроводной интерфейс, совместимый с I²C
| Блок | Сигнал | Линия порта |
|---|---|---|
| TWI0 | SCL | PB0 |
| SDA | PB1 |
Таймеры — выходы сравнения и ШИМ, входы счёта и захвата таймеров
| Блок | Сигнал | Линия порта |
|---|---|---|
| TCA0 | WO0 | PB0, PB3 (альт.) |
| WO1 | PB1, PB4 (альт.) | |
| WO2 | PB2, PB5 (альт.) | |
| WO3 | PA3, PC3 (альт.) | |
| WO4 | PA4 | |
| WO5 | PA5 | |
| TCB0 | WO | PA5, PC0 (альт.) |
АЦП — аналого-цифровой преобразователь
| Блок | Сигнал | Линия порта |
|---|---|---|
| ADC0 | AIN0 | PA0 |
| AIN1 | PA1 | |
| AIN2 | PA2 | |
| AIN3 | PA3 | |
| AIN4 | PA4 | |
| AIN5 | PA5 | |
| AIN6 | PA6 | |
| AIN7 | PA7 | |
| AIN8 | PB5 | |
| AIN9 | PB4 | |
| AIN10 | PB1 | |
| AIN11 | PB0 |
Компаратор — аналоговый компаратор
| Блок | Сигнал | Линия порта |
|---|---|---|
| AC0 | AINN0 | PA6 |
| AINN1 | PB4 | |
| AINP0 | PA7 | |
| AINP1 | PB5 | |
| OUT | PA5 |
Тактирование — кварцевый генератор, вход и выход тактового сигнала
| Блок | Сигнал | Линия порта |
|---|---|---|
| CLKCTRL | CLKOUT | PB5 |
| EXTCLK | PA3 |
CCL — настраиваемая логика: входы и выходы таблиц LUT
| Блок | Сигнал | Линия порта |
|---|---|---|
| CCL | LUT0-IN0 | PA0 |
| LUT0-IN1 | PA1 | |
| LUT0-IN2 | PA2 | |
| LUT0-OUT | PA4, PB4 (альт.) | |
| LUT1-IN0 | PC3 | |
| LUT1-OUT | PA7, PC1 (альт.) |
События — система событий: выходы EVOUT
| Блок | Сигнал | Линия порта |
|---|---|---|
| EVSYS | EVOUT0 | PA2 |
| EVOUT1 | PB2 | |
| EVOUT2 | PC2 |
UPDI и сброс — программирование и отладка по одному проводу, сброс
| Блок | Сигнал | Линия порта |
|---|---|---|
| RSTCTRL | RESET | PA0 |
| SYSCFG | UPDI | PA0 |
Таблица выводов
Номера выводов в каждом корпусе и функции линий. Обычный режим порта — вход, выход, вход с подтяжкой — есть у каждой линии ввода-вывода, в таблице перечислены только альтернативные функции. Функции сверены с даташитом.
| SOIC20 | VQFN20 | Имя | Тип | Функции |
|---|---|---|---|---|
| 1 | 4 | VDD | питание | — |
| 2 | 5 | PA4 | ввод-вывод | AIN4, XDIR (альт.), SS, WO4, LUT0-OUT |
| 3 | 6 | PA5 | ввод-вывод | AIN5, OUT, WO5, WO |
| 4 | 7 | PA6 | ввод-вывод | AIN6, AINN0 |
| 5 | 8 | PA7 | ввод-вывод | AIN7, AINP0, LUT1-OUT |
| 6 | 9 | PB5 | ввод-вывод | CLKOUT, AIN8, AINP1, WO2 (альт.) |
| 7 | 10 | PB4 | ввод-вывод | AIN9, AINN1, WO1 (альт.), LUT0-OUT (альт.) |
| 8 | 11 | PB3 | ввод-вывод | RxD, WO0 (альт.) |
| 9 | 12 | PB2 | ввод-вывод | EVOUT1, TxD, WO2 |
| 10 | 13 | PB1 | ввод-вывод | AIN10, XCK, SDA, WO1 |
| 11 | 14 | PB0 | ввод-вывод | AIN11, XDIR, SCL, WO0 |
| 12 | 15 | PC0 | ввод-вывод | SCK (альт.), WO (альт.) |
| 13 | 16 | PC1 | ввод-вывод | MISO (альт.), LUT1-OUT (альт.) |
| 14 | 17 | PC2 | ввод-вывод | EVOUT2, MOSI (альт.) |
| 15 | 18 | PC3 | ввод-вывод | SS (альт.), WO3 (альт.), LUT1-IN0 |
| 16 | 19 | PA0 | ввод-вывод | RESET, UPDI, AIN0, LUT0-IN0 |
| 17 | 20 | PA1 | ввод-вывод | AIN1, TxD (альт.), MOSI, LUT0-IN1 |
| 18 | 1 | PA2 | ввод-вывод | EVOUT0, AIN2, RxD (альт.), MISO, LUT0-IN2 |
| 19 | 2 | PA3 | ввод-вывод | EXTCLK, AIN3, XCK (альт.), SCK, WO3 |
| 20 | 3 | GND | питание | — |
Питание и служебные выводы
Выводы, которые не являются линиями порта. Номиналы блокировочных конденсаторов и фильтра питания АЦП — в разделе о питании даташита.
| Имя | Выводы | Назначение |
|---|---|---|
| VDD | SOIC20: 1; VQFN20: 4 | напряжение питания |
| GND | SOIC20: 20; VQFN20: 3 | общий провод |
Исполнения
ATtiny1606, ATtiny806 и ATtiny406 — микроконтроллеры с общей распиновкой: в общих корпусах выводы расположены одинаково. Различия — в таблице. Частота и питание — классы скорости из списка характеристик даташита: чем ниже напряжение питания, тем ниже допустимая частота. Сигнатура — три байта, по которым программатор узнаёт микроконтроллер, в последнем столбце — его обозначение для ключа -p программы avrdude.
| Микроконтроллер | Флеш | ОЗУ | EEPROM | Частота и питание | Сигнатура | avrdude |
|---|---|---|---|---|---|---|
| ATtiny1606 | 16 КБ | 1 КБ | 256 байт | до 5 МГц при 1,8–5,5 В, до 10 МГц при 2,7–5,5 В, до 20 МГц при 4,5–5,5 В | 1E 94 24 | t1606 |
| ATtiny806 | 8 КБ | 512 байт | 128 байт | до 5 МГц при 1,8–5,5 В, до 10 МГц при 2,7–5,5 В, до 20 МГц при 4,5–5,5 В | 1E 93 24 | t806 |
| ATtiny406 | 4 КБ | 256 байт | 128 байт | до 5 МГц при 1,8–5,5 В, до 10 МГц при 2,7–5,5 В, до 20 МГц при 4,5–5,5 В | 1E 92 25 | t406 |
Заказные номера
Номера для заказа из таблицы Ordering Information даташита с корпусом, предельной частотой, диапазонами питания и рабочей температуры. Буква R в суффиксе — поставка на ленте, -VAO — автомобильное исполнение.
| Номер | Корпус | Частота | Питание | Температура |
|---|---|---|---|---|
| ATtiny1606-MNR | VQFN20 | до 20 МГц | 1,8–5,5 В | −40…+105 °C |
| ATtiny1606-MN | VQFN20 | до 20 МГц | 1,8–5,5 В | −40…+105 °C |
| ATtiny1606-MFR | VQFN20 | до 16 МГц | 2,7–5,5 В | −40…+125 °C |
| ATtiny1606-MF | VQFN20 | до 16 МГц | 2,7–5,5 В | −40…+125 °C |
| ATtiny1606-SNR | SOIC20 | до 20 МГц | 1,8–5,5 В | −40…+105 °C |
| ATtiny1606-SN | SOIC20 | до 20 МГц | 1,8–5,5 В | −40…+105 °C |
| ATtiny1606-SFR | SOIC20 | до 16 МГц | 2,7–5,5 В | −40…+125 °C |
| ATtiny1606-SF | SOIC20 | до 16 МГц | 2,7–5,5 В | −40…+125 °C |
| ATtiny806-MNR | VQFN20 | до 20 МГц | 1,8–5,5 В | −40…+105 °C |
| ATtiny806-MN | VQFN20 | до 20 МГц | 1,8–5,5 В | −40…+105 °C |
| ATtiny806-MFR | VQFN20 | до 16 МГц | 2,7–5,5 В | −40…+125 °C |
| ATtiny806-MF | VQFN20 | до 16 МГц | 2,7–5,5 В | −40…+125 °C |
| ATtiny806-SNR | SOIC20 | до 20 МГц | 1,8–5,5 В | −40…+105 °C |
| ATtiny806-SN | SOIC20 | до 20 МГц | 1,8–5,5 В | −40…+105 °C |
| ATtiny806-SFR | SOIC20 | до 16 МГц | 2,7–5,5 В | −40…+125 °C |
| ATtiny806-SF | SOIC20 | до 16 МГц | 2,7–5,5 В | −40…+125 °C |
| ATtiny406-MNR | VQFN20 | до 20 МГц | 1,8–5,5 В | −40…+105 °C |
| ATtiny406-MN | VQFN20 | до 20 МГц | 1,8–5,5 В | −40…+105 °C |
| ATtiny406-MFR | VQFN20 | до 16 МГц | 2,7–5,5 В | −40…+125 °C |
| ATtiny406-MF | VQFN20 | до 16 МГц | 2,7–5,5 В | −40…+125 °C |
| ATtiny406-SNR | SOIC20 | до 20 МГц | 1,8–5,5 В | −40…+105 °C |
| ATtiny406-SN | SOIC20 | до 20 МГц | 1,8–5,5 В | −40…+105 °C |
| ATtiny406-SFR | SOIC20 | до 16 МГц | 2,7–5,5 В | −40…+125 °C |
| ATtiny406-SF | SOIC20 | до 16 МГц | 2,7–5,5 В | −40…+125 °C |
Фьюзы с завода
Значения фьюзов, с которыми микроконтроллер приходит с завода, по описанию Microchip, и тактирование, которое они задают. У AVR8X каждый фьюз — отдельный байт со своим именем, в скобках — его смещение в области FUSE. В битах полей значения совпадают со значениями по умолчанию из даташитов; незадействованные биты некоторые даташиты показывают нулями. Расшифровку полей, другие режимы и команду avrdude для UPDI-программатора даёт калькулятор фьюзов AVR.
| Микроконтроллер | WDTCFG (0x00) | BODCFG (0x01) | OSCCFG (0x02) | SYSCFG0 (0x05) | SYSCFG1 (0x06) | APPEND (0x07) | BOOTEND (0x08) | Тактирование | Калькулятор |
|---|---|---|---|---|---|---|---|---|---|
| ATtiny1606 | 0x00 | 0x00 | 0x7E | 0xF6 | 0xFF | 0x00 | 0x00 | Внутренний генератор 20 МГц (FREQSEL), после сброса делитель на 6 — около 3,3 МГц | открыть |
| ATtiny806 | 0x00 | 0x00 | 0x7E | 0xF6 | 0xFF | 0x00 | 0x00 | Внутренний генератор 20 МГц (FREQSEL), после сброса делитель на 6 — около 3,3 МГц | открыть |
| ATtiny406 | 0x00 | 0x00 | 0x7E | 0xF6 | 0xFF | 0x00 | 0x00 | Внутренний генератор 20 МГц (FREQSEL), после сброса делитель на 6 — около 3,3 МГц | открыть |
Векторы прерываний
Таблица векторов ATtiny1606: номер, как в таблице Interrupt Vector Mapping даташита (сброс — нулевой), имя вектора по описанию Microchip и источник прерывания; у одного вектора может быть два имени для разных режимов таймера. Обработчик в avr-gcc объявляют макросом ISR() с именем вектора из avr/io.h — обычно это имя из таблицы с суффиксом _vect, например ISR(TCA0_OVF_vect).
| № | Вектор | Источник |
|---|---|---|
| 0 | RESET | сброс: включение питания, вывод RESET, BOD, сторожевой таймер |
| 1 | CRCSCAN_NMI | немаскируемое прерывание от проверки CRC памяти (CRCSCAN) |
| 2 | BOD_VLM | монитор уровня напряжения VLM детектора BOD |
| 3 | PORTA_PORT | изменение уровня на выводах порта A |
| 4 | PORTB_PORT | изменение уровня на выводах порта B |
| 5 | PORTC_PORT | изменение уровня на выводах порта C |
| 6 | RTC_CNT | часы реального времени RTC: переполнение или совпадение счётчика |
| 7 | RTC_PIT | часы реального времени RTC: периодическое прерывание PIT |
| 8 | TCA0_LUNF / TCA0_OVF | таймер TCA0: опустошение младшего счётчика (режим SPLIT); таймер TCA0: переполнение |
| 9 | TCA0_HUNF | таймер TCA0: опустошение старшего счётчика (режим SPLIT) |
| 10 | TCA0_CMP0 / TCA0_LCMP0 | таймер TCA0: совпадение с CMP0; таймер TCA0: совпадение младшего счётчика с LCMP0 |
| 11 | TCA0_CMP1 / TCA0_LCMP1 | таймер TCA0: совпадение с CMP1; таймер TCA0: совпадение младшего счётчика с LCMP1 |
| 12 | TCA0_CMP2 / TCA0_LCMP2 | таймер TCA0: совпадение с CMP2; таймер TCA0: совпадение младшего счётчика с LCMP2 |
| 13 | TCB0_INT | таймер TCB0 |
| 17 | AC0_AC | аналоговый компаратор AC0 |
| 20 | ADC0_RESRDY | АЦП ADC0: результат готов |
| 21 | ADC0_WCOMP | АЦП ADC0: срабатывание оконного компаратора |
| 24 | TWI0_TWIS | TWI0 (I²C): ведомый |
| 25 | TWI0_TWIM | TWI0 (I²C): ведущий |
| 26 | SPI0_INT | SPI0 |
| 27 | USART0_RXC | USART0: приём завершён |
| 28 | USART0_DRE | USART0: регистр данных пуст |
| 29 | USART0_TXC | USART0: передача завершена |
| 30 | NVMCTRL_EE | контроллер памяти NVMCTRL: EEPROM готова |
Совместимые по выводам
Микроконтроллеры, у которых в том же корпусе на тех же местах стоят те же выводы. Распиновка совпадает полностью, но периферия, память, регистры и фьюзы могут отличаться: перед заменой сверьте даташиты.
- ATtiny816 и ATtiny416 — SOIC20, VQFN20
- ATtiny3216 и ATtiny1616 — SOIC20, VQFN20
- ATtiny3226, ATtiny1626, ATtiny826 и ATtiny426 — SOIC20, VQFN20
Частые вопросы
Чем отличаются ATtiny1606, ATtiny806 и ATtiny406?
Объём памяти: ATtiny1606 — 16 КБ флеш, 1 КБ ОЗУ, 256 байт EEPROM; ATtiny806 — 8 КБ флеш, 512 байт ОЗУ, 128 байт EEPROM; ATtiny406 — 4 КБ флеш, 256 байт ОЗУ, 128 байт EEPROM. Сигнатуры разные: avrdude сверяет сигнатуру с типом, указанным ключом -p, и не станет прошивать другой микроконтроллер без ключа -F. В общих корпусах расположение выводов и их функции одинаковые.
Какие фьюзы у ATtiny1606 с завода?
WDTCFG 0x00, BODCFG 0x00, OSCCFG 0x7E, SYSCFG0 0xF6, SYSCFG1 0xFF, APPEND 0x00, BOOTEND 0x00: сторожевой таймер выключен, детектор BOD выключен, внутренний генератор 20 МГц (FREQSEL), после сброса делитель на 6 — около 3,3 МГц, PA0 — вывод UPDI (поле RSTPINCFG фьюза SYSCFG0), задержка запуска 64 мс (SUT). У AVR8X каждый фьюз — отдельный байт со своим именем; процессор их только читает, записать или стереть фьюзы можно лишь через UPDI, а новые значения вступают в силу после сброса. Расшифровку полей и команду avrdude даёт калькулятор фьюзов AVR.
Сколько линий ввода-вывода у ATtiny1606?
18 линий: PA0–PA7, PB0–PB5, PC0–PC3. У каждой есть альтернативные функции периферии — они перечислены в таблице выводов.
Как прошить ATtiny1606?
Через однопроводной интерфейс UPDI: вывод PA0 (вывод 16 в SOIC20), плюс питание и общий провод. С завода поле RSTPINCFG фьюза SYSCFG0 отдаёт PA0 интерфейсу UPDI. Если перевести вывод в режим линии порта или сброса, UPDI на нём включается только высоковольтной последовательностью: по даташиту на вывод подают 12 В, абсолютный предел — 13 В. В avrdude микроконтроллер выбирается ключом -p t1606.
В каких корпусах выпускается ATtiny1606?
SOIC20; VQFN20. Через точку с запятой — корпуса с разной распиновкой, внутри группы она одинаковая. Полный список заказных номеров с диапазонами температуры и питания — в разделе «Заказные номера».
Источники
Выводы, память, фьюзы, сигнатуры и векторы прерываний — из файлов описания устройств (ATDF) в паках Microchip ATtiny_DFP 3.4.278 от 11 апреля 2026 г., лицензия Apache 2.0. Данные преобразованы в таблицы и схемы корпусов; тексты и рисунки — GAW. Лицензии и источники данных.
Функции и расположение выводов сверены с таблицами мультиплексирования и рисунками распиновки даташитов ATtiny804/806/807/1604/1606/1607 (DS40002312A), ATtiny202/204/402/404/406 (DS40002318A). Из них же — заказные номера, названия корпусов, классы скорости и тактирование после сброса (раздел Main Clock After Reset). По даташиту исправлены ошибки описания Microchip: у tinyAVR 0 пак ставит на PB3 и PB2 выводы TOSC1 и TOSC2 часового кварца, но кварцевого генератора 32,768 кГц у этих микроконтроллеров нет — только внутренний; у tinyAVR 0 пак даёт фьюз TCD0CFG, но таймера TCD0 у них нет, а в даташите смещение 0x04 области фьюзов зарезервировано.
Нашли ошибку в данных?
Калькуляторы и статьи
- Фьюзы AVRБиты фьюзов, заводские значения и avrdude
- Конденсаторы для кварцаC1 и C2 по CL, запас генерации, уход частоты
- Подтягивающие резисторы I²CДиапазон Rp по напряжению, скорости и ёмкости шины
- Система команд AVRВсе инструкции с флагами и тактами, адресация, примеры кода
- UARTКадр 8N1, скорость и допуск, TX и RX, уровни, USB–UART, AVR и STM32
- SPISCLK, MOSI, MISO, CS, режимы 0–3, daisy chain, частота, SPI в AVR
- I²CSDA и SCL, START/STOP, ACK, адреса, скорости, расчёт подтяжек