SlideShare a Scribd company logo
The 8051 Microcontroller
architecture
CONTACT:
PROF.SHAHID SIR 8000181198
MR.SOHIL LUHAR 9974638068
MR.RAJVEER SIR 8401130726
Contents:
Introduction
Block Diagram and Pin Description of the 8051
Registers
Some Simple Instructions
Structure of Assembly language and Running an
8051 program
Memory mapping in 8051
8051 Flag bits and the PSW register
Addressing Modes
16-bit, BCD and Signed Arithmetic in 8051
Stack in the 8051
LOOP and JUMP Instructions
CALL Instructions
I/O Port Programming
1. meeting the computing needs of the task efficiently and cost
effectively
• speed, the amount of ROM and RAM, the number of I/O ports
and timers, size, packaging, power consumption
• easy to upgrade
• cost per unit
2. availability of software development tools
• assemblers, debuggers, C compilers, emulator, simulator,
technical support
3. wide availability and reliable sources of the microcontrollers.
Three criteria in Choosing a Microcontroller
The 8051 microcontroller
 a Harvard architecture (separate instruction/data
memories)
 single chip microcontroller (µC)
 developed by Intel in 1980 for use in embedded
systems.
 today largely superseded by a vast range of faster
and/or functionally enhanced 8051-compatible devices
manufactured by more than 20 independent
manufacturers
Block Diagram
CPU
On-chip
RAM
On-chip
ROM for
program
code
4 I/O Ports
Timer 0
Serial
PortOSC
Interrupt
Control
External interrupts
Timer 1
Timer/Counter
Bus
Control
TxD RxDP0 P1 P2 P3
Address/Data
Counter
Inputs
FeatureFeature 8051 8052 80318051 8052 8031
ROM (program space in bytes)ROM (program space in bytes) 4K4K 8K 0K8K 0K
RAM (bytes)RAM (bytes) 128128 256 128256 128
TimersTimers 2 3 22 3 2
I/O pinsI/O pins 32 32 3232 32 32
Serial portSerial port 1 1 11 1 1
Interrupt sourcesInterrupt sources 6 8 66 8 6
Comparison of the 8051 Family Members
Lecture SOHIL LUHAR
Pin Description of the 8051
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
P1.0
P1.1
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
RST
(RXD)P3.0
(TXD)P3.1
(T0)P3.4
(T1)P3.5
XTAL2
XTAL1
GND
(INT0)P3.2
(INT1)P3.3
(RD)P3.7
(WR)P3.6
Vcc
P0.0(AD0)
P0.1(AD1)
P0.2(AD2)
P0.3(AD3)
P0.4(AD4)
P0.5(AD5)
P0.6(AD6)
P0.7(AD7)
EA/VPP
ALE/PROG
PSEN
P2.7(A15)
P2.6(A14)
P2.5(A13)
P2.4(A12)
P2.3(A11)
P2.2(A10)
P2.1(A9)
P2.0(A8)
8051
(8031)
Pins of 8051(1/4)
 Vcc(pin 40):
 Vcc provides supply voltage to the chip.
 The voltage source is +5V.
 GND(pin 20):ground
 XTAL1 and XTAL2(pins 19,18):
 These 2 pins provide external clock.
 Way 1:using a quartz crystal oscillator
 Way 2:using a TTL oscillator
 Example 4-1 shows the relationship between XTAL
and the machine cycle.
Pins of 8051(2/4) RST(pin 9):reset
 It is an input pin and is active high(normally low).
 The high pulse must be high at least 2 machine cycles.
 It is a power-on reset.
 Upon applying a high pulse to RST, the microcontroller will
reset and all values in registers will be lost.
 Reset values of some 8051 registers
 Way 1:Power-on reset circuit
 Way 2:Power-on reset with debounce
Pins of 8051(3/4)
 /EA(pin 31):external access
 There is no on-chip ROM in 8031 and 8032 .
 The /EA pin is connected to GND to indicate the code is stored
externally.
 /PSEN & ALE are used for external ROM.
 For 8051, /EA pin is connected to Vcc.
 “/” means active low.
 /PSEN(pin 29):program store enable
 This is an output pin and is connected to the OE pin of the ROM.
 See Chapter 14.
Pins of 8051(4/4)
 ALE(pin 30):address latch enable
 It is an output pin and is active high.
 8051 port 0 provides both address and data.
 The ALE pin is used for de-multiplexing the address and data by
connecting to the G pin of the 74LS373 latch.
 I/O port pins
 The four ports P0, P1, P2, and P3.
 Each port uses 8 pins.
 All I/O pins are bi-directional.
Figure 4-2 (a). XTAL Connection to 8051
 Using a quartz crystal oscillator
 We can observe the frequency on
the XTAL2 pin.
XTAL2
XTAL1
G
N
D

Figure 4-2 (b). XTAL Connection to an External Clock Source
 Using a TTL oscillator
 XTAL2 is unconnected.
N
C
EXTERNAL
OSCILLATOR
SIGNAL
XTAL2
XTAL1
GND

RESET Value of Some 8051 Registers:
00000000DPTRDPTR
00070007SPSP
00000000PSWPSW
00000000BB
00000000ACCACC
00000000PCPC
Reset ValueReset ValueRegisterRegister
RAM are all zero.RAM are all zero.

Figure 4-3 (a). Power-On RESET Circuit
30 pF
30 pF
8.2 K
10 uF
+
Vcc
11.0592 MHz
EA/VPP
X1
X2
RST
31
19
18
9

Figure 4-3 (b). Power-On RESET with Debounce
EA/VPP
X1
X2
RST
Vcc
10 uF
8.2 K
30 pF
9
31

Pins of I/O Port
 The 8051 has four I/O ports
 Port 0 (pins 32-39):P0(P0.0~P0.7)
 Port 1(pins 1-8) :P1(P1.0~P1.7)
 Port 2(pins 21-28):P2(P2.0~P2.7)
 Port 3(pins 10-17):P3(P3.0~P3.7)
 Each port has 8 pins.
 Named P0.X (X=0,1,...,7), P1.X, P2.X, P3.X
 Ex:P0.0 is the bit 0(LSB)of P0
 Ex:P0.7 is the bit 7(MSB)of P0
 These 8 bits form a byte.
 Each port can be used as input or output (bi-direction).

Registers
A
B
R0
R1
R3
R4
R2
R5
R7
R6
DPH DPL
PC
DPTR
PC
Some 8051 16-bit Register
Some 8-bitt Registers of
the 8051
Memory Map (RAM)
CPU timing
 Most 8051 instructions are executed in one cycle.
 MUL (multiply) and DIV (divide) are the only
 instructions that take more than two cycles to complete
(four cycles)
 Normally two code bytes are fetched from the program
memory during every machine cycle.
 The only exception to this is when a MOVX instruction is
executed. MOVX is a one-byte, 2-cycle instruction that
accesses external data memory.
 During a MOVX, the two fetches in the second cycle are
skipped while the external data memory is being addressed
and strobed.
8051 machine cycle
Example :

Find the machine cycle forFind the machine cycle for
(a) XTAL = 11.0592 MHz(a) XTAL = 11.0592 MHz
(b) XTAL = 16 MHz.(b) XTAL = 16 MHz.
Solution:Solution:
(a) 11.0592 MHz / 12 = 921.6 kHz;(a) 11.0592 MHz / 12 = 921.6 kHz;
machine cycle = 1 / 921.6 kHz = 1.085machine cycle = 1 / 921.6 kHz = 1.085 ss
(b) 16 MHz / 12 = 1.333 MHz;(b) 16 MHz / 12 = 1.333 MHz;
machine cycle = 1 / 1.333 MHz = 0.75machine cycle = 1 / 1.333 MHz = 0.75 ss
Edsim51 emulator diagram
KitCON-515 schematic
Timers 4 marks
 8051 has two 16-bit on-chip timers that can be
used for timing durations or for counting
external events
 The high byte for timer 1 (TH1) is at address
8DH while the low byte (TL1) is at 8BH
 The high byte for timer 0 (TH0) is at 8CH while
the low byte (TL0) is at 8AH.
 Timer Mode Register (TMOD) is at address 88H
Timer Mode Register Bit 7: Gate bit; when set, timer only runs while INT
high. (T0)
 Bit 6: Counter/timer select bit; when set timer is an
event counter when cleared timer is an interval timer
(T0)
 Bit 5: Mode bit 1 (T0)
 Bit 4: Mode bit 0 (T0)
 Bit 3: Gate bit; when set, timer only runs while INT
high. (T1)
 Bit 2: Counter/timer select bit; when set timer is an
event counter when cleared timer is an interval timer
(T1)
 Bit 1: Mode bit 1 (T1)
 Bit 0: Mode bit 0 (T1)
Timer Modes
 M1-M0: 00 (Mode 0) – 13-bit mode (not commonly
used)
 M1-M0: 01 (Mode 1) - 16-bit timer mode
 M1-M0: 10 (Mode 2) - 8-bit auto-reload mode
 M1-M0: 11 (Mode 3) – Split timer mode
8051 Interrupt Vector Table
The Stack and Stack Pointer
 The Stack Pointer, like all registers except DPTR and PC, may hold an 8-bit (1-
byte) value.
 The Stack Pointer is used to indicate where the next value to be removed from
the stack should be taken from.
 When you push a value onto the stack, the 8051 first increments the value of SP
and then stores the value at the resulting memory location.
 When you pop a value off the stack, the 8051 returns the value from the
memory location indicated by SP, and then decrements the value of SP.
 This order of operation is important. When the 8051 is initialized SP will be
initialized to 07h. If you immediately push a value onto the stack, the value will
be stored in Internal RAM address 08h. This makes sense taking into account
what was mentioned two paragraphs above: First the 8051 will increment the
value of SP (from 07h to 08h) and then will store the pushed value at that
memory address (08h).
 SP is modified directly by the 8051 by six instructions: PUSH, POP, ACALL,
LCALL, RET, and RETI. It is also used intrinsically whenever an interrupt is
triggered
Any
Query?
Lecture SOHIL LUHAR

More Related Content

PDF
Microprocessor 8051
PPTX
Presentation On: "Micro-controller 8051 & Embedded System"
PPTX
8051 microprocessor
DOCX
Ashish microcontroller 8051
PPTX
MICROCONTROLLER 8051- Architecture & Pin Configuration
PPTX
Microcontroller 8051
DOCX
Study of 8051 microcontroller
PPT
8051 MICROCONTROLLER
Microprocessor 8051
Presentation On: "Micro-controller 8051 & Embedded System"
8051 microprocessor
Ashish microcontroller 8051
MICROCONTROLLER 8051- Architecture & Pin Configuration
Microcontroller 8051
Study of 8051 microcontroller
8051 MICROCONTROLLER

What's hot (20)

PDF
8051 microcontroller
PPT
8051 archi
PPT
Embedded systems, 8051 microcontroller
PPTX
8051 presentation
PDF
At 89c51
PPT
Microcontroller 8051
PPT
8051 microcontroller
PPT
Microcontroller 8051
PPTX
Microcontroller ppt
PPTX
Microcontroller 8051 training
PPT
Microcontroller 8051
PPTX
8051 Microcontroller Overview by Venkatrao Ramisetti
DOC
PPT
8051
PDF
8051 microcontrollers ch3
PPT
Microcontroller 8051
PPT
8051 microcontroller lecture ppt by Tarun Khaneja ( 9034406598 )
PPT
Microcontroller 8051
PDF
1 8051 microcontroller intr
DOC
AT89 S52
8051 microcontroller
8051 archi
Embedded systems, 8051 microcontroller
8051 presentation
At 89c51
Microcontroller 8051
8051 microcontroller
Microcontroller 8051
Microcontroller ppt
Microcontroller 8051 training
Microcontroller 8051
8051 Microcontroller Overview by Venkatrao Ramisetti
8051
8051 microcontrollers ch3
Microcontroller 8051
8051 microcontroller lecture ppt by Tarun Khaneja ( 9034406598 )
Microcontroller 8051
1 8051 microcontroller intr
AT89 S52
Ad

Similar to Lecture SOHIL LUHAR (20)

PPT
janakiraman egsp collage I msc 4 unit
PPT
8051-MICROCONTROLLER all contents with diagram.ppt
PPT
janakiraman I msc 4 unit
PPT
8051 microcontroller and it’s interface
PDF
8051_microcontroller_unit4 Presentation.pdf
PPTX
Unit two and unit three pptx for btech ece
PPT
Microcontroller 8051
PPTX
8051 microcontroller lecture EEE 3209.pptx
PDF
Basics and Working of 8051 Microprocontroller
PDF
Microprocessor Techniques and Computer Organisation
PDF
Working and Internals of 8051 Microcontroller
PDF
Microcontroller Basics and Architecture of 8051
PDF
Introduction to 8051 Microcontroller and its Architecture
PDF
Hardware Structures, Addressing Modes, Interrupt Control : 8051
PPTX
8051- Microcontrollers Architecture & Addressing modes
PPTX
8051 programes -ppt.pptx bnvmmmmmmmmmmmmmmmmmmmmmmmmmmhn
PDF
microcontroller intel 8051 pin description
PDF
8051 Hardware Architecture, Addressing Modes, Interfacing
PDF
Pin Description of the 8051 along with I/O Interfacing
PDF
Introduction Architecture Addressing Modes
janakiraman egsp collage I msc 4 unit
8051-MICROCONTROLLER all contents with diagram.ppt
janakiraman I msc 4 unit
8051 microcontroller and it’s interface
8051_microcontroller_unit4 Presentation.pdf
Unit two and unit three pptx for btech ece
Microcontroller 8051
8051 microcontroller lecture EEE 3209.pptx
Basics and Working of 8051 Microprocontroller
Microprocessor Techniques and Computer Organisation
Working and Internals of 8051 Microcontroller
Microcontroller Basics and Architecture of 8051
Introduction to 8051 Microcontroller and its Architecture
Hardware Structures, Addressing Modes, Interrupt Control : 8051
8051- Microcontrollers Architecture & Addressing modes
8051 programes -ppt.pptx bnvmmmmmmmmmmmmmmmmmmmmmmmmmmhn
microcontroller intel 8051 pin description
8051 Hardware Architecture, Addressing Modes, Interfacing
Pin Description of the 8051 along with I/O Interfacing
Introduction Architecture Addressing Modes
Ad

Recently uploaded (20)

PDF
Automation-in-Manufacturing-Chapter-Introduction.pdf
PPTX
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
PDF
Operating System & Kernel Study Guide-1 - converted.pdf
PPTX
MET 305 2019 SCHEME MODULE 2 COMPLETE.pptx
PPT
CRASH COURSE IN ALTERNATIVE PLUMBING CLASS
PDF
Embodied AI: Ushering in the Next Era of Intelligent Systems
PPTX
MCN 401 KTU-2019-PPE KITS-MODULE 2.pptx
PDF
Well-logging-methods_new................
PDF
Mohammad Mahdi Farshadian CV - Prospective PhD Student 2026
PPTX
KTU 2019 -S7-MCN 401 MODULE 2-VINAY.pptx
PPTX
Recipes for Real Time Voice AI WebRTC, SLMs and Open Source Software.pptx
PPT
Mechanical Engineering MATERIALS Selection
PDF
composite construction of structures.pdf
PPT
Project quality management in manufacturing
PPTX
UNIT-1 - COAL BASED THERMAL POWER PLANTS
PDF
Enhancing Cyber Defense Against Zero-Day Attacks using Ensemble Neural Networks
DOCX
573137875-Attendance-Management-System-original
DOCX
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
PPTX
UNIT 4 Total Quality Management .pptx
PPTX
Geodesy 1.pptx...............................................
Automation-in-Manufacturing-Chapter-Introduction.pdf
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
Operating System & Kernel Study Guide-1 - converted.pdf
MET 305 2019 SCHEME MODULE 2 COMPLETE.pptx
CRASH COURSE IN ALTERNATIVE PLUMBING CLASS
Embodied AI: Ushering in the Next Era of Intelligent Systems
MCN 401 KTU-2019-PPE KITS-MODULE 2.pptx
Well-logging-methods_new................
Mohammad Mahdi Farshadian CV - Prospective PhD Student 2026
KTU 2019 -S7-MCN 401 MODULE 2-VINAY.pptx
Recipes for Real Time Voice AI WebRTC, SLMs and Open Source Software.pptx
Mechanical Engineering MATERIALS Selection
composite construction of structures.pdf
Project quality management in manufacturing
UNIT-1 - COAL BASED THERMAL POWER PLANTS
Enhancing Cyber Defense Against Zero-Day Attacks using Ensemble Neural Networks
573137875-Attendance-Management-System-original
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
UNIT 4 Total Quality Management .pptx
Geodesy 1.pptx...............................................

Lecture SOHIL LUHAR

  • 2. CONTACT: PROF.SHAHID SIR 8000181198 MR.SOHIL LUHAR 9974638068 MR.RAJVEER SIR 8401130726
  • 3. Contents: Introduction Block Diagram and Pin Description of the 8051 Registers Some Simple Instructions Structure of Assembly language and Running an 8051 program Memory mapping in 8051 8051 Flag bits and the PSW register Addressing Modes 16-bit, BCD and Signed Arithmetic in 8051 Stack in the 8051 LOOP and JUMP Instructions CALL Instructions I/O Port Programming
  • 4. 1. meeting the computing needs of the task efficiently and cost effectively • speed, the amount of ROM and RAM, the number of I/O ports and timers, size, packaging, power consumption • easy to upgrade • cost per unit 2. availability of software development tools • assemblers, debuggers, C compilers, emulator, simulator, technical support 3. wide availability and reliable sources of the microcontrollers. Three criteria in Choosing a Microcontroller
  • 5. The 8051 microcontroller  a Harvard architecture (separate instruction/data memories)  single chip microcontroller (µC)  developed by Intel in 1980 for use in embedded systems.  today largely superseded by a vast range of faster and/or functionally enhanced 8051-compatible devices manufactured by more than 20 independent manufacturers
  • 6. Block Diagram CPU On-chip RAM On-chip ROM for program code 4 I/O Ports Timer 0 Serial PortOSC Interrupt Control External interrupts Timer 1 Timer/Counter Bus Control TxD RxDP0 P1 P2 P3 Address/Data Counter Inputs
  • 7. FeatureFeature 8051 8052 80318051 8052 8031 ROM (program space in bytes)ROM (program space in bytes) 4K4K 8K 0K8K 0K RAM (bytes)RAM (bytes) 128128 256 128256 128 TimersTimers 2 3 22 3 2 I/O pinsI/O pins 32 32 3232 32 32 Serial portSerial port 1 1 11 1 1 Interrupt sourcesInterrupt sources 6 8 66 8 6 Comparison of the 8051 Family Members
  • 9. Pin Description of the 8051 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 RST (RXD)P3.0 (TXD)P3.1 (T0)P3.4 (T1)P3.5 XTAL2 XTAL1 GND (INT0)P3.2 (INT1)P3.3 (RD)P3.7 (WR)P3.6 Vcc P0.0(AD0) P0.1(AD1) P0.2(AD2) P0.3(AD3) P0.4(AD4) P0.5(AD5) P0.6(AD6) P0.7(AD7) EA/VPP ALE/PROG PSEN P2.7(A15) P2.6(A14) P2.5(A13) P2.4(A12) P2.3(A11) P2.2(A10) P2.1(A9) P2.0(A8) 8051 (8031)
  • 10. Pins of 8051(1/4)  Vcc(pin 40):  Vcc provides supply voltage to the chip.  The voltage source is +5V.  GND(pin 20):ground  XTAL1 and XTAL2(pins 19,18):  These 2 pins provide external clock.  Way 1:using a quartz crystal oscillator  Way 2:using a TTL oscillator  Example 4-1 shows the relationship between XTAL and the machine cycle.
  • 11. Pins of 8051(2/4) RST(pin 9):reset  It is an input pin and is active high(normally low).  The high pulse must be high at least 2 machine cycles.  It is a power-on reset.  Upon applying a high pulse to RST, the microcontroller will reset and all values in registers will be lost.  Reset values of some 8051 registers  Way 1:Power-on reset circuit  Way 2:Power-on reset with debounce
  • 12. Pins of 8051(3/4)  /EA(pin 31):external access  There is no on-chip ROM in 8031 and 8032 .  The /EA pin is connected to GND to indicate the code is stored externally.  /PSEN & ALE are used for external ROM.  For 8051, /EA pin is connected to Vcc.  “/” means active low.  /PSEN(pin 29):program store enable  This is an output pin and is connected to the OE pin of the ROM.  See Chapter 14.
  • 13. Pins of 8051(4/4)  ALE(pin 30):address latch enable  It is an output pin and is active high.  8051 port 0 provides both address and data.  The ALE pin is used for de-multiplexing the address and data by connecting to the G pin of the 74LS373 latch.  I/O port pins  The four ports P0, P1, P2, and P3.  Each port uses 8 pins.  All I/O pins are bi-directional.
  • 14. Figure 4-2 (a). XTAL Connection to 8051  Using a quartz crystal oscillator  We can observe the frequency on the XTAL2 pin. XTAL2 XTAL1 G N D 
  • 15. Figure 4-2 (b). XTAL Connection to an External Clock Source  Using a TTL oscillator  XTAL2 is unconnected. N C EXTERNAL OSCILLATOR SIGNAL XTAL2 XTAL1 GND 
  • 16. RESET Value of Some 8051 Registers: 00000000DPTRDPTR 00070007SPSP 00000000PSWPSW 00000000BB 00000000ACCACC 00000000PCPC Reset ValueReset ValueRegisterRegister RAM are all zero.RAM are all zero. 
  • 17. Figure 4-3 (a). Power-On RESET Circuit 30 pF 30 pF 8.2 K 10 uF + Vcc 11.0592 MHz EA/VPP X1 X2 RST 31 19 18 9 
  • 18. Figure 4-3 (b). Power-On RESET with Debounce EA/VPP X1 X2 RST Vcc 10 uF 8.2 K 30 pF 9 31 
  • 19. Pins of I/O Port  The 8051 has four I/O ports  Port 0 (pins 32-39):P0(P0.0~P0.7)  Port 1(pins 1-8) :P1(P1.0~P1.7)  Port 2(pins 21-28):P2(P2.0~P2.7)  Port 3(pins 10-17):P3(P3.0~P3.7)  Each port has 8 pins.  Named P0.X (X=0,1,...,7), P1.X, P2.X, P3.X  Ex:P0.0 is the bit 0(LSB)of P0  Ex:P0.7 is the bit 7(MSB)of P0  These 8 bits form a byte.  Each port can be used as input or output (bi-direction). 
  • 20. Registers A B R0 R1 R3 R4 R2 R5 R7 R6 DPH DPL PC DPTR PC Some 8051 16-bit Register Some 8-bitt Registers of the 8051
  • 22. CPU timing  Most 8051 instructions are executed in one cycle.  MUL (multiply) and DIV (divide) are the only  instructions that take more than two cycles to complete (four cycles)  Normally two code bytes are fetched from the program memory during every machine cycle.  The only exception to this is when a MOVX instruction is executed. MOVX is a one-byte, 2-cycle instruction that accesses external data memory.  During a MOVX, the two fetches in the second cycle are skipped while the external data memory is being addressed and strobed.
  • 24. Example :  Find the machine cycle forFind the machine cycle for (a) XTAL = 11.0592 MHz(a) XTAL = 11.0592 MHz (b) XTAL = 16 MHz.(b) XTAL = 16 MHz. Solution:Solution: (a) 11.0592 MHz / 12 = 921.6 kHz;(a) 11.0592 MHz / 12 = 921.6 kHz; machine cycle = 1 / 921.6 kHz = 1.085machine cycle = 1 / 921.6 kHz = 1.085 ss (b) 16 MHz / 12 = 1.333 MHz;(b) 16 MHz / 12 = 1.333 MHz; machine cycle = 1 / 1.333 MHz = 0.75machine cycle = 1 / 1.333 MHz = 0.75 ss
  • 27. Timers 4 marks  8051 has two 16-bit on-chip timers that can be used for timing durations or for counting external events  The high byte for timer 1 (TH1) is at address 8DH while the low byte (TL1) is at 8BH  The high byte for timer 0 (TH0) is at 8CH while the low byte (TL0) is at 8AH.  Timer Mode Register (TMOD) is at address 88H
  • 28. Timer Mode Register Bit 7: Gate bit; when set, timer only runs while INT high. (T0)  Bit 6: Counter/timer select bit; when set timer is an event counter when cleared timer is an interval timer (T0)  Bit 5: Mode bit 1 (T0)  Bit 4: Mode bit 0 (T0)  Bit 3: Gate bit; when set, timer only runs while INT high. (T1)  Bit 2: Counter/timer select bit; when set timer is an event counter when cleared timer is an interval timer (T1)  Bit 1: Mode bit 1 (T1)  Bit 0: Mode bit 0 (T1)
  • 29. Timer Modes  M1-M0: 00 (Mode 0) – 13-bit mode (not commonly used)  M1-M0: 01 (Mode 1) - 16-bit timer mode  M1-M0: 10 (Mode 2) - 8-bit auto-reload mode  M1-M0: 11 (Mode 3) – Split timer mode
  • 31. The Stack and Stack Pointer  The Stack Pointer, like all registers except DPTR and PC, may hold an 8-bit (1- byte) value.  The Stack Pointer is used to indicate where the next value to be removed from the stack should be taken from.  When you push a value onto the stack, the 8051 first increments the value of SP and then stores the value at the resulting memory location.  When you pop a value off the stack, the 8051 returns the value from the memory location indicated by SP, and then decrements the value of SP.  This order of operation is important. When the 8051 is initialized SP will be initialized to 07h. If you immediately push a value onto the stack, the value will be stored in Internal RAM address 08h. This makes sense taking into account what was mentioned two paragraphs above: First the 8051 will increment the value of SP (from 07h to 08h) and then will store the pushed value at that memory address (08h).  SP is modified directly by the 8051 by six instructions: PUSH, POP, ACALL, LCALL, RET, and RETI. It is also used intrinsically whenever an interrupt is triggered