290 likes | 533 Views
The AVR Microcontroller: History and Features. ???. Microprocessors (CPU) vs Microcontrollers (MCU) ???. CPU vs. MCU. Microprocessor No RAM, ROM, I/O Ports on chip itself e.g. Pentium (Intel), PowerPC (Motorola), Spark (SUN) Applications: Desktop, Laptop, workstations, Servers
E N D
??? • Microprocessors (CPU) vs Microcontrollers (MCU) ???
CPU vs. MCU • Microprocessor • No RAM, ROM, I/O Ports on chip itself • e.g. Pentium (Intel), PowerPC (Motorola), Spark (SUN) • Applications: Desktop, Laptop, workstations, Servers • Microcontroller • Microprocessor, RAM, ROM, timers, I/O Ports on a single chip. • 8051(Intel), 68HC08 (Motorola), AVR (Atmel), Z8 (Zilog), PIC (Microchip), ARM (Advanced RISC Machine). • Application: TV Remote Control, video games, robots,
Most common MCU/CPU • 8-bit MCU • AVR • PIC • 8051 • 16-bit MCU/CPU • 8086/186/96/196 • 68HC12/16 • 32-bit MCU • ARM • PIC32
??? • Embedded Systems ???
Embedded Systems • An embedded system is controlled by its own internal microprocessor (or microcontroller) as opposed to an external controller. • A PC is connected to various embedded products such as keyboard, printer, modem, disk controller, sound card, CD-ROM driver, mouse and so on. • a printer gets data and prints it. A mouse takes coordinates and sends to the PC.
Embedded Products • Computing • PC • Notebook • Laptop • Storage • Color printer • Laser printer • Modem • Cable modem • Copier • Scanner • Digital camera • Cars • Anti-lock breaks • Air bags • Engine Control • Transmission Control • Climate control • Collusion avoidance • Navigation • Trip Computer • Instrumentation • Keyless entry • Communications • Wire-line Phone • Cellular Phones • PDA • Pager • Fax machine • Intercom • Cards • Banking • Electronic Purse • Social Security • Tolls
Embedded Products • Consumer • VCR, CD • Video games • DVD Player • Stereo • Smoke alarm • Camera • Remote Control • Garage Door Opener • Security System • Consumer • Toys • Answering machine • Camcorder • Musical Instruments • Sewing Machine • Exercise equipment • Connectivity • Cable TV • Cable Modem • Router • Hub
Choosing a microcontroller • Speed: What is the highest speed a microcontroller supports? • Packaging: Is it DIP (dual inline package) or a QFP (quad flat package) or some other type? • Power Consumption: Critical for battery powered products. • The amount of RAM and ROM on chip • The number of timers and I/O pins on chip • Cost per unite • Availability of Compiler, Simulator, Debugger. • Availability of chip in market
The AVR microcontroller Family • The basic architecture of AVR was designed by two students of Norwegian Institute of Technology (NTH), Alf-Egil Bogen and Vegard Wollan, and then was bought and developed by Atmel in 1996. • The AVR stands for Advanced Virtual RISC, or Alf and Vegard RISC. • The AVR is an 8-bitRISC single-chip microcontroller with Harvard architecture.
RISC and CISC • CISC (Complex Instruction Set Computer) • A large number of instructions, typically from 100 to 250 instructions • Some instructions that perform specialized task and are used infrequently • A large variety of addressing modes, typically from 5 to 20 different modes • Variable-length instruction formats • RISC (Reduced Instruction Set Computer) • Relatively few instructions • Relatively few addressing modes • Fixed-length, easily decoded instruction format
Harvard and von Neumann Architecture • von Neumann (Princeton) architecture. • The same bus is used for accessing both the code and data • Pentium Processor is based on von Neumann Architecture • Harvard architecture • Separate buses are used for accessing the code and data memory. • That means that we need four sets of buses: • A set of data buses for carrying data into and out of the CPU, • A set of address buses for accessing the data, • A set of data buses for carrying code into the CPU, and • An address bus for accessing the code • This is easy to implement inside an IC chip such as a microcontroller where both ROM code and data RAM are internal (on-chip) and distances are on the micron and millimeter scale
The AVR microcontroller Family The Simplified view of an AVR Microcontroller
The AVR Family • The AVR can be classified into four groups: Classic, Mega, Tiny, and special purpose. • Classic AVR (AT90Sxxxx) This is the original AVR chip, which has been replaced by newer AVR chips. These are not recommended for new designs. • Mega AVR (ATmegaxxxx) These are powerful microcontrollers with more than 120 instructions and lots of different peripheral capabilities, which can be used in different designs. Some of their characteristics are as follows: • Program memory: 4K to 256K bytes • Package: 28 to 100 pins • Extensive peripheral set • Extended instruction set: They have rich instruction sets.
The AVR Family • Tiny AVR (ATtinyxxxx) This group have less instructions and smaller packages in comparison to mega family. You can design systems with low costs and power consumptions using the Tiny AVRs. Some of their characteristics are as follows: • Program memory: IK to 8K bytes • Package: 8 to 28 pins • Limited peripheral set • Limited instruction set: The instruction sets are limited. For example, some of them do not have the multiply instruction. • Special purpose AVR The ICs of this group can be considered as a subset of other groups, but their special capabilities are made for designing specific applications. Some of the special capabilities are: USB controller, CAN controller, LCD controller, Zigbee, Ethernet controller, FPGA, and advanced PWM.
The AVR Family Embedded Systems
AVR different groups • Classic AVR • e.g. AT90S2313, AT90S4433 • Mega • e.g. ATmega8, ATmega32, ATmega128 • Tiny • e.g. ATtiny13, ATtiny25 • Special Purpose AVR • e.g. AT90PWM216,AT90USB1287
Let’s get familiar with the AVR part numbers ATmega128 Atmel group Flash =128K ATtiny44 AT90S4433 Atmel Flash =4K Atmel Classic group Tiny group Flash =4K