Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Презентация 8051.pptx
Скачиваний:
2
Добавлен:
26.06.2025
Размер:
2.65 Mб
Скачать

ПОСЛЕДОВАТЕЛЬНОСТИ ВЫБОРКИ КОМАНД В MCS-51:

А – КОМАНДА 1 БАЙТ / 1 ЦИКЛ; Б – КОМАНДА 2 БАЙТА / 1 ЦИКЛ; В – КОМАНДА 1 БАЙТ / 2 ЦИКЛА; Г – КОМАНДА 1 БАЙТ/ 2 ЦИКЛА

S1

 

S2

 

S3

 

S4

 

S5

 

S6

 

S1

 

S2

 

S3

 

 

S4

 

S5

 

S6

 

 

S1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

P1

P2

 

P1

P2

 

P1

P2

 

P1

P2

 

P1

P2

 

P1

P2

P1

P2

 

P1

P2

 

P1

P2

 

P1

P2

 

P1

P2

 

P1

P2

 

P1

P2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

XTAL1

ALE

 

 

 

 

Чтение кода операции

 

(КОП) Чтение следующего КОП (отбрасывается)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

а)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Чтение следующего КОП снова

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Чтение КОП

 

 

Чтение второго байта команды

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

б)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Чтение следующего КОП

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

в)

 

 

Чтение КОП

 

 

Чтение следующего КОП (отбрасывается)

 

 

 

 

 

 

 

Чтение следующего КОП снова

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

г)

 

 

Чтение КОП

Чтение

 

следующего КОП (отбрасывается) Нет чтения КОП

Чтение следующего КОП снова

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Нет ALE

Обращение к внешней памяти данных

РАСПРЕДЕЛЕНИЕ АДРЕСНОГО ПРОСТРАНСТВА RDM

FF

ВЕРХНЯЯ

РЕГИСТРЫ

 

ОБЛАСТЬ

СПЕЦИАЛЬНЫХ

 

RDM

ФУНКЦИЙ

 

128 БАЙТ

128 БАЙТ

 

ТОЛЬКО

ТОЛЬКО

80

КОСВЕННАЯ

ПРЯМАЯ

АДРЕСАЦИЯ

АДРЕСАЦИЯ

7F

 

 

НИЖНЯЯ

 

 

ОБЛАСТЬ

 

 

RDM

 

 

128 БАЙТ

 

 

ПРЯМАЯ И

 

00

КОСВЕННАЯ

 

АДРЕСАЦИЯ

 

 

 

 

Адрес

 

 

 

Адреса битов по разрядам

 

 

 

 

 

 

 

 

 

 

 

байта

D7

D6

D5

D4

D3

D2

D1

D0

2F

7F

7E

7D

7C

7B

7A

79

78

2E

77

76

75

74

73

72

71

70

2D

6F

6E

6D

6C

6B

6A

69

68

2C

67

66

65

64

63

62

61

60

2B

5F

5E

5D

5C

5B

5A

59

58

2A

57

56

55

54

53

52

51

50

29

4F

4E

4D

4C

4B

4A

49

48

28

47

46

45

44

43

42

41

40

27

3F

3E

3D

3C

3B

3A

39

38

26

37

36

35

34

33

32

31

30

25

2F

2E

2D

2C

2B

2A

29

28

24

27

26

25

24

23

22

21

20

23

1F

1E

1D

1C

1B

1A

19

18

22

17

16

15

14

13

12

11

10

21

0F

0E

0D

0C

0B

0A

09

08

20

07

06

05

04

03

02

01

00

1F

 

 

 

 

 

 

 

 

 

 

 

Банк 3 РОН

 

 

 

18

 

 

 

 

 

 

 

 

17

 

 

 

 

 

 

 

 

 

 

 

Банк 2 РОН

 

 

 

10

 

 

 

 

 

 

 

 

0F

 

 

 

 

 

 

 

 

 

 

 

Банк 1 РОН

 

 

 

08

 

 

 

 

 

 

 

 

07

 

 

 

 

 

 

 

 

 

 

 

Банк 0 РОН

 

 

 

00

 

 

 

 

 

 

 

 

АДРЕСА

БИТОВЫХ

ОБЛАСТЕЙ ПАМЯТИ И РОН

Адрес

Символ

 

 

Наименование

 

E0

*ACC

Аккумулятор (Accumulator)

 

F0

*B

Регистр расширитель аккумулятора (Multiplication Register)

 

D0

*PSW

Слово состояния программы (Program Status Word)

 

80

*P0

Порт 0 (SFR P0)

 

 

90

*P1

Порт 1 (SFR P1)

 

 

A0

*P2

Порт 2 (SFR P2)

 

 

B0

*P3

Порт 3 (SFR P3)

 

 

81

SP

Регистр указатель стека

 

83

DPH

Старший байт регистра указателя данных DPTR (Data Pointer High)

 

 

 

 

82

DPL

Младший байт регистра указателя данных DPTR (Data Pointer Low)

 

 

 

 

8C

TH0

Старший байт таймера 0 (Timer High)

 

8A

TL0

Младший байт таймера 0 (Timer Low)

 

8D

TH1

Старший байт таймера 1 (Timer High)

 

8B

TL1

Младший байт таймера 1 (Timer Low)

 

89

TMOD

Регистр

режимов

таймеров/счетчиков (Timer/Counter

Mode

Control Register)

 

 

 

 

 

 

88

*TCON

Регистр

управления

статуса таймеров/счетчиков (Timer/Counter

Control Register)

 

 

 

 

 

 

B8

*IP

Регистр

приоритетов прерываний (Interrupt Priority

Control

Register)

 

 

 

 

 

 

 

 

A8

*IE

Регистр маски прерывания (Interrupt Enable Register)

 

87

PCON

Регистр управления мощностью (Power Control Register)

 

98

*SCON

Регистр

управления

приемопередатчиком (Serial Port

Control

Register)

 

 

 

 

 

 

 

 

99

SBUF

Буфер приемопередатчика (Serial Data Buffer)

 

РАЗМЕЩЕНИЕ

РЕГИСТРОВ

СПЕЦИАЛЬНЫХ ФУНКЦИЙ В ПРОСТРАНСТВЕ SFR

КАРТА АДРЕСУЕМЫХ БИТОВ В БЛОКЕ РЕГИСТРОВ СПЕЦИАЛЬНЫХ ФУНКЦИЙ

Адрес

 

 

Адреса битов по разрядам

 

 

Наименование

 

 

 

 

 

 

 

 

байта

D7

D6

D5

D4

D3

D2

D1

D0

регистра

F0

F7

F6

F5

F4

F3

F2

F1

F0

B

 

 

 

 

 

 

 

E0

E7

E6

E5

E4

E3

E2

E1

E0

ACC

 

 

 

 

 

 

 

D0

D7

D6

D5

D4

D3

D2

D1

D0

PSW

 

 

 

 

 

 

 

B8

BC

BB

BA

B9

B8

IP

 

 

 

 

 

 

 

B0

B7

B6

B5

B4

B3

B2

B1

B0

P3

 

 

 

 

 

 

 

A8

AF

AC

AB

AA

A9

A8

IE

 

 

 

 

 

 

 

A0

A7

A6

A5

A4

A3

A2

A1

A0

P2

 

 

 

 

 

 

 

98

9F

9E

9D

9C

9B

9A

99

98

SCON

 

 

 

 

 

 

 

90

97

96

95

94

93

92

91

90

P1

 

 

 

 

 

 

 

88

8F

8E

8D

8C

8B

8A

89

88

TCON

 

 

 

 

 

 

 

80

87

86

85

84

83

82

81

80

P0

ФОРМАТ СЛОВА СОСТОЯНИЯ ПРОГРАММЫ PSW

Символ

Разряд

 

Наименование. Условие формирования

C

PSW.7

Флаг переноса. Устанавливается и сбрасывается аппаратно или программно при

выполнении арифметических и логических операций

 

 

AC

PSW.6

Флаг

вспомогательного

переноса. Устанавливается и сбрасывается только

аппаратно при выполнении команд сложения и вычитания

 

 

F0

PSW.5

Флаг 0. Может быть установлен, сброшен или проверен программой как флаг,

специфицируемый пользователем

RS1

 

PSW.4

Выбор банка регистров. Устанавливается и сбрасывается программно для

RS0

PSW.3

выбора рабочего банка регистров

OV

PSW.2

Флаг

переполнения.

Устанавливается и сбрасывается аппаратно при

выполнении арифметических операций

 

PSW.1

Не используется

 

P

PSW.0

Флаг паритета. Устанавливается и сбрасывается аппаратно в каждом цикле и

фиксирует нечетное/четное число единичных битов в аккумуляторе

 

 

ВЫБОР РАБОЧЕГО БАНКА РЕГИСТРОВ

RS1

RS0

Банк

Границы адресов

0

0

0

00h – 07h

0

1

1

08h – 0Fh

1

0

2

10h – 17h

1

1

3

18h – 1Fh

СХЕМА ВКЛЮЧЕНИЯ ВНЕШНИХ МИКРОСХЕМ

 

 

ПАМЯТИ ПРОГРАММ И ДАННЫХ

 

МК

8

A[7...0] / D[7...0]

8

ШД

P0

 

 

 

 

 

 

DD1

16

A[15...0]

16

ША

 

D RG

 

 

 

 

 

 

 

 

DD2

DD3

 

 

 

 

EPM

EDM

 

ALE

C

 

EROM

ERAM

 

8

A[15...8]

 

A[15...0]

A[15...0]

 

 

DO[7...0]

DIO[7...0]

 

P2

 

 

 

PSEN

 

 

RD

 

 

WR

 

 

 

WR

 

RD

 

 

 

RD

 

FFFF

0000

ОРГАНИЗАЦИЯ ПАМЯТИ ПРОГРАММ

ВНЕШНЯЯ

ПАМЯТЬ

ПРОГРАММ

EPM

EA = 0

ВНУТРЕННЯЯ

ПАМЯТЬ

ПРОГРАММ

ЗАПРЕЩЕНА

FFFF

1000

0FFF

0000

ВНЕШНЯЯ

ПАМЯТЬ

ПРОГРАММ

EPM

EA = 1

ВНУТРЕННЯЯ

ПАМЯТЬ

ПРОГРАММ

RPM

ФОРМИРОВАНИЕ 16-РАЗРЯДНОЙ ШИНЫ АДРЕСА

ALE

P0

A7-А0

команда

A7-А0

 

P2

 

A15-А8

A15-А8

 

ША

 

A15-А0

A15-А0

t

СХЕМА СОВМЕЩЕНИЯ АДРЕСНОГО ПРОСТРАНСТВА EPM И EDM