Course Overview and 8051 Architecture Rv01
Course Overview and 8051 Architecture Rv01
8051 architecture
System overview of C8051F020
8051 instruction set
System clock, crossbar and GPIO
Assembler directives
Programming using C language
Interrupts
Timer operations and programming
Serial communication
DAC and comparator
ADC
Course Syllabus
Course Goals
At the end of this course, you should be able to:
Understand the architecture of one of the most popular
microcontroller (MCU) families
Use an integrated development environment (IDE) to program and
debug an MCU
Program an MCU using Assembly and C languages
Understand and use peripherals integrated into an MCU
Interface an MCU to simple external components
Understand and use interrupts
Use timers in various modes
Communicate using a serial interface
Understand and use analog to digital converters (ADC), digital to
analog converters (DAC) and comparators
Course Prerequisites
A course in Electric Circuits that includes understanding
basic electronic components such as resistors, capacitors,
diodes and transistors
A course in basic digital logic design that includes logic
gates and Boolean arithmetic
Ability to program in a high-level programming language
such as C or C++
Terminology
Integrated Circuit (IC): A miniaturized electronic circuit that
consists of semiconductor devices and passive components
contained in a package
Central Processing Unit (CPU): This refers to the core of the
MCU that executes code
Microcontroller Unit (MCU): This is the standard acronym
used for microcontrollers, and refers to the full IC that
contains the CPU and peripherals.
n-bit the n refers to the data bus width of the CPU, and
is the maximum width of data it can handle at a time
Examples: 8-bit MCU, 32-bit MCU
8
Microcontroller Architectures
Microcontroller architecture refers to the internal hardware
organization of a microcontroller
Each hardware architecture has its own set of software
instructions called assembly language that allows
programming of the microcontroller
Some of the popular microcontroller architectures
Intel 8051
Zilog Z80
Atmel AVR
10
Forward
RF
Transmitter
Microcontroller
Antenna
RF Receiver
Microcontroller
Front Electric
Motor (Left/Right)
Reverse
Left
Right
Controls
12
Power
Power
Voltage Regulator
Voltage Regulator
Batteries
Batteries
T0
/INT0 /INT1
T1
Other
interrupts
128 bytes
Data Memory
(RAM)
4K byte Program
Memory (ROM)
Timer/Counter
(Timer 0 &
Timer 1)
8051 CPU
Oscillator
&Timing
From Crystal
Oscillator or RC
network
13
64 K Bus
Expansion Control
ALE
/PSEN
I/O ports
P3 P2 P1 P0
(Address/data)
Serial Port
TxD
RxD
14
15
Program
Counter
(PC)
Code Memory
F
e
t
c
h
CPU
To other
peripherals
18
General
Purpose RAM
(80 bytes)
Bit-addressable
Area (16 bytes)
Register Banks
(8 bytes per
bank; 4 banks)
19
Summary of SFRs
Accumulator (ACC) and B register
ACC (also referred to as A) is used implicitly by several instructions
B is used implicitly in multiply and divide operations
These registers are the input/output of the arithmetic and logic unit (ALU)
Stack pointerSP
Data pointerDPTR (DPH and DPL)
16-bit register used to access external code or data memory
www.silabs.com/MCU