Top Banner
67& 0&8 /LPLWHG STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH GDWH 1
376

STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Mar 12, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

STC12C5410AD series MCUSTC12LE5410AD series MCU

Data Sheet

1

Page 2: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

STC MCU Limited

CONTENTSChapter 1. Introduction................................................................7

Chapter 2. Clock, Power Management and Reset ...................30

2

Page 3: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

STC MCU Limited

Chapter 3. Memory Organization .............................................57

Chapter 4. Configurable I/O Ports of STC12C5410AD series70

Chapter 5. Instruction System ...................................................81

Chapter 6. Interrupt System....................................................124

3

Page 4: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

STC MCU LimitedChapter 7. Timer/Counter 0/1 .................................................164

Chapter 8. UART with Enhanced Function ...........................194

4

Page 5: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

STC MCU Limited

Chapter 9. Analog to Digital Converter ..................................216

Chapter 10. Programmable Counter Array(PCA) ................236

Chapter 11. Serial Peripheral Interface (SPI) ........................270

5

Page 6: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Chapter 12. IAP / EEPROM ....................................................303

Chapter 13. STC12 series Development/Programming Tool 320

Appendix A: Assembly Language Programming...................329Appendix B: 8051 C Programming .........................................351Appendix C: STC12C5410AD series Electrical Characteristics

..............................................................................361Appendix D: Program for indirect addressing inner 256B RAM

..............................................................................363Appendix E: Using Serial port expand I/O interface ............364Appendix F: Use STC MCU common I/O driving LCD Display

..............................................................................366Appendix G: LED driven by an I/O port and Key Scan........373Appendix H: How to reduce the Length of Code through Keil C

..............................................................................374Appendix I: Notes of STC12C5410AD series Application ....375Appendix J: Notes of STC12 series Replaced Traditional 8051 .

..............................................................................376

6

Page 7: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

1.1 Features

Chapter 1. Introduction

7

Page 8: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

1.2 Block diagram

8

Page 9: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

1.3 Pin Configurations

9

Page 10: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

10

Page 11: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

1.4 STC12C5410AD series Selection Table

11

Page 12: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

1.5 STC12C5410AD series Minimum Application System

10μF0.1μF

10μF

12

Page 13: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

1.6 STC12C5410AD series MCU Typical Application Circuit for ISP

1.6.1 STC12C5410AD series MCU (28 pin) Typical Application Circuit for ISP

10μF

0.1μF

0.1μF

0.1μF

10 μF

10μF0.1μF

13

Page 14: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

14

Page 15: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

1.6.2 STC12C5410AD series MCU (20 pin) Typical Application Circuit for ISP

10μF

0.1μF

0.1μF

0.1μF

10μF0.1μF

15

Page 16: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

16

Page 17: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

1.6.3 STC12C5410AD series MCU (32 pin) Typical Application Circuit for ISP

0.1μF 10μF

10μF

0.1μF

0.1μF

0.1μF

10μF

17

Page 18: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

1.7 Pin Descriptions

MNEMONIC Description

18

Page 19: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

MNEMONIC Description

19

Page 20: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

1.8 Package Dimension Drawings

LQFP-32 OUTLINE PACKAGE

θ

θ

20

Page 21: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

32-Pin Small Outline Package (SOP-32)

Φ

Φ

21

Page 22: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

28-Pin Small Outline Package (SOP-28)

Φ

Φ

22

Page 23: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

θ

28-Pin Plastic Dual-In-line Package (SKDIP-28)

θ

23

Page 24: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

20-Pin Small Outline Package (SOP-20)

Φ

Φ

24

Page 25: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

θ

20-Pin Plastic Dual Inline Package (DIP-20)

θ

25

Page 26: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

1.9 STC12C5410AD series MCU naming rules

26

Page 27: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

1.10 Global Unique Identification Number (ID)

27

Page 28: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

28

Page 29: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

29

Page 30: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Chapter 2. Clock, Power Management and Reset2.1 Clock

2.1.1 On-Chip R/C Clock and External Crystal/Clcok are Optional in STC-ISP.exe

30

Page 31: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2.1.2 Divider for System Clock

CLK_DIV register (Clock Divider)

31

Page 32: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2.1.3 How to Know Internal RC Oscillator frequency(Internal clock frequency)

32

Page 33: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

33

Page 34: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

34

Page 35: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2.1.4 Programmable Clock Output

Symbol Description Address

1. AUXR: Auxiliary register

35

Page 36: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2.1.4.1 Timer 0 Programmable Clock-out on P1.0

(SYSclk) / (256 – TH0) / 2, when AUXR.7 / T0x12=1(SYSclk / 12) / (256 – TH0) / 2 , when AUXR.7 / T0x12=0

T0_Pin_CLK / (256-TH0) / 2

2. WAKE_CLKO: CLK_Output Power down Wake-up control register

36

Page 37: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2.1.4.2 Timer 1 Programmable Clock-out on P1.1

(SYSclk) / (256 – TH1) / 2, when AUXR.6 / T0x12=1(SYSclk / 12) / (256 – TH1) / 2 , when AUXR.6 / T0x12=0

T1_Pin_CLK / (256-TH1) / 2

37

Page 38: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2.2 Power Management Modes

PCON register

38

Page 39: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2.2.1 Slow Down Mode

CLK_DIV register (Clock Divider)

39

Page 40: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2.2.2 Idle Mode

40

Page 41: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2.2.3 Stop / Power Down (PD) Mode and Demo Program (C and ASM)

5MΩ

300Ω

41

Page 42: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

The following example C program demostrates that power-down mode be woken-up by external interrupt

.

42

Page 43: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

43

Page 44: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

44

Page 45: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

The following program also demostrates that power-down mode or idle mode be woken-up by external interrupt, but is written in assembly language rather than C languge.

45

Page 46: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

46

Page 47: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2.3 RESET Sources

2.3.1 RESET Pin

2.3.2 Software RESET

47

Page 48: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2.3.3 Power-On Reset (POR)

2.3.4 MAX810 power-on-Reset delay

2.3.5 Internal Low Voltage Detection Reset

48

Page 49: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

PCON register

49

Page 50: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

IE: Interrupt Enable Rsgister

AUXR: Auxiliary register

50

Page 51: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

IPH: Interrupt Priority High Register

IP: Interrupt Priority Register

51

Page 52: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2.3.6 Watch-Dog-Timer

52

Page 53: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

53

Page 54: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

The following example is a assembly language program that demostrates STC 1T Series MCU WDT.

54

Page 55: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

55

Page 56: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2.3.7 Warm Boot and Cold Boot Reset

56

Page 57: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Chapter 3. Memory Organization

3.1 Program Memory

57

Page 58: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

3.2 Data Memory(SRAM)3.2.1 On-chip Scratch-Pad RAM

58

Page 59: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

PSW register

SP : Stack Pointer.

59

Page 60: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

60

Page 61: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

3.2.2 Auxiliary RAM

An example program for internal expanded RAM demo of STC12C5410AD :

61

Page 62: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

62

Page 63: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

63

Page 64: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

3.3 Special Function Registers

3.3.1 Special Function Registers Address Map

64

Page 65: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

3.3.2 Special Function Registers Bits Description

Symbol Description Address

65

Page 66: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Symbol Description Address

66

Page 67: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Symbol Description Address

67

Page 68: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Accumulator

B-Register

Stack Pointer

Program Status Word(PSW)

Data Pointer Register (DPTR)

68

Page 69: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

PSW register

69

Page 70: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Chapter 4. Configurable I/O Ports of STC12C5410AD series

4.1 I/O Ports Configurations

[

Sink Current up to 20mA , pull-up Current is 230μA ,

[

Sink Current up to 20mA , pull-up Current is 230μA ,

70

Page 71: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

[

Sink Current up to 20mA , pull-up Current is 230μA ,

[

Sink Current up to 20mA , pull-up Current is 230μA ,

P3 register

P3M0 register

P3M1 register

71

Page 72: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

P1 register

P1M0 register

P1M1 register

P0 register

P0M0 register

P0M1 register

P2 register

P2M0 register

P2M1 register

72

Page 73: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

4.2.1 Quasi-bidirectional I/O

PORTPIN

4.2 I/O ports Modes

73

Page 74: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

4.2.4 Open-drain Output

PORTPIN

4.2.3 Input-only (High-Impedance)Mode

PORTPIN

4.2.2 Push-pull Output

PORTPIN

74

Page 75: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

4.3 I/O port application notes

4.4 Typical transistor control circuit

,

4.5 Typical diode control circuit

75

Page 76: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

4.6 3V/5V hybrid system

Ω

76

Page 77: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

4.7 How to make I/O port low after MCU reset

4.8 I/O status while PWM outputing

77

Page 78: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

4.9 I/O drive LED application circuit

78

Page 79: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Ω Ω Ω Ω

Ω Ω Ω Ω

Ω Ω Ω Ω

Ω Ω Ω Ω

4.10 I/O immediately drive LCD application circuit

79

Page 80: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

ΩΩΩΩ520Ω

Ω

Ω

Ω

Ω Ω Ω Ω Ω Ω Ω Ω Ω

4.11 Using A/D Conversion to scan key application circuit

80

Page 81: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Chapter 5. Instruction System

Register-Specific Instruction

Index Addressing

5.1 Addressing Modes

Immediate Constant(IMM)

Direct Addressing(DIR)

Indirect Addressing(IND)

Register Instruction(REG)

81

Page 82: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

5.2 Instruction Set Summary

Mnemonic Description Byte Execution clocks of 12T MCU

Execution clocks of STC 1T MCU

Efficiencyimproved

ARITHMETIC OPERATIONS

82

Page 83: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Mnemonic Description Byte Execution clocks of 12T MCU

Execution clocks of STC 1T MCU

Efficiencyimproved

LOGICAL OPERATIONS

83

Page 84: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Mnemonic Description Byte Execution clocks of 12T MCU

Execution clocks of STC 1T MCU

Efficiencyimproved

DATA TRANSFER

84

Page 85: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Mnemonic Description Byte Execution clocks of 12T MCU

Execution clocks of STC 1T MCU

Efficiencyimproved

BOOLEAN VARIABLE MANIPULATION

PROGRAM BRANCHING

85

Page 86: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

86

Page 87: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

5.3 Instruction DefinitionsACALL addr 11

Function:Description:

Example:

Bytes:Cycles:

Encoding:

Operation:(PC)← (PC)+ 2← (PC)+ 2(SP)←(SP) + 1←(SP) + 1((sP)) ← (PC← (PC(SP)←(SP) + 1←(SP) + 1((SP))←(PC←(PC

)← page address← page address

ADD A,<src-byte>Function:

Description:

Example:

87

Page 88: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

ADD A,RnBytes:

Cycles:Encoding:

Operation:(A)←(A) + (Rn)←(A) + (Rn)

ADD A,directBytes:

Cycles:

Encoding:

Operation:(A)←(A) + (direct)←(A) + (direct)

ADD A,@RiBytes:

Cycles:Encoding:

Operation:(A)←(A) + ((Ri))←(A) + ((Ri))

ADD A,#dataBytes:

Cycles:Encoding:

Operation:(A)←(A) + #data←(A) + #data

ADDC A,<src-byte>Function:

Description:

Example:

88

Page 89: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

ADDC A,RnBytes:

Cycles:Encoding:

Operation:(A)←(A) + (C) + (Rn)←(A) + (C) + (Rn)

ADDC A,directBytes:

Cycles:

Encoding:

Operation:(A)←(A) + (C) + (direct)←(A) + (C) + (direct)

ADDC A,@RiBytes:

Cycles:Encoding:

Operation:(A)←(A) + (C) + ((Ri))←(A) + (C) + ((Ri))

ADDC A,#dataBytes:

Cycles:Encoding:

Operation:(A)←(A) + (C) + #data←(A) + (C) + #data

AJMP addr 11Function:

Description:

Example:

Bytes:Cycles:

Encoding:

Operation:(PC)← (PC)+ 2← (PC)+ 2

)← page address← page address

89

Page 90: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

ANL <dest-byte> , <src-byte>Function:

Description:

Note:

Example:

ANL A,RnBytes:

Cycles:Encoding:

Operation:(A)←(A)←(A)

ANL A,directBytes:

Cycles:

Encoding:

Operation:(A)←(A)←(A)

ANL A,@RiBytes:

Cycles:Encoding:

Operation:(A)←(A)←(A)

90

Page 91: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

ANL A,#dataBytes:

Cycles:Encoding:

Operation:(A)←(A)←(A)

ANL direct,ABytes:

Cycles:

Encoding:

Operation:(direct)←(direct)←(direct)

ANL direct,#dataBytes:

Cycles:

Encoding:

Operation:(direct)←(direct)←(direct)

ANL C , <src-bit>Function:

Description:

but the source bit itself is not affceted.

Example:

ANL C,bitBytes:

Cycles:

Encoding:

Operation:(C) ← (C)← (C)

91

Page 92: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

ANL C, /bitBytes:

Cycles:Encoding:

Operation:(C)←(C)←(C)

CJNE <dest-byte>, <src-byte>, relFunction:

Description:

Example:

CJNE A,direct,relBytes:

Cycles:Encoding:

Operation: (PC) ← (PC) + 3← (PC) + 3(direct)

(PC) ← (PC) +← (PC) + relative offset(direct)

(C) ← 1← 1

(C) ← 0← 0

92

Page 93: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

CJNE A,#data,relBytes:

Cycles:Encoding:

Operation: (PC) ← (PC) + 3← (PC) + 3(data)

(PC) ← (PC) +← (PC) + relative offset(data)

(C) ← 1← 1

(C) ← 0← 0CJNE Rn,#data,rel

Bytes:

Cycles:

Encoding:

Operation: (PC) ← (PC) + 3← (PC) + 3(data)

(PC) ← (PC) +← (PC) + relative offset(data)

(C) ← 1← 1

(C) ← 0← 0CJNE @Ri,#data,rel

Bytes:

Cycles:

Encoding:

Operation: (PC) ← (PC) + 3← (PC) + 3(data)

(PC) ← (PC) +← (PC) + relative offset(data)

(C) ← 1← 1

(C) ← 0← 0

93

Page 94: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

CLR AFunction:

Description:

Example:

Bytes:Cycles:

Encoding:

Operation:(A)← 0← 0

CLR bitFunction:

Description:

Example:

CLR CBytes:

Cycles:Encoding:

Operation:(C) ← 0← 0

CLR bitBytes:

Cycles:

Encoding:

Operation:(bit) ← 0← 0

94

Page 95: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

CPL AFunction:

Description:

Example:

Bytes:Cycles:

Encoding:

Operation:(A)←←

CPL bitFunction:

Description:

Example:

CPL CBytes:

Cycles:Encoding:

Operation:(C) ←←

CPL bitBytes:

Cycles:

Encoding:

Operation:(bit) ←←

95

Page 96: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

DA AFunction:

Description:

Example:

96

Page 97: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Bytes:Cycles:

Encoding:

Operation:

) ← (A← (A

) ← (A← (A

DEC byteFunction:

Description:

Note:

Example:

DEC ABytes:

Cycles:Encoding:

Operation:(A)←(A)←(A)

DEC RnBytes:

Cycles:

Encoding:

Operation:(Rn)←(Rn) - 1←(Rn) - 1

97

Page 98: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

DEC directBytes:

Cycles:Encoding:

Operation:(direct)←(direct)←(direct)

DEC @RiBytes:

Cycles:

Encoding:

Operation:((Ri))←((Ri)) - 1←((Ri)) - 1

DIV ABFunction:

Description:

Exception:

Example:

Bytes:Cycles:

Encoding:

Operation:

← (A)/(B)

98

Page 99: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

DJNZ <byte>, <rel-addr>Function:

Description:

Example:

DJNZ Rn,relBytes:

Cycles:Encoding:

Operation:(PC) ← (PC) + 2← (PC) + 2(Rn) ← (Rn) – 1← (Rn) – 1

(PC) ← (PC)+ rel← (PC)+ relDJNZ direct, rel

Bytes:Cycles:

Encoding:

99

Page 100: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Operation:(PC) ← (PC) + 2← (PC) + 2(direct) ← (direct) – 1← (direct) – 1

(PC) ← (PC) + rel← (PC) + rel

INC <byte>Function:

Description:

Example:

INC ABytes:

Cycles:Encoding:

Operation:(A) ← (A)+1← (A)+1

INC RnBytes:

Cycles:Encoding:

Operation:(Rn) ← (Rn)+1← (Rn)+1

INC directBytes:

Cycles:Encoding:

Operation:(direct)←(direct)←(direct)

100

Page 101: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

INC @RiBytes:

Cycles:

Encoding:

Operation:((Ri))←((Ri)) + 1←((Ri)) + 1

INC DPTRFunction:

Description:

Example:

Bytes:Cycles:

Encoding:

Operation:(DPTR) ← (DPTR)+1← (DPTR)+1

JB bit, relFunction:

Description:

The bit tested is not modified. No flags are affected.Example:

Bytes:Cycles:

Encoding:

Operation:(PC) ← (PC)+ 3← (PC)+ 3

(PC) ← (PC) + rel← (PC) + rel

101

Page 102: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

JBC bit, relFunction:

Description:The bit wili not be cleared if it is already a zero.

Example:

Bytes:Cycles:

Encoding:

Operation:(PC) ← (PC)+ 3← (PC)+ 3

(bit) ← 0← 0 (PC) ← (PC) + rel← (PC) + rel

JC relFunction:

Description:

Example:

Bytes:Cycles:

Encoding:

Operation:(PC) ← (PC)+ 2← (PC)+ 2

(PC) ← (PC) + rel← (PC) + rel

102

Page 103: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

JMP @A+DPTRFunction:

Description:

Example:

Bytes:Cycles:

Encoding:

Operation:(PC) ← (A) + (DPTR)← (A) + (DPTR)

JNB bit, relFunction:

Description:

The bit tested is not modified.Example:

Bytes:Cycles:

Encoding:

Operation:(PC) ← (PC)+ 3← (PC)+ 3

THEN (PC) ← (PC) + rel← (PC) + rel

103

Page 104: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

JNC relFunction:

Description:

Example:

Bytes:Cycles:

Encoding:

Operation:(PC) ← (PC)+ 2← (PC)+ 2

THEN (PC) ← (PC) + rel← (PC) + rel

JNZ relFunction:

Description:

Example:

Bytes:Cycles:

Encoding:

Operation:(PC) ← (PC)+ 2← (PC)+ 2IF (A) ≠ 0 THEN (PC) ← (PC) + rel← (PC) + rel

104

Page 105: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

JZ relFunction:

Description:

Example:

Bytes:Cycles:

Encoding:

Operation:(PC) ← (PC)+ 2← (PC)+ 2

THEN (PC) ← (PC) + rel← (PC) + rel

LCALL addr16Function:

Description:

Example:

Bytes:Cycles:

Encoding:

Operation:(PC) ← (PC) + 3← (PC) + 3(SP) ← (SP) + 1← (SP) + 1((SP)) ← (PC← (PC(SP) ← (SP) + 1← (SP) + 1((SP)) ← (PC← (PC(PC) ← addr← addr

105

Page 106: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

LJMP addr16Function:

Description:

Example:

Bytes:Cycles:

Encoding:

Operation:(PC) ← addr← addr

MOV <dest-byte> , <src-byte>Function:

Description:

Example:

MOV A,RnBytes:

Cycles:Encoding:

Operation:(A) ← (Rn)← (Rn)

106

Page 107: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

*MOV A,directBytes:

Cycles:

Encoding:Operation:

(A)← (direct)← (direct)*MOV A, ACC is not a valid instructionMOV A,@Ri

Bytes:Cycles:

Encoding:

Operation:(A) ← ((Ri))← ((Ri))

MOV A,#dataBytes:

Cycles:Encoding:

Operation:(A)← #data← #data

MOV Rn, ABytes:

Cycles:

Encoding:

Operation:(Rn)←(A)←(A)

MOV Rn,directBytes:

Cycles:

Encoding:

Operation:(Rn)←(direct)←(direct)

MOV Rn,#data

Bytes:

Cycles:

Encoding:

Operation:(Rn) ← #data← #data

107

Page 108: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

MOV direct, A

Bytes:

Cycles:

Encoding:

Operation:(direct) ← (A)← (A)

MOV direct, Rn

Bytes:

Cycles:

Encoding:

Operation:(direct) ← (Rn)← (Rn)

MOV direct, directBytes:

Cycles:Encoding:

Operation:(direct)← (direct)← (direct)

MOV direct, @RiBytes:

Cycles:

Encoding:

Operation:(direct)←((Ri))←((Ri))

MOV direct,#dataBytes:

Cycles:

Encoding:

Operation:(direct) ← #data← #data

MOV @Ri, A

Bytes:

Cycles:

Encoding:

Operation:((Ri)) ← (A)← (A)

108

Page 109: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

MOV @Ri, direct

Bytes:

Cycles:

Encoding:

Operation:((Ri)) ← (direct)← (direct)

MOV @Ri, #data

Bytes:

Cycles:

Encoding:

Operation:((Ri)) ← #data← #data

MOV <dest-bit> , <src-bit>Function:

Description:

Example:

MOV C,bitBytes:

Cycles:Encoding:

Operation:(C) ← (bit)← (bit)

MOV bit,CBytes:

Cycles:

Encoding:

Operation:(bit)← (C)← (C)

109

Page 110: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

MOV DPTR , #data 16Function:

Description:

Example:

Bytes:Cycles:

Encoding:

Operation:(DPTR) ← #data← #dataDPH DPL ← #data← #data

MOVC A , @A+ <base-reg>Function:

Description:

Example:

MOVC A,@A+DPTRBytes:

Cycles:Encoding:

Operation:(A) ← ((A)+(DPTR))← ((A)+(DPTR))

110

Page 111: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

MOVC A,@A+PCBytes:

Cycles:

Encoding:

Operation:(PC) ← (PC)+1← (PC)+1(A) ← ((A)+(PC))← ((A)+(PC))

MOVX <dest-byte> , <src-byte>Function:

Description:

Example:

MOVX A,@RiBytes:

Cycles:Encoding:

Operation:(A) ← ((Ri))← ((Ri))

111

Page 112: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

MOVX A,@DPTRBytes:

Cycles:

Encoding:

Operation:(A) ← ((DPTR))← ((DPTR))

MOVX @Ri, ABytes:

Cycles:Encoding:

Operation:((Ri))← (A)← (A)

MOVX @DPTR, ABytes:

Cycles:

Encoding:

Operation:(DPTR)←(A)←(A)

MUL ABFunction:

Description:

Example:

Bytes:Cycles:

Encoding:

Operation:← (A)×(B)

112

Page 113: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

NOPFunction:

Description:

Example:

Bytes:Cycles:

Encoding:

Operation:← (PC)+1

ORL <dest-byte> , <src-byte>Function:

Description:

Example:

113

Page 114: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

ORL A,RnBytes:

Cycles:Encoding:

Operation:(A) ← (A)← (A)

ORL A,directBytes:

Cycles:

Encoding:

Operation:(A)← (A)← (A)

ORL A,@Ri

Bytes:Cycles:

Encoding:

Operation:(A)← (A)← (A)

ORL A,#dataBytes:

Cycles:

Encoding:

Operation:(A)← (A)← (A)

ORL direct, A

Bytes:

Cycles:Encoding:

Operation:(direct)← (direct)← (direct)

ORL direct, #dataBytes:

Cycles:

Encoding:

Operation:(direct) ← (direct)← (direct)

114

Page 115: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

ORL C, <src-bit>Function:

Description:

Example:

ORL C, bitBytes:

Cycles:Encoding:

Operation:(C) ← (C)← (C)

ORL C, /bitBytes:

Cycles:

Encoding:

Operation:(C) ← (C)← (C)

POP directFunction:

Description:

Example:

Bytes:Cycles:

Encoding:

Operation:← ((SP))

(SP) ← (SP) - 1← (SP) - 1

115

Page 116: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

PUSH directFunction:

Description:

Example:

Bytes:Cycles:

Encoding:

Operation:(SP) ← (SP) + 1← (SP) + 1((SP)) ← (direct)← (direct)

RETFunction:

Description:

Example:

Bytes:Cycles:

Encoding:

Operation:) ← ((SP))← ((SP))

(SP) ← (SP) -1← (SP) -1) ← ((SP))← ((SP))

(SP) ← (SP) -1← (SP) -1

116

Page 117: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

RETIFunction:

Description:

Example:

Bytes:Cycles:

Encoding:

Operation:) ← ((SP))← ((SP))

(SP) ← (SP) -1← (SP) -1) ← ((SP))← ((SP))

(SP) ← (SP) -1← (SP) -1

RL AFunction:

Description:

Example:

Bytes:Cycles:

Encoding:

Operation:) ← (A← (A

) ← (A← (A

117

Page 118: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

RLC AFunction:

Description:

Example:

Bytes:Cycles:

Encoding:Operation:

) ← (A← (A) ← (C)← (C)

(C) ← (A← (ARR A

Function:Description:

Example:

Bytes:Cycles:

Encoding:Operation:

) ← (A← (A) ← (A← (A

RRC AFunction:

Description:

Example:

Bytes:Cycles:

Encoding:Operation:

) ← (A← (A) ← (C)← (C)

(C) ← (A← (A

118

Page 119: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

SETB <bit> Function:

Description:

Example:

SETB CBytes:

Cycles:Encoding:

Operation:(C) ← 1← 1

SETB bitBytes:

Cycles:

Encoding:Operation:

(bit) ← 1← 1

SJMP relFunction:

Description:

Example:

Note:

Bytes:Cycles:

Encoding:Operation:

) ← (PC)+2← (PC)+2(PC) ← (PC)+rel← (PC)+rel

119

Page 120: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

SUBB A, <src-byte>Function:

Description:

Example:

SUBB A, RnBytes:

Cycles:Encoding:

Operation:(A) ← (A) - (C) - (Rn)← (A) - (C) - (Rn)

SUBB A, directBytes:

Cycles:Encoding:

Operation:(A) ← (A) - (C) - (direct)← (A) - (C) - (direct)

SUBB A, @RiBytes:

Cycles:Encoding:

Operation:(A) ← (A) - (C) - ((Ri))← (A) - (C) - ((Ri))

120

Page 121: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

SWAP AFunction:

Description:

Example:

Bytes:Cycles:

Encoding:Operation:

XCH A, <byte>Function:

Description:

Example:

XCH A, RnBytes:

Cycles:Encoding:

Operation:

XCH A, directBytes:

Cycles:Encoding:

Operation:

SUBB A, #dataBytes:

Cycles:Encoding:

Operation:(A) ← (A) - (C) - #data← (A) - (C) - #data

121

Page 122: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

XCH A, @RiBytes:

Cycles:Encoding:

Operation:

XCHD A, @RiFunction:

Description:

Example:

Bytes:Cycles:

Encoding:

Operation:

XRL <dest-byte>, <src-byte>Function:

Description:

Note

Example:

122

Page 123: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

XRL A, RnBytes:

Cycles:Encoding:

Operation:(A) ← (A)← (A)

XRL A, direct

Bytes:Cycles:

Encoding:

Operation:(A) ← (A)← (A)

XRL A, @RiBytes:

Cycles:Encoding:

Operation:(A) ← (A)← (A)

XRL A, #dataBytes:

Cycles:Encoding:

Operation:(A) ← (A)← (A)

XRL direct, ABytes:

Cycles:Encoding:

Operation:(direct) ← (direct)← (direct)

XRL direct, #dataw

Bytes:Cycles:

Encoding:

Operation:(direct) ← (direct)← (direct)

123

Page 124: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Chapter 6. Interrupt System

124

Page 125: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

125

Page 126: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

6.1 Interrupt Structure

������

126

Page 127: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

127

Page 128: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

6.2 Interrupt Register

Symbol Description Address

128

Page 129: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

IE: Interrupt Enable Rsgister

1. Interrupt Enable control Register IE and AUXR

AUXR: Auxiliary register

129

Page 130: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2. Interrupt Priority control Registers IP and IPH

IPH: Interrupt Priority High Register

IP: Interrupt Priority Register

130

Page 131: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

131

Page 132: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

3. TCON register: Timer/Counter Control Register

132

Page 133: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

4. SCON register: Serial Port 1 (UART1) Control Register

133

Page 134: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

5. Register related with LVD interrupt: Power Control register PCON

134

Page 135: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

6. ADC_CONTR: AD Control register

7. Register related with PCA interrupt CCON: PCA Control Register

135

Page 136: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

CMOD: PCA Mode Register

CCAPMn register

136

Page 137: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

9. Interrupt register related with Power down wake-up: WAKE_CLKO

8. Register related with SPI interrupt : SPSTAT SPI State register: SPSTAT

137

Page 138: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

6.3 Interrupt Priorities

Source Priority Within Level

simultaneous requests of the same prionty level.

138

Page 139: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

6.4 How Interrupts Are HandledOPcode

fetch cycle. OPcode fetch cycle

Block conditions :

139

Page 140: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Source Vector Address

6.5 External Interrupts

140

Page 141: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Example:

141

Page 142: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

142

Page 143: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

143

Page 144: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

6.6 Response Time

144

Page 145: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

1. Demostrate External Interrupt 0 triggered by Falling EdgeC program

6.7.1 External Interrupt 0 (INT0) Demo Programs (C and ASM)

6.7 Demo Programs about Interrupts (C and ASM)

145

Page 146: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Assembly program

146

Page 147: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2. Demostrate the Power-Down Mode waked up by Falling Edge of External Interrupt 0

C program

147

Page 148: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Assembly program

148

Page 149: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

1. Demostrate External Interrupt 1 triggered by Falling Edge

C program

6.7.2 External Interrupt 1 (INT1) Demo Programs (C and ASM)

149

Page 150: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Assembly program

150

Page 151: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2. Demostrate the Power-Down Mode waked up by Falling Edge of External Interrupt 1

C program

151

Page 152: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Assembly program

152

Page 153: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

6.7.3 Programs of P3.4/T0 Interrupt(falling edge) used to wake up PD mode

1. C program

153

Page 154: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2. Assembly program

154

Page 155: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

6.7.4 Programs of P3.5/T1 Interrupt(falling edge) used to wake up PD mode

1. C program

155

Page 156: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2. Assembly program

156

Page 157: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

6.7.5 Program of P3.0/RxD Interrupt(falling edge) used to wake up PD mode

1. C program

157

Page 158: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2. Assembly program

158

Page 159: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

159

Page 160: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

6.7.6 Program of PCA Interrupt used to wake up Power Down mode

1. C program

160

Page 161: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

161

Page 162: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Assembly program

162

Page 163: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

163

Page 164: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Chapter 7. Timer/Counter 0/1

Symbol Description Address

7.1 Special Function Registers about Timer/Counter

164

Page 165: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

1. TCON register: Timer/Counter Control Register

165

Page 166: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2. TMOD register: Timer/Counter Mode Register

M1 M0 Operating Mode

M1 M0 Operating Mode

166

Page 167: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

3. AUXR: Auxiliary register

4. WAKE_CLKO: CLK_Output Power down Wake-up control register

167

Page 168: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Mode 0

7.2 Timer/Counter 0 Mode of Operation (Compatible with traditional 8051 MCU)

7.2.1 Mode 0 (13-bit Timer/Counter)

168

Page 169: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

C Program:

7.2.2 Mode 1 (16-bit Timer/Counter) and Demo Programs (C and ASM)

169

Page 170: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

170

Page 171: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Assembly Program:

171

Page 172: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

172

Page 173: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

(SYSclk) / (256 – TH0) / 2, when AUXR.7 / T0x12=1(SYSclk / 12) / (256 – TH0) / 2 , when AUXR.7 / T0x12=0

T0_Pin_CLK / (256-TH0) / 2

7.2.3 Mode 2 (8-bit Auto-Reload Mode) and Demo Programs (C and ASM)

173

Page 174: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

1. C program

174

Page 175: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2. Assembly program

175

Page 176: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

7.2.4 Mode 3 (Two 8-bit Timers/Couters)

176

Page 177: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

7.3 Timer/Counter 1 Mode of Operation

7.3.1 Mode 0 (13-bit Timer/Counter)

177

Page 178: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

7.3.2 Mode 1 (16-bit Timer/Counter) and Demo Programs (C and ASM)

1. C Program

178

Page 179: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

179

Page 180: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2. Assembly Program

180

Page 181: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

181

Page 182: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

(SYSclk) / (256 – TH1) / 2, when AUXR.6 / T0x12=1(SYSclk / 12) / (256 – TH1) / 2 , when AUXR.6 / T0x12=0

T1_Pin_CLK / (256-TH1) / 2

7.3.3 Mode 2 (8-bit Auto-Reload Mode) and Demo Programs (C and ASM)

182

Page 183: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

1. C program

183

Page 184: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2. Assembly program

184

Page 185: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

7.4 Programmable Clock Output and Demo Programs (C and ASM)

Symbol Description Address

1. AUXR: Auxiliary register

185

Page 186: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2. WAKE_CLKO: CLK_Output Power down Wake-up control register

186

Page 187: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

7.4.1 Timer 0 Programmable Clock-out on P1.0 and Demo Program(C and ASM)

(SYSclk) / (256 – TH0) / 2, when AUXR.7 / T0x12=1(SYSclk / 12) / (256 – TH0) / 2 , when AUXR.7 / T0x12=0

T0_Pin_CLK / (256-TH0) / 2

1. C Program:

187

Page 188: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2. Assembly Program:

188

Page 189: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

189

Page 190: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

7.4.2 Timer 1 Programmable Clock-out on P1.1 and Demo Program(C and ASM)

(SYSclk) / (256 – TH1) / 2, when AUXR.6 / T0x12=1(SYSclk / 12) / (256 – TH1) / 2 , when AUXR.6 / T0x12=0

T1_Pin_CLK / (256-TH1) / 2

1. C Program:

190

Page 191: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

191

Page 192: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2. Assembly Program:

192

Page 193: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

7.5 Application note for Timer in practice

193

Page 194: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Chapter 8. UART with Enhanced Function

8.1 Special Function Registers about UART

Symbol Description Address

194

Page 195: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

1. Serial Port 1 (UART1) Control Register: SCON and PCON

SCON: Serial port Control Register

PCON: Power Control register

195

Page 196: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2. SBUF: Serial port 1 Data Buffer register

3. AUXR: Auxiliary register

4. Slave Address Control registers SADEN and SADDR

196

Page 197: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

5. Power down wake-up register: WAKE_CLKO

6. Registers related with UART1 interrupt : IE, IP and IPH

IPH: Interrupt Priority High Register

IP: Interrupt Priority Register

197

Page 198: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

8.2.1 Mode 0: 8-Bit Shift Register

8.2 UART1 Operation Modes

198

Page 199: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

INTERNAL BUS

SBUF

ZERO DETECTOR

TX CONTROL

RX CONTROL

INPUT SHIFT REG.

SBUF

INTERNAL BUS

SHIFTCLOCK

Serial Port Mode 0

199

Page 200: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

8.2.2 Mode 1: 8-Bit UART with Variable Baud Rate

200

Page 201: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

INTERNAL BUS

SBUF

ZERO DETECTOR

TX CONTROL

RX CONTROL

INPUT SHIFT REG.(9 BITS)

SBUF

INTERNAL BUS

÷16

÷16

1-TO-0TRANSITIONDETECTOR

BITDETECTOR

÷2

Serial Port Mode 1

201

Page 202: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

8.2.3 Mode 2: 9-Bit UART with Fixed Baud Rate

202

Page 203: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

INTERNAL BUS

SBUF

ZERO DETECTOR

TX CONTROL

RX CONTROL

INPUT SHIFT REG.(9 BITS)

SBUF

INTERNAL BUS

÷16

÷16

1-TO-0TRANSITIONDETECTOR

BITDETECTOR

÷2

Serial Port Mode 2203

Page 204: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

8.2.4 Mode 3: 9-Bit UART with Variable Baud Rate

204

Page 205: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

INTERNAL BUS

SBUF

ZERO DETECTOR

TX CONTROL

RX CONTROL

INPUT SHIFT REG.(9 BITS)

SBUF

INTERNAL BUS

÷16

÷16

1-TO-0TRANSITIONDETECTOR

BITDETECTOR

÷2

Serial Port Mode 3205

Page 206: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

8.3 Frame Error Detection

8.4 Multiprocessor Communications

206

Page 207: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

8.5 Automatic Address Recognition

207

Page 208: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Example:

Solution:

208

Page 209: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Baud Rate fOSC SMODTimer 1

C/T Mode ReloadValue

Timer 1 Generated Commonly Used Baud Rates

8.6 Buad Rates

209

Page 210: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

8.7 Demo Programs about UART (C and ASM)

1. C program:

210

Page 211: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

211

Page 212: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

212

Page 213: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2. Assembly program:

213

Page 214: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

214

Page 215: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

215

Page 216: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Chapter 9. Analog to Digital Converter

:

9.1 A/D Converter Structure

216

Page 217: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

217

Page 218: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

9.2 Registers for ADC

1. P1 Analog Function Configure register: P1M0 and P1M1

[

Sink Current up to 20mA , pull-up Current is 230μA ,

218

Page 219: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2. ADC control register: ADC_CONTR

Note : The corresponding bits in P1ASF should be configured correctly before starting A/D conversion. The sepecific P1ASF bits should be set corresponding with the desired channels.

219

Page 220: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

3. ADC result register: ADC_DATA and ADC_LOW2

4. Registers related with UART1 interrupt : IE, AUXR, IP and IPH

AUXR: Auxiliary register

220

Page 221: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

9.3 Application Circuit of A/D Converter

IPH: Interrupt Priority High Register

IP: Interrupt Priority Register

221

Page 222: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

9.4 ADC Application Circuit for Key Scan

ΩΩΩΩ520Ω

Ω

Ω

Ω

Ω Ω Ω Ω Ω Ω Ω Ω Ω

222

Page 223: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

9.5 A/D reference voltage source

223

Page 224: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

9.6 Program using interrupts to demostrate A/D Conversion

1. C language code listing:

224

Page 225: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

225

Page 226: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

226

Page 227: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2. Assembly language code listing:

227

Page 228: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

228

Page 229: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

229

Page 230: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

9.7 Program using polling to demostrate A/D Conversion

1. C language code listing:

230

Page 231: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

231

Page 232: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

232

Page 233: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2. Assembly language code listing:

233

Page 234: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

234

Page 235: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

235

Page 236: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Chapter 10. Programmable Counter Array(PCA)

10.1 SFRs related with PCA

236

Page 237: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

1. PCA operation mode register: CMOD

237

Page 238: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2. PCA control register : CCON

238

Page 239: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

3. PCA capture/campare register CCAPM0, CCAPM1, CCAPM2 and CCAPM3

Capture/Compare register of PCA module 0 : CCAPM0

239

Page 240: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Capture/Compare register of PCA module 1 : CCAPM1

Capture/Compare register of PCA module 2 : CCAPM2

240

Page 241: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Capture/Compare register of PCA module 3 : CCAPM3

241

Page 242: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

4. PCA 16-bit Counter — low 8-bit CL and high 8-bit CH

5. PCA Capture/Compare register — CCAPnL and CCAPnH

6. PWM registers of PCA modules : PCA_PWM0, PCA_PWM1, PCA_PWM2 and PCA_PWM3

242

Page 243: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

10.2 PCA/PWM Structure

243

Page 244: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

244

Page 245: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

10.3 PCA Modules Operation Mode

10.3.1 PCA Capture Mode

,

245

Page 246: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

10.3.2 16-bit Software Timer Mode

246

Page 247: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

10.3.3 High Speed Output Mode

247

Page 248: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

10.3.4 Pulse Width Modulator Mode (PWM mode)

248

Page 249: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

10.4 Programs for PCA module extended external interrupt (C and ASM)

1. C code listing:

249

Page 250: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

250

Page 251: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Assembly code listing:

251

Page 252: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

252

Page 253: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

10.5 Demo Programs for PCA module acted as 16-bit Timer (C and ASM)

1. C code listing:

253

Page 254: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

254

Page 255: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Assembly code listing:

255

Page 256: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

256

Page 257: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

10.6 Programs for PCA module as 16-bit High Speed Output(C and ASM)

1. C code listing:

257

Page 258: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

258

Page 259: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Assembly code listing:

259

Page 260: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

260

Page 261: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

10.7 Demo Programs for PCA module as PWM Output (C and ASM)

1. C code listing:

261

Page 262: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

262

Page 263: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2. Assembly code listing:

263

Page 264: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

264

Page 265: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

10.8 Demo Program for PCA clock base on Timer 1 overflow rate

265

Page 266: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

266

Page 267: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

267

Page 268: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

268

Page 269: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

10.9 Using PWM achieve D/A Conversion function reference circuit

269

Page 270: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Chapter 11. Serial Peripheral Interface (SPI)

1. SPI Control register: SPCTL

11.1 Special Function Registers related with SPI

270

Page 271: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2. SPI State register: SPSTAT

3. SPI Data register : SPDAT

271

Page 272: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

5. Registers related with SPI interrupt : IE, AUXR, IP and IPH

AUXR: Auxiliary register

IPH: Interrupt Priority High Register

IP: Interrupt Priority Register

272

Page 273: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

11.2 SPI Structure

273

Page 274: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Table: SPI master and slave selection

SPEN SSIG SS(P1.4) MSTR Mode MISO

(P1.6)MOSI(P1.5)

SPICLK(P1.7) Remark

11.3 SPI Data Communication11.3.1 SPI Configuration

274

Page 275: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

11.3.2 SPI Data Communication Modes

275

Page 276: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

276

Page 277: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

11.3.3 SPI Data Modes

277

Page 278: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

*When P4SPI bit in AUXR1 register is set, the function of SPI is redirected from P3[7:4] to P4[7:4] pin by pin.

278

Page 279: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

11.4 SPI Function Demo Programs (Single Master — Single Slave)11.4.1 SPI Function Demo Programs using Interrupts (C and ASM)The following program,written in C language and assembly language, tests SPI function and applys to SPI single master single slave configuration.

1. C code listing:

279

Page 280: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

280

Page 281: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

281

Page 282: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2. Assemly code listing:

282

Page 283: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

283

Page 284: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

284

Page 285: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

11.4.2 SPI Function Demo Programs using Polling (C and ASM)

1. C code listing:

285

Page 286: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

286

Page 287: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

287

Page 288: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2. Assemly code listing:

288

Page 289: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

289

Page 290: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

290

Page 291: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

11.5 SPI Function Demo Programs (Each other as the Master-Slave)11.5.1 SPI Function Demo Programs using Interrupts (C and ASM)

1. C code listing:

291

Page 292: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

292

Page 293: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

293

Page 294: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

. Assembly code listing:

294

Page 295: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

295

Page 296: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

296

Page 297: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

11.5.2 SPI Function Demo Programs using Polling

1. C code listing:

297

Page 298: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

298

Page 299: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

299

Page 300: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2. Assemly code listing:

300

Page 301: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

301

Page 302: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

302

Page 303: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Chapter 12. IAP / EEPROM

303

Page 304: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Symbol Description Address

12.1 IAP / EEPROM Special Function Registers

1. ISP/IAP Flash Data Register : ISP_DATA

2. ISP/IAP Flash Address Registers : ISP_ADDRH and ISP_ADDRL

304

Page 305: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

3. ISP/IAP Flash Command Register : ISP_CMD

4. ISP/IAP Flash Command Trigger Register : ISP_TRIG

5. ISP/IAP Control Register : ISP_CONTR

305

Page 306: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

6. When the operation voltage is too low, EEPROM / IAP function should be disabled

306

Page 307: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

12.2 STC12C5410AD series Internal EEPROM Allocation Table

Type EEPROM(Byte)

Sector Numbers

Begin_SectorBegin_Address

End_SectorEnd_Address

307

Page 308: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

308

Page 309: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

12.3 IAP/EEPROM Assembly Language Program Introduction

309

Page 310: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

310

Page 311: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

311

Page 312: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

12.4 EEPROM Demo Program (C and ASM)

1. C Code Listing

312

Page 313: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

313

Page 314: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

314

Page 315: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

315

Page 316: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

2. Assembly Code Listing

316

Page 317: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

317

Page 318: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

318

Page 319: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

319

Page 320: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Chapter 13. STC12 series Development/Programming Tool

13.1 In-System-Programming (ISP) principle

320

Page 321: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

13.2 STC12C5410AD series Typical Application Circuit for ISP

10μF

0.1μF

0.1μF

0.1μF

10 μF

10μF0.1μF

321

Page 322: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

322

Page 323: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

13.3 PC side application usage

323

Page 324: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

324

Page 325: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

13.4 Compiler / Assembler Programmer and Emulator

13.5 Self-Defined ISP download Demo

325

Page 326: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

326

Page 327: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

327

Page 328: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

328

Page 329: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Appendix A: Assembly Language ProgrammingINTRODUCTION

329

Page 330: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

ASSEMBLER OPERATION

Legend

Pass one

Pass two

330

Page 331: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

ASSEMBLY LANGUAGE PROGRAM FORMAT

Label Field

331

Page 332: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Mnemonic Field

Operand Field

Comment Field

Special Assembler Symbols

Indirect Address

Immediate Data

332

Page 333: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Data Address

Bit Address

Code Address

333

Page 334: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Generic Jumps and Calls

ASSEMBLE-TIME EXPRESSION EVALUATION

334

Page 335: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Number Bases

Charater Strings

Arithmetic Operators

Logical Operators

335

Page 336: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Special Operators

Relational Operators

336

Page 337: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Expression Examples

Expression Result

Operator Precedence

Expression Value

337

Page 338: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

ASSEMBLER DIRECTIVES

Assembler State ControlORG (Set Origin)

End

Using

338

Page 339: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Symbol Definition

Segment

EQU (Equate)

Other Symbol Definition Directives

339

Page 340: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Storage Initialization/Reservation

DS (Define Storage)

340

Page 341: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

DBIT

DB (Define Byte)

341

Page 342: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Address Contents

DW (Define Word)

Address Contents

Program Linkage

342

Page 343: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Public

Extrn

Name

343

Page 344: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Segment Selection Directives

RSEG (Relocatable Segment)

Selecting Absolute Segments

ASSEMBLER CONTROLS

344

Page 345: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

LINKER OPERATION

Legend

345

Page 346: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

346

Page 347: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

MACROS

347

Page 348: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Parameter Passing

348

Page 349: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Local Labels

Repeat Operations

349

Page 350: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Control Flow Operations

350

Page 351: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Appendix B: 8051 C ProgrammingADVANTAGES AND DISADVANTAGES OF 8051 C

351

Page 352: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Complier

Assembler

8051 C COMPILERS

and programs have been compiled and tested with Keil's μ Vision 2 IDE by Keil Software, an integrated 8051

DATA TYPES

bit

352

Page 353: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

bit

sbitsfrsfr16

sbit

sbitsbit

sbit bitbit

sbit sfr sbit sfr

sfrsbit

sfr

sfr

sfr16 sfr sfr sfr16

353

Page 354: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

sfr16sbit sfr sfr16

354

Page 355: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

MEMORY TYPES AND MODELS

code

data

bdataxdata

dataidata

pdata xdatapdata xdata

memory models

355

Page 356: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

small

compactlarge

ARRAYS

STRUCTURES

356

Page 357: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

POINTERS

357

Page 358: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

A Pointer's Memory Type

xdataxdata

xdata

Typed Pointers

xdatadata

data data memory type xdata

Untyped Pointers

358

Page 359: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

FUNCTIONS

functions

Parameter Passing

359

Page 360: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Return Values

360

Page 361: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Appendix C: STC12C5410AD series Electrical Characteristics

361

Page 362: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

362

Page 363: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Appendix D: Program for indirect addressing inner 256B RAM

363

Page 364: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Appendix E: Using Serial port expand I/O interface

364

Page 365: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

365

Page 366: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Appendix F: Use STC MCU common I/O driving LCD Display

10μF

366

Page 367: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

367

Page 368: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

368

Page 369: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

369

Page 370: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

370

Page 371: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

371

Page 372: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

372

Page 373: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Appendix G: LED driven by an I/O port and Key Scan

373

Page 374: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Appendix H: How to reduce the Length of Code through Keil C

374

Page 375: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Appendix I: Notes of STC12C5410AD series Application

375

Page 376: STC12C5410AD series MCU STC12LE5410AD series MCU Data …stcmicro.com/datasheet/STC12C5410AD.pdf · STC12C5410AD series MCU STC12LE5410AD series MCU Data Sheet 67& 0&8 /LPLWHG 8SGDWH

Appendix J: Notes of STC12 series Replaced Traditional 8051

376