Title: Developing an AVR Microcontroller System
1Developing an AVR Microcontroller System
2Table of Content
- Introducing Microcontrollers
- About AVR
- AVR Mega8 Architecture
- AVR Programming Interface
- Demo Hello World AVR Design.
- Demo Hardware Design
- Demo Programming
31. Introducing Microcontrollers
4Introducing Microcontrollers
- A microprocessor is a central processing unit
(CPU) on a single chip. - When a microprocessor and associated support
circuitry, peripheral I/O components and memory
(program as well as data) were put together to
form a small computer specifically for data
acquisition and control applications, it was
called a microcomputer.
5Introducing Microcontrollers
- When the components that make a microcomputer
were put together on a single chip of silicon, it
was called the microcontroller.
6Microcontrollers
A microcontroller interfaces to external devices
with a minimum of external components
7Relevance of Microcontrollers
- A recent white paper by Sun Microsystems claims
that by the end of the decade, an average home
will contain between 50 to 100 microcontrollers
controlling digital phones, microwave ovens,
VCRs, televisions sets and television remotes,
dishwashers, home security systems, PDAs etc. - An average car has about 15 processors the 1999
Mercedes S-class car has 63 microprocessors,
while the 1999 BMW has 65 processors! - Except perhaps the human body, microprocessors
and microcontrollers have gotten into everything
around us.
82. About AVR
9AVR General Features
- Enhanced RISC architecture with mostly
fixed-length instruction, load-store memory
access and 32 general-purpose registers. - A two-stage instruction pipeline that speeds up
execution - Majority of instructions take one clock cycle
- Up to 10-MHz clock operation
10AVR General Features
- Wide variety of on-chip peripherals, including
digital I/O, ADC, EEPROM, Timer, UART, RTC timer,
PWM etc - Internal program and data memory.
- In-System programmable (ISP)
- Available in 8-pin to 64-pin size to suit wide
variety of applications
11AVR General Features
- Up to 12 times performance speedup over
conventional CISC controllers. - Wide operating voltage from 2.7V to 6.0V
- Simple architecture offers a small learning curve
to the uninitiated.
12AVR Growing Family
133. AVR Mega8 Architecture
14AVR Mega8 Features
- 8-Kbyte self-programming Flash Program Memory
- 1-Kbyte SRAM
- 512 Byte EEPROM
- 6 or 8 Channel 10-bit A/D-converter.
- Up to 16 MIPS throughput at 16 Mhz.
- 2.7 - 5.5 Volt operation.
15AVR Architecture
16AVR A single chip solution
17AVR A single chip solution
18High-Level Integration
19AVR Influenced by IAR Systems
20Code Size and Execution Time
21Real life Applications
22Comparison of Code Size
234. AVR Programming Interface
24Parallel Port in-System-Programmer
25(No Transcript)
265. Demo Hello World AVR Design
27Hello World AVR Design
- The purpose of this demo is
- to design a simple AVR system
- Interface it to and LCD display
- Program it to display Hello World
286. Demo Hardware Design
29AT Mega 8 Pinout
30LCD Interface
31Interfacing LCD to AVR
LCD Interface AVR Port
RS PORTC.2
RW PORTC.3
E PORTC.4
DATA PORTD
327. DEMO Programming
33Software Tools needed
- AVR Studio
- GCC
- AVRLibs
- PonyProg
34From AVR Lib...
- Include the following files in your project
- lcd.c
- global.h
- timer.h
- lcd.h
35Main.c
- Add a new c source file to your AVR Studio
project. - Type in the main function as shown below
36- Main()
-
- lcdInitHW()
- lcdInit()
- lcdGotoXY(0,4)
- lcdPrintData(Hello Word!, 11)
37Thanks