An introduction to the ATtiny85/45/25

The ATtiny range of microcontrollers are ATmel’s smallest and lowest power 8-bit AVR offerings. Typically they come with between 1K and 16K of program memory and 512 bytes of SRAM and 512 bytes of EEPROM.

These MCUs are entirely self-contained. All they need is a stable power supply, and they are remarkably flexible in the voltage range that they can accept. No other external components are required at all. This makes them perfect for small-footprint, low cost devices. In this post I’ll present a summary of the features of the 8-pin ATtiny85/45/25 MCU.

The product range

MCU Voltage Frequency Flash SRAM EEPROM
ATtiny25 2.7-5.5V 0-20Mhz 2K 128 bytes 128 bytes
ATtiny25V 1.8-5.5V 0-10Mhz 2K 128 bytes 128 bytes
ATtiny45 2.7-5.5V 0-20Mhz 4K 256 bytes 256 bytes
ATtiny45V 1.8-5.5V 0-10Mhz 4K 256 bytes 256 bytes
ATtiny85 2.7-5.5V 0-20Mhz 8K 512 bytes 512 bytes
ATtiny85V 1.8-5.5V 0-10Mhz 8K 512 bytes 512 bytes

Speed grading

As you can see from the above table the ‘V’ suffix indicates a model that can run as low as 1.8V at the expense of an upper ceiling of 10Mhz on the clock speed. However, the selected clock frequency does impose a lower limit on the voltage that you can supply.

MCU Frequencies Voltage
ATtiny25V/45V/85V 0-4Mhz 1.8-5.5V
ATtiny25V/45V/85V 0-10Mhz 2.7-5.5V
ATtiny25/45/85 0-10Mhz 2.7-5.5V
ATtiny25/45/85 0-20Mhz 4.5-5.5V

Which one? Where to buy?

System builders will want to choose the smallest, lowest power device that they can get away with and then push down the cost through bulk-buying. Hobbyists like myself will note that all these devices cost roughly the same in small quantities, about £1.30 from Mouser Electronics. Therefore there seems little reason to buy anything other than the 85 or 85V depending on your voltage and frequency requirements.

Pinout

Note the overloading of the function of each pin. This means that you have to be very careful with your design decisions. For example if you want to use analog input 1 then you may not use digital pin 2 because they share pin 7.

Of particular note is pin 1. By default this functions as the RESET pin but you can disable the RESET function using the fuse bits in order to get at the other pin functions. However, if you do that the device will become unprogrammable again except through the use of a high-voltage programmer.

Get the datasheet

Click here to download the datasheet from Atmel. You really can’t do without it.

  • عمر الزهيري

    dear sir;
    i’ve build simple test circuit for attiny85 flashing LED ; it works but it seems to be the led is little damp . it’s the same led circuit for atmega328p it was shine. the code for 85 is:

    #include
    int main(void){
    PORTB=0x0; //port b zero low
    DDRB=0b000100; // pb3 output
    while(1) {
    for(int i=0;i<29000;i++);; //delay loop
    PORTB ^=(1<<3); // toggle bit3 0,1
    }}

    thanx for that wonderful site and lots of info , i salute you