ATtiny (also known as TinyAVR) is a subfamily of the popular 8-bit AVR microcontrollers, which typically has fewer features, fewer I/O pins, and less memory than other AVR series chips. The first members of this family were released in 1999 by Atmel (later acquired by Microchip Technology in 2016). [1]
ATtiny microcontrollers specifically exclude various common features, such as: USB peripheral, DMA controller, crypto engine, or an external memory bus.
The following table summarizes common features of the ATtiny microcontrollers, for easy comparison. This table is not meant to be an unabridged feature list.
Device (family) [2] | Max clock (MHz) | Flash (KiB) | SRAM (bytes) | EEPROM (bytes) | USART (UART) | I²C (TWI) | SPI | Timers 16/12/8 (bits) | ADC pins | GPIO pins | IC Packages | GCC arch ID [3] | Pgm Dbg | Refs |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ATtiny11, ATtiny11L | 6, 2 | 1 | No | No | No | No | No | 0 / 0 / 1 | No | 5 | DIP-8N, SO200-8 | avr1 | HVSP | [4] |
ATtiny12, ATtiny12L, ATtiny12V | 8, 1.2 | 1 | No | 64 | No | No | No | 0 / 0 / 1 | No | 5 | DIP-8N,SO200-8 | avr1 | ISP, HVSP | [4] |
ATtiny15L | 1.6 | 1 | No | 64 | No | No | No | 0 / 0 / 2 | 4 | 6 | DIP-8N,SO200-8 | avr1 | ISP, HVSP | [5] |
ATtiny28L, ATtiny28V | 4, 1.2 | 2 | No | No | No | No | No | 0 / 0 / 1 | No | 11 | DIP-28N,TQFP-32,QFN-32 | avr1 | HVPP | [6] |
ATtiny22, ATtiny22L | 8, 4 | 2 | 128 | 128 | No | No | No | 0 / 0 / 1 | No | 5 | DIP-8N,SO200-8 | avr2 | ISP, HVSP | [7] |
ATtiny26, ATtiny26L | 16, 8 | 2 | 128 | 128 | USI* | master, slave* | master, slave* | 0 / 0 / 2 | 11 | 16 | DIP-20N,SO300-20,QFN-32 | avr2 | ISP, HVPP | [8] |
ATtiny13, ATtiny13V, ATtiny13A | 20, 10 | 1 | 64 | 64 | No | No | No | 0 / 0 / 1 | 4 | 6 | DIP-8N,SO150-8,SO209-8, VQFN-10,WQFN-20 | avr25 | ISP, dW, HVSP | [9] [10] [11] |
ATtiny24, ATtiny24V, ATtiny24A, ATtiny44, ATtiny44V, ATtiny44A, ATtiny84, ATtiny84V, ATtiny84A | 20, 10 | 2, 4, 8 | 128, 256, 512 | 128, 256, 512 | USI* | master, slave* | master, slave* | 1 / 0 / 1 | 8 | 12 | DIP-14N,SO150-14,QFN-20,VQFN-20,UFBGA-15 | avr25 | ISP, dW, HVSP | [12] [13] [14] [15] [16] [17] |
ATtiny25, ATtiny25V, ATtiny45, ATtiny45V, ATtiny85, ATtiny85V | 20, 10 | 2, 4, 8 | 128, 256, 512 | 128, 256, 512 | USI* | master, slave* | master, slave* | 0 / 0 / 2 [lower-alpha 1] | 4 | 6 | DIP-8N,SO208-8,TSSOP-8,QFN-20 | avr25 | ISP, dW, HVSP | [18] [19] [20] |
ATtiny43U [lower-alpha 2] | 8 | 4 | 256 | 64 | USI* | master, slave* | master, slave* | 0 / 0 / 2 | 4 | 16 | SO300-20,QFN-20 | avr25 | ISP, dW, HVPP | [21] |
ATtiny48, ATtiny88 | 12 | 4, 8 | 256, 512 | 64 | No | master, slave | master, slave | 1 / 0 / 1 | 6 | 24 | DIP-28N,QFN-28 | avr25 | ISP, dW, HVPP | [22] [23] |
No | master, slave | master, slave | 1 / 0 / 1 | 8 | 28 | TQFP-32,QFN-32,UFBGA-32 | ||||||||
ATtiny87, ATtiny167 | 16 | 8, 16 | 512 | 512 | USI*, UART* | No | master, slave | 1 / 0 / 1 | 11 | 16 | SO300-20,TSSOP-20,VQFN-32 | avr25, avr35 | ISP, dW, HVPP | [24] [25] |
ATtiny261, ATtiny261A, ATtiny461, ATtiny461A, ATtiny861, ATtiny861A | 20 | 2, 4, 8 | 128, 256, 512 | 128, 256, 512 | USI* | master, slave* | master, slave* | 1 / 0 / 1 [lower-alpha 3] | 11 | 16 | DIP-20N,SO300-20,TSSOP-20,QFN-32 | avr25 | ISP, dW, HVPP | [26] [27] [28] [29] [30] |
ATtiny441, ATtiny841 | 16 | 4, 8 | 256, 512 | 256, 512 | 2 USART* | slave | master, slave | 2 / 0 / 1 | 12 | 12 | SO150-14,QFN-20,VQFN-20 | avr25 | ISP, dW, HVSP | [31] [32] |
ATtiny828 | 20 | 8 | 512 | 256 | USART* | slave | master, slave | 1 / 0 / 1 | 28 | 28 | TQFP-32,QFN-32 | avr25 | ISP, dW, HVPP | [33] |
ATtiny1634 | 12 | 16 | 1024 | 256 | USI*, 2 USART* | slave | master* | 1 / 0 / 1 | 12 | 18 | SO300-20,QFN-20 | avr35 | ISP, dW, HVPP | [34] |
ATtiny2313, ATtiny2313V, ATtiny2313A, ATtiny4313 | 20 | 2, 4 | 128, 256 | 128, 256 | USI*, USART* | master, slave* | master, slave* | 1 / 0 / 1 | No | 18 | DIP-20N,SO300-20,VQFN-20 | avr25 | ISP, dW, HVPP | [35] [36] [37] [38] |
ATtiny4, ATtiny5, ATtiny9, ATtiny10 | 12 | 0.5 / 1 | 32 | No | No | No | No | 1 / 0 / 0 | 4 [lower-alpha 4] | 4 | SOT23-6,UDFN-8 | avrtiny | TPI | [39] [40] [41] [42] |
ATtiny20 | 12 | 2 | 128 | No | No | slave | master, slave | 1 / 0 / 1 | 8 | 12 | SO150-14, TSSOP-14,VQFN-20, UFBGA-15, WLCSP-12 | avrtiny | TPI | [43] |
ATtiny40 | 12 | 4 | 256 | No | No | slave | master, slave | 1 / 0 / 1 | 12 | 18 | SO300-20,TSSOP-20,VQFN-20 | avrtiny | TPI | [44] |
ATtiny102(F) | 12 | 1 | 32 | No | USART* | No | master* | 1 / 0 / 0 | 5 | 6 | SO150-8,UDFN-8 | avrtiny | TPI | [45] |
ATtiny104(F) | 12 | 1 | 32 | No | USART* | No | master* | 1 / 0 / 0 | 9 | 12 | SO150-14 | avrtiny | TPI | [46] |
ATtiny202, ATtiny402 (0-series) | 20 | 2, 4 | 128, 256 | 64, 128 | USART* | master, slave | master, slave | 2 / 0 / 0 / RTT | 6 | 6 | SO150-8 | avrxmega3 | UPDI | [47] [48] |
ATtiny204, ATtiny404, ATtiny804, ATtiny1604 (0-series) | 20 | 2, 4, 8, 16 | 128, 256, 512, 1024 | 64, 128, 256 | USART* | master, slave | master, slave | 2 / 0 / 0 / RTT | 10 | 12 | SO150-14 | avrxmega3 | UPDI | [49] [50] [51] [52] |
ATtiny406, ATtiny806, ATtiny1606 (0-series) | 20 | 4, 8, 16 | 256, 512, 1024 | 128, 256 | USART* | master, slave | master, slave | 2 / 0 / 0 / RTT | 12 | 18 | SO300-20,VQFN-20 | avrxmega3 | UPDI | [53] [54] [55] |
ATtiny807, ATtiny1607 (0-series) | 20 | 8, 16 | 512, 1024 | 128, 256 | USART* | master, slave | master, slave | 2 / 0 / 0 / RTT | 12 | 22 | VQFN-24 | avrxmega3 | UPDI | [56] [57] |
ATtiny212, ATtiny412 (1-series) | 20 | 2, 4 | 128, 256 | 64, 128 | USART* | master, slave | master, slave | 2 / 1 / 0 / RTT | 6 | 6 | SO150-8 | avrxmega3 | UPDI | [58] [59] |
ATtiny214, ATtiny414, ATtiny814, ATtiny1614 (1-series) | 20 | 2, 4, 8, 16 | 128, 256, 512, 2048 | 64, 128, 256 | USART* | master, slave | master, slave | 2 / 1 / 0 / RTT | 10 | 12 | SO150-14 | avrxmega3 | UPDI | [60] [61] [62] [63] |
ATtiny416, ATtiny816, ATtiny1616, ATtiny3216 (1-series) | 20 | 4, 8, 16, 32 | 256, 512, 2048 | 128, 256 | USART* | master, slave | master, slave | 2or3 / 1 / 0 / RTT | 12 | 18 | SO300-20,QFN-20,VQFN-20 | avrxmega3 | UPDI | [64] [65] [66] [67] |
ATtiny417, ATtiny817, ATtiny1617, ATtiny3217 (1-series) | 20 | 4, 8, 16, 32 | 256, 512, 2048 | 128, 256 | USART* | master, slave | master, slave | 2 / 1 / 0 / RTT | 12 | 22 | VQFN-24,QFN-24 | avrxmega3 | UPDI | [68] [69] [70] [71] |
ATtiny424, ATtiny824, ATtiny1624, ATtiny3224 (2-series) | 20 | 4, 8, 16, 32 | 512, 1024, 2048, 3072 | 128, 128, 256, 256 | 2 USART* | yes | yes | 3 / 0 / 0 / RTT | 9 | 12 | SO-14,TSSOP-14 | avrxmega3 | UPDI | [72] [73] |
ATtiny426, ATtiny826, ATtiny1626, ATtiny3226 (2-series) | 20 | 4, 8, 16, 32 | 512, 1024, 2048, 3072 | 128, 128, 256, 256 | 2 USART* | yes | yes | 3 / 0 / 0 / RTT | 15 | 18 | SO-20,SSTOP-20,VQFN-20 | avrxmega3 | UPDI | [74] [75] |
ATtiny427, ATtiny827, ATtiny1627, ATtiny3227 (2-series) | 20 | 4, 8, 16, 32 | 512, 1024, 2048, 3072 | 128, 128, 256, 256 | 2 USART* | yes | yes | 3 / 0 / 0 / RTT | 15 | 22 | VQFN-24 | avrxmega3 | UPDI | [76] [77] |
Device (family) | Max clock (MHz) | Flash (KiB) | SRAM (bytes) | EEPROM (bytes) | USART (UART) | I²C (TWI) | SPI | Timers 16/12/8/R (bits) | ADC pins | GPIO pins | IC Packages | GCC arch ID | Pgm Dbg | Refs |
The following table lists each ATtiny microcontroller by the first release date of each datasheet.
Year | Device (family) |
---|---|
1999 | ATtiny11, ATtiny11L, ATtiny12, ATtiny12L, ATtiny12V, ATtiny22, ATtiny22L |
2002 | ATtiny15L, ATtiny26, ATtiny26L, ATtiny28L, ATtiny28V |
2003 | ATtiny13, ATtiny13V, ATtiny2313, ATtiny2313V, ATtiny4313 |
2005 | ATtiny24, ATtiny24V, ATtiny25, ATtiny25V, ATtiny44, ATtiny44V, ATtiny45, ATtiny45V, ATtiny84, ATtiny84V, ATtiny85, ATtiny85V |
2006 | ATtiny261, ATtiny461, ATtiny861 |
2008 | ATtiny13A, ATtiny24A, ATtiny44A, ATtiny48, ATtiny84A, ATtiny88 |
2009 | ATtiny4, ATtiny5, ATtiny9, ATtiny10, ATtiny43U, ATtiny261A, ATtiny461A, ATtiny861A, ATtiny2313A |
2010 | ATtiny20, ATtiny40, ATtiny87, ATtiny167 |
2011 | ATtiny1634 |
2012 | ATtiny441, ATtiny841, ATtiny828 |
2016 | ATtiny102(F), ATtiny104(F), ATtiny417, ATtiny817 |
2017 | ATtiny212, ATtiny412, ATtiny214, ATtiny414, ATtiny814, ATtiny416, ATtiny816 |
2018 | ATtiny202, ATtiny402, ATtiny204, ATtiny404, ATtiny804, ATtiny1604, ATtiny406, ATtiny806, ATtiny1606, ATtiny807, ATtiny1607, ATtiny1614, ATtiny1616, ATtiny3216, ATtiny1617, ATtiny3217 |
2020 | ATtiny1624, ATtiny1626, ATtiny1627 |
2021 | ATtiny424, ATtiny824, ATtiny426, ATtiny826, ATtiny427, ATtiny827 |
The following are ATtiny development boards sold by Microchip Technology:
A microcontroller or microcontroller unit (MCU) is a small computer on a single integrated circuit. A microcontroller contains one or more CPUs along with memory and programmable input/output peripherals. Program memory in the form of NOR flash, OTP ROM, or ferroelectric RAM is also often included on the chip, as well as a small amount of RAM. Microcontrollers are designed for embedded applications, in contrast to the microprocessors used in personal computers or other general-purpose applications consisting of various discrete chips.
The Intel MCS-51 is a single chip microcontroller (MCU) series developed by Intel in 1980 for use in embedded systems. The architect of the Intel MCS-51 instruction set was John H. Wharton. Intel's original versions were popular in the 1980s and early 1990s, and enhanced binary compatible derivatives remain popular today. It is a complex instruction set computer with separate memory spaces for program instructions and data.
AVR is a family of microcontrollers developed since 1996 by Atmel, acquired by Microchip Technology in 2016. These are modified Harvard architecture 8-bit RISC single-chip microcontrollers. AVR was one of the first microcontroller families to use on-chip flash memory for program storage, as opposed to one-time programmable ROM, EPROM, or EEPROM used by other microcontrollers at the time.
Atmel Corporation was a creator and manufacturer of semiconductors before being subsumed by Microchip Technology in 2016. Atmel was founded in 1984. The company focused on embedded systems built around microcontrollers. Its products included microcontrollers radio-frequency (RF) devices including Wi-Fi, EEPROM, and flash memory devices, symmetric and asymmetric security chips, touch sensors and controllers, and application-specific products. Atmel supplies its devices as standard products, application-specific integrated circuits (ASICs), or application-specific standard product (ASSPs) depending on the requirements of its customers.
PIC is a family of microcontrollers made by Microchip Technology, derived from the PIC1640 originally developed by General Instrument's Microelectronics Division. The name PIC initially referred to Peripheral Interface Controller, and is currently expanded as Programmable Intelligent Computer. The first parts of the family were available in 1976; by 2013 the company had shipped more than twelve billion individual parts, used in a wide variety of embedded systems.
The MSP430 is a mixed-signal microcontroller family from Texas Instruments, first introduced on 14 February 1992. Built around a 16-bit CPU, the MSP430 was designed for low power consumption, embedded applications and low cost.
The PIC16C84, PIC16F84 and PIC16F84A are 8-bit microcontrollers of which the PIC16C84 was the first introduced in 1993 and hailed as the first PIC microcontroller to feature a serial programming algorithm and EEPROM memory. It is a member of the PIC family of controllers, produced by Microchip Technology. The memory architecture makes use of bank switching. Software tools for assembler, debug and programming were only available for the Microsoft DOS and Windows operating systems.
Serial Peripheral Interface (SPI) is a de facto standard for synchronous serial communication, used primarily in embedded systems for short-distance wired communication between integrated circuits.
The AVR Butterfly is a battery-powered single-board microcontroller developed by Atmel. It consists of an Atmel ATmega169PV Microcontroller, a liquid crystal display, joystick, speaker, serial port, real-time clock (RTC), internal flash memory, and sensors for temperature and voltage. The board is the size of a name tag and has a clothing pin on back so it can be worn as such after the user enters their name onto the LCD.
Atmel ARM-based processors are microcontrollers and microprocessors integrated circuits, by Microchip Technology, that are based on various 32-bit ARM processor cores, with in-house designed peripherals and tool support.
Microchip Technology Incorporated is a publicly listed American corporation that manufactures microcontroller, mixed-signal, analog, and Flash-IP integrated circuits. Its products include microcontrollers, Serial EEPROM devices, Serial SRAM devices, embedded security devices, radio frequency (RF) devices, thermal, power, and battery management analog devices, as well as linear, interface and wireless products.
PICkit is a family of programmers for PIC microcontrollers made by Microchip Technology. They are used to program and debug microcontrollers, as well as program EEPROM. Some models may also feature logic analyzers and serial communications (UART) tools.
debugWIRE is a serial communications protocol, designed by Atmel. It is used for on-chip debugging of AVR microcontrollers.
LPC is a family of 32-bit microcontroller integrated circuits by NXP Semiconductors. The LPC chips are grouped into related series that are based around the same 32-bit ARM processor core, such as the Cortex-M4F, Cortex-M3, Cortex-M0+, or Cortex-M0. Internally, each microcontroller consists of the processor core, static RAM memory, flash memory, debugging interface, and various peripherals. The earliest LPC series were based on the Intel 8-bit 80C51 core. As of February 2011, NXP had shipped over one billion ARM processor-based chips.
The ATmega328 is a single-chip microcontroller created by Atmel in the megaAVR family. It has a modified Harvard architecture 8-bit RISC processor core.
The Arduino Uno is an open-source microcontroller board based on the Microchip ATmega328P microcontroller (MCU) and developed by Arduino.cc and initially released in 2010. The microcontroller board is equipped with sets of digital and analog input/output (I/O) pins that may be interfaced to various expansion boards (shields) and other circuits. The board has 14 digital I/O pins, 6 analog I/O pins, and is programmable with the Arduino IDE, via a type B USB cable. It can be powered by a USB cable or a barrel connector that accepts voltages between 7 and 20 volts, such as a rectangular 9-volt battery. It has the same microcontroller as the Arduino Nano board, and the same headers as the Leonardo board. The hardware reference design is distributed under a Creative Commons Attribution Share-Alike 2.5 license and is available on the Arduino website. Layout and production files for some versions of the hardware are also available.
The MSP432 is a mixed-signal microcontroller family from Texas Instruments. It is based on a 32-bit ARM Cortex-M4F CPU, and extends their 16-bit MSP430 line, with a larger address space for code and data, and faster integer and floating point calculation than the MSP430. Like the MSP430, it has a number of built-in peripheral devices, and is designed for low power requirements. In 2021, TI confirmed that the MSP432 has been discontinued and "there will be no new MSP432 products".
The Arduino Nano is an open-source breadboard-friendly microcontroller board based on the Microchip ATmega328P microcontroller (MCU) and developed by Arduino.cc and initially released in 2008. It offers the same connectivity and specs of the Arduino Uno board in a smaller form factor.
In computing, autonomous peripheral operation is a hardware feature found in some microcontroller architectures to off-load certain tasks into embedded autonomous peripherals in order to minimize latencies and improve throughput in hard real-time applications as well as to save energy in ultra-low-power designs.