ATmega16 is an 8-bit high performance microcontroller of Atmel’s Mega AVR family with low power consumption. Atmega16 is based on enhanced RISC (Reduced Instruction Set Computing, Know more about RISC and CISC Architecture) architecture with 131 powerful instructions. Most of the instructions execute in one machine cycle. Atmega16 can work on a maximum frequency of 16MHz.
ATmega16 has 16 KB programmable flash memory, static RAM of 1 KB and EEPROM of 512 Bytes. The endurance cycle of flash memory and EEPROM is 10,000 and 100,000, respectively.
ATmega16 is a 40 pin microcontroller. There are 32 I/O (input/output) lines which are divided into four 8-bit ports designated as PORTA, PORTB, PORTC and PORTD.
ATmega16 has various in-built peripherals like USART, ADC, Analog Comparator, SPI, JTAG etc. Each I/O pin has an alternative task related to in-built peripherals. The following table shows the pin description of ATmega16.
Pin Description:
Pin No. | Pin name | Description | Alternate Function |
1 | (XCK/T0) PB0 | I/O PORTB, Pin 0 | T0: Timer0 External Counter Input.XCK : USART External Clock I/O |
2 | (T1) PB1 | I/O PORTB, Pin 1 | T1:Timer1 External Counter Input |
3 | (INT2/AIN0) PB2 | I/O PORTB, Pin 2 | AIN0: Analog Comparator Positive I/PINT2: External Interrupt 2 Input |
4 | (OC0/AIN1) PB3 | I/O PORTB, Pin 3 | AIN1: Analog Comparator Negative I/POC0 : Timer0 Output Compare Match Output |
5 | (SS) PB4 | I/O PORTB, Pin 4 | In System Programmer (ISP)Serial Peripheral Interface (SPI) |
6 | (MOSI) PB5 | I/O PORTB, Pin 5 | |
7 | (MISO) PB6 | I/O PORTB, Pin 6 | |
8 | (SCK) PB7 | I/O PORTB, Pin 7 | |
9 | RESET | Reset Pin, Active Low Reset | |
10 | Vcc | Vcc = +5V | |
11 | GND | GROUND | |
12 | XTAL2 | Output to Inverting Oscillator Amplifier | |
13 | XTAL1 | Input to Inverting Oscillator Amplifier | |
14 | (RXD) PD0 | I/O PORTD, Pin 0 | USART Serial Communication Interface |
15 | (TXD) PD1 | I/O PORTD, Pin 1 | |
16 | (INT0) PD2 | I/O PORTD, Pin 2 | External Interrupt INT0 |
17 | (INT1) PD3 | I/O PORTD, Pin 3 | External Interrupt INT1 |
18 | (OC1B) PD4 | I/O PORTD, Pin 4 | PWM Channel Outputs |
19 | (OC1A) PD5 | I/O PORTD, Pin 5 | |
20 | (ICP) PD6 | I/O PORTD, Pin 6 | Timer/Counter1 Input Capture Pin |
21 | PD7 (OC2) | I/O PORTD, Pin 7 | Timer/Counter2 Output Compare Match Output |
22 | PC0 (SCL) | I/O PORTC, Pin 0 | TWI Interface |
23 | PC1 (SDA) | I/O PORTC, Pin 1 | |
24 | PC2 (TCK) | I/O PORTC, Pin 2 | JTAG Interface |
25 | PC3 (TMS) | I/O PORTC, Pin 3 | |
26 | PC4 (TDO) | I/O PORTC, Pin 4 | |
27 | PC5 (TDI) | I/O PORTC, Pin 5 | |
28 | PC6 (TOSC1) | I/O PORTC, Pin 6 | Timer Oscillator Pin 1 |
29 | PC7 (TOSC2) | I/O PORTC, Pin 7 | Timer Oscillator Pin 2 |
30 | AVcc | Voltage Supply = Vcc for ADC | |
31 | GND | GROUND | |
32 | AREF | Analog Reference Pin for ADC | |
33 | PA7 (ADC7) | I/O PORTA, Pin 7 | ADC Channel 7 |
34 | PA6 (ADC6) | I/O PORTA, Pin 6 | ADC Channel 6 |
35 | PA5 (ADC5) | I/O PORTA, Pin 5 | ADC Channel 5 |
36 | PA4 (ADC4) | I/O PORTA, Pin 4 | ADC Channel 4 |
37 | PA3 (ADC3) | I/O PORTA, Pin 3 | ADC Channel 3 |
38 | PA2 (ADC2) | I/O PORTA, Pin 2 | ADC Channel 2 |
39 | PA1 (ADC1) | I/O PORTA, Pin 1 | ADC Channel 1 |
40 | PA0 (ADC0) | I/O PORTA, Pin 0 | ADC Channel 0 |