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 К. Младшие адреса резидентной памяти программ отведены под обработку внешних прерываний
Резидентная память данных (рис.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 |
|
||||||||||||||||||||