Программирование микроконтроллеров MCS-51



             

Программная модель микроконтроллера 8051


 0FFFH

 23H ¬ TI, RI

 1BH ¬ T/C1

 13H ¬ INT1

 0BH ¬ T/C0

 03H ¬ INT0

 00H

15                            8

 

 PC

7                              0

Рис.1. Структура резидентной памяти программ микроконтроллера 8051

 

         В предыдущей главе было отмечено, что ядром семейства MCS-51 является микроконтроллер 8051 (отечественный аналог КР1816ВЕ51). В связи с этим представляется целесообразным рассмотрение особенностей программирования указанного семейства на примере именно этого микроконтроллера.

         Программная модель МК 8051 содержит резидентную память данных, регистры специальных функций, резидентную память программ и программный счетчик PC.

         Резидентная память программ (рис.1) имеет байтовую организацию и доступна только по чтению, при этом ее ячейки (4 Кбайт) адресуются с использованием двенадцати младших разрядов PC. Резидентная память программ может быть дополнена внешней памятью. В этом случае общий максимально допустимый объем памяти программ составит 64 К. Младшие адреса резидентной памяти программ отведены под обработку внешних прерываний

,
, прерываний от таймеров/счетчиков T/C0, T/C1 и прерывания от последовательного порта. В случае возникновения какого-либо из указанных прерываний происходит обращение к соответствующей ячейке резидентной памяти программ (например, при возникновении прерывания
 в PC записывается код 0003H).

         Резидентная память данных (рис.2) состоит из 128-ми 8-разрядных ячеек с адресами 00H-7FH и может быть дополнена внешней памятью данных емкостью до 64 К. При этом пространства резидентной и внешней

Резидентная память данных

Регистры специальных функций

 7FH

F7

F6

F5

F4

F3

F2

F1

F0

 0F0H

E7

E6

E5

E4

E3

E2

E1

E0

 0E0H

 30H

D7

D6

D5

D4

D3

D2

D1

D0

 0D0H

7F

7E

7D

7C

7B

7A

79

78

 2FH

-

-

-

BC

BB

BA

B9

B8

 0B8H

77

76

75

74

73

72

71

70

 2EH

B7

B6

B5

B4

B3

B2

B1

B0

 0B0H

6F

6E

6D

6C

6B

6A

69

68

 2DH

AF

-

-

AC

AB

AA

A9

A8

 0A8H

67

66

65

64

63

62

61

60

 2CH

A7

A6

A5

A4

A3

A2

A1

A0

 0A0H

5F

5E

5D

5C

5B

5A

59

58

 2BH

SBUF

 99H

57

56

55

54

53

52

51

50

 2AH

9F

9E

9D

9C

9B

9A

99

98

 98H

4F

4E

4D

4C

4B

4A

49

48

 29H

97

96

95

94

93

92

91

90

 90H

47

46

45

44

43

42

41

40

 28H

TH1

 8DH

3F

3E

3D

3C

3B

3A

39

38

 27H

TH0

 8CH

37

36

35

34

33

32

31

30

 26H

TL1

 8BH

2F

2E

2D

2C

2B

2A

29

28

 25H

TL0

 8AH

27

26

25

24

23

22

21

20

 24H

TMOD

 89H

1F

1E

1D

1C

1B

1A

19

18

 23H

8F

8E

8D

8C

8B

8A

89

88

 88H

17

16

15

14

13

12

11

10

 22H

PCON

 87H

0F

0E

0D

0C

0B

0A

09

08

 21H

DPH

 83H

07

06

05

04

03

02

01

00

 20H

DPL

 82H

R7

 1FH

SP

 81H

87

86

85

84

83

82

81

80

 80H

R0

 18H

 

R7

 17H

 

 

R0

 10H

 

R7

 0FH

 

 

R0

 08H

Рис.2. Структура резидентной памяти данных и регистров специальных функций микроконтроллера 8051

 

R7

 07H

 

 

R0

 00H

 




Содержание  Назад  Вперед