Presentation Description

A micro-controller is basically a small computer on a single integrated chip. In this ppt you will be learning more on its types and families.


Presentation Transcript



Types of microcontrollers:

Types of microcontrollers

Based on number of bits:

Based on number of bits They can be 4-bit, 8-bit,16-bit and 32-bit microcontroller. The bit description of a microcontroller tells us about The size of the data bus, The word length and The data bus size of the microcontroller tells us the number of data bits that the microcontroller can process at a time. The word length means the length of the data that can be stored at a memory location in the microcontroller’s memory.

Based on devices:

Based on devices They are of two types: Embedded microcontrollers External microcontrollers Embedded microcontrollers means that the microcontroller is buried inside the device. This is done during the manufacturing process. They cannot the seen from outside. They are basically one time programmable. E.g. LCD, Fridge, Air conditioners, Washing machines etc. External microcontrollers are not buried inside the device. They can be programmed number of times. They can be seen from outside. E.g. the microcontroller in i3indya development board.

Complex Instruction Set Computing:

Complex Instruction Set Computing Characteristics of a CISC architecture: Emphasis on hardware Includes multi-clock complex instructions Small code sizes Complex data types in hardware; some CISCs have byte string instructions, or support complex numbers

Reduce Instruction Set Computing:

Reduce Instruction Set Computing Characteristics of a RISC architecture: Emphasis on software Single-clock, reduced instruction only Uniform instruction format, using a single word with the opcode in the same bit positions in every instruction, demanding less decoding Identical general purpose registers, allowing any register to be used in any context, simplifying compiler design Simple addressing modes. Complex addressing performed via sequences of arithmetic and/or load-store operations. Typically larger code sizes Few data types in hardware

Von – Neumann Architecture:

Von – Neumann Architecture Microcontrollers based on the Von-Neumann architecture have a single “data” bus that is used to fetch both instructions and data. Program instructions and data are stored in a common main memory. When such a controller addresses main memory, it first fetches an instruction, and then it fetches the data to support the instruction.

Harvard Architecture:

Harvard Architecture The Harvard architecture is a computer architecture with physically separate storage and signal pathways for instructions and data.

Different families of microcontrollers:

Different families of microcontrollers There are number of popular families of microcontrollers which are used in different applications as per their capability and feasibility to perform the desired task. Most common of these are 8051 microcontroller family AVR microcontroller family PIC microcontrollers family

Comparison of different Microcontroller Families:

Comparison of different M icrocontroller Families   8051 PIC AVR SPEED Slow Moderate Fast MEMORY Small Large Large ARCHITECTURE CISC RISC RISC ADC Not Present Inbuilt Inbuilt Timers Inbuilt Inbuilt Inbuilt PWM Channels Not Present Inbuilt Inbuilt


AVR AVR was developed in the year 1996 by Atmel Corporation. The architecture of AVR was developed by Alf- Egil Bogen  and  Vegard Wollan . AVR derives its name from its developers and stands for A lf- Egil Bogen V egard Wollan R ISC microcontroller . They are also known as A dvanced V irtual R ISC. The AT90S8515 was the first microcontroller which was based on AVR architecture however the first microcontroller to hit the commercial market was AT90S1200 in the year 1997 .  

AVR Family:

AVR Family AVR microcontrollers are available in five different categories: TinyAVR – Less memory, small size, suitable only for simpler applications. MegaAVR – These are the most popular ones having good amount of memory ( upto 256 KB), higher number of inbuilt peripherals and suitable for moderate to complex applications. XmegaAVR – Used commercially for complex applications, which require large program memory and high speed.


Continue…. Application-specific AVR - M egaAVRs with special features not found on the other members of the AVR family, such as LCD controller, USB controller, advanced PWM, CAN etc. FPSLIC (AVR with FPGA) FPGA 5K to 40K gates SRAM for the AVR program code, unlike all other AVRs AVR core can run at up to 50 MHz

Comparison of major AVRs Series:

Comparison of major AVRs Series Series Name Pins Flash Memory Special Feature Tiny AVR 6-32 0.5-8 KB Small in size Mega AVR 28-100 4-256KB Extended peripherals Xmega AVR 44-100 16-384KB DMA

Microcontrollers of Mega AVR Series:

Microcontrollers of Mega AVR Series Part Name ROM RAM EEPROM I/0 Pins Timer Interrupts Operation Voltage Operating frequency Packaging ATmega8 8KB 1KB 512B 23 3 19 4.5-5.5 V 0-16 MHz 28 ATmega8L 8KB 1KB 512B 23 3 19 2.7-5.5 V 0-8 MHz 28 ATmega16 16KB 1KB 512B 32 3 21 4.5-5.5 V 0-16 MHz 40 ATmega16L 16KB 1KB 512B 32 3 21 2.7-5.5 V 0-8 MHz 40 ATmega32 32KB 2KB 1KB 32 3 21 4.5-5.5 V 0-16 MHz 40 ATmega32L 32KB 2KB 1KB 32 3 21 2.7-5.5 V 0-8 MHz 40


ATMEGA 16 We will be working on Atmega16 microcontroller , which is a 40-pin IC and belongs to the MegaAVR category of AVR family. Some of the features of Atmega16 are: 16KB of Flash memory 1KB of SRAM 512 Bytes of EEPROM Available in 40-Pin DIP 8- Channel 10-bit ADC Two 8-bit Timers/Counters One 16-bit Timer/Counter 4 PWM Channels In System Programmer ( ISP) Serial USART SPI Interface Digital to Analog Comparator .  

ATmega16 Architecture:

ATmega16 Architecture

Atmega16 Architecture Description:

Atmega16 Architecture Description I/O Ports Atmega16 has four (PORTA, PORTB, PORTC and PORTD) 8-bit input-output ports.  Internal Calibrated Oscillator Atmega16 is equipped with an internal oscillator for driving its clock. By default Atmega16 is set to operate at internal calibrated oscillator of 1 MHz. The maximum frequency of internal oscillator is 8Mhz. Alternatively, ATmega16 can be operated using an external crystal oscillator with a maximum frequency of 16MHz. In this case you need to modify the fuse bits.


Continue…. ADC Interface Atmega16 is equipped with an 8 channel ADC ( Analog to Digital Converter ) with a resolution of 10-bits. ADC reads the analog input for e.g., a sensor input and converts it into digital information which is understandable by the microcontroller. Timers/Counters Atmega16 consists of two 8-bit and one 16-bit timer/counter . Timers are useful for generating precision actions for e.g., creating time delays between two operations.         


Continue…. Watchdog Timer: Watchdog timer is present with internal oscillator. Watchdog timer continuously monitors and resets the controller if the code gets stuck at any execution action for more than a defined time interval. Interrupts: Atmega16 consists of 21 interrupt sources out of which four are external. The remaining are internal interrupts which support the peripherals like USART, ADC, Timers etc. USART: It is available for interfacing with external device capable of communicating serially (data transmission bit by bit). General Purpose Registers: Atmega16 is equipped with 32 general purpose registers which are coupled directly with the Arithmetic Logical Unit (ALU) of CPU.          


Continue…. Memory : Atmega16 consist of three different memory sections: Flash EEPROM : Flash EEPROM or simple flash memory is used to store the program dumped or burnt by the user on to the microcontroller. It can be easily erased electrically as a single unit. Flash memory is non-volatile i.e., it retains the program even if the power is cut-off. Atmega16 is available with 16KB of in system programmable Flash EEPROM.


Continue…. Byte Addressable EEPROM : This is also a nonvolatile memory used to store data like values of certain variables. Atmega16 has 512 bytes of EEPROM, this memory can be useful for storing the lock code if we are designing an application like electronic door lock. SRAM : Static Random Access Memory, this is the volatile memory of microcontroller i.e., data is lost as soon as power is turned off. Atmega16 is equipped with 1KB of internal SRAM. A small portion of SRAM is set aside for general purpose registers used by CPU and some for the peripheral subsystems of the microcontroller.


Continue…. ISP: AVR family of controllers have In System Programmable Flash Memory which can be programmed without removing the IC from the circuit, ISP allows to reprogram the controller while it is in the application circuit.  SPI: Serial Peripheral Interface , SPI port is used for serial communication between two devices on a common clock source. The data transmission rate of SPI is more than that of USART.


Continue…. TWI: Two Wire Interface (TWI) can be used to set up a network of devices, many devices can be connected over TWI interface forming a network, the devices can simultaneously transmit and receive and have their own unique address . ADC: Atmega16 is also equipped with a Analog to Digital Converter (ADC) interface which can be used for reverse action performed by ADC. ADC can be used when there is a need of converting a digital signal to analog signal.

authorStream Live Help