
- •Введение
- •Архитектура микроконтроллера.
- •1.1 Структурная организация микроконтроллера i8051.
- •Назначение выводов микроконтроллера 8051.
- •1.2 Память
- •Память программ
- •Масочная память
- •Однократно программируемая память
- •Репрограммируемая память
- •Память с электрическим стиранием
- •Флэш-память
- •Память программ микроконтроллера 8051 (пзу).
- •Память данных
- •Статическая память
- •Память с электрическим стиранием
- •Память данных микроконтроллера 8051 (озу).
- •Специализированные ячейки флэш-памяти
- •Работа с внешней памятью микроконтроллера 8051.
- •1.3 Процессорное ядро
- •Регистр инструкций
- •Программный счетчик
- •Арифметико-логическое устройство
- •Арифметико-логическое устройство микроконтроллера 8051.
- •Регистры общего назначения
- •Регистр состояния
- •Регистр флагов (psw) микроконтроллера 8051.
- •Регистры ввода/вывода, специальные регистры.
- •1.4 Тактовый генератор
- •1.5 Система сброса
- •Источники сброса
- •1.6 Система прерываний
- •Алгоритм обработки прерываний
- •Система прерываний микроконтроллера 8051.
- •Регистр масок прерывания (ie).
- •Регистр приоритетов прерываний (ip).
- •Выполнение подпрограммы прерывания.
- •Вектора прерываний
- •1.7 Порты ввода/вывода организация ввода/вывода
- •Алгоритмы обмена данными
- •Асинхронный обмен
- •Симплексный обмен
- •Устройство портов.
- •Особенности электрических характеристик портов.
- •1.8 Таймеры-счетчики.
- •Таймеры-счетчики микроконтроллеров семейства 8051.
- •1.9 Последовательный порт микроконтроллера 8051.
- •Регистр управления/статуса приемопередатчика scon.
- •Функциональное назначение бит регистра управления/статуса приемопередатчика scon.
- •Скорость приема/передачи информации через последовательный порт.
- •Регистр управления мощностью pcon.
- •1.10 Режимы работы микроконтроллера 8051 с пониженным энергопотреблением.
- •Режим хх.
- •Режим внп.
- •1.11 Устройства ввода/вывода дискретных сигналов
- •1.12 Устройства ввода/вывода аналоговых сигналов
- •Интегрирующий преобразователь
- •Сигма-дельта преобразователь
- •1.13 Устройства обмена данными с другими микроконтроллерами
- •2. Программирование микроконтроллера
- •2.1 Система команд Мнемонические обозначения
- •Типы команд
- •Типы операндов
- •Группы команд.
- •Oбозначения, используемые при описании команд.
- •Команды пересылки данных микроконтроллера 8051.
- •Команды арифметических операций 8051.
- •Команды логических операций микроконтроллера 8051.
- •Команды операций над битами микроконтроллера 8051.
- •Команды передачи управления микроконтроллера 8051.
- •2.2 Язык ассемблера
- •Операнды
- •Операторы
- •Директивы ассемблера.
- •Командная строка
- •2.3 Особенности программирования микроконтроллеров общие особенности.
- •Типы инструментальных средств разработки и отладки программ для микроконтроллеров.
- •Внутрисхемные эмуляторы.
- •Классификация внутрисхемных эмуляторов.
- •Функциональные возможности внутрисхемных эмуляторов.
- •Достоинства и недостатки внутрисхемных эмуляторов.
- •Программные симуляторы.
- •Платы развития.
- •Отладочные мониторы.
- •Эмуляторы пзу.
- •Типичные функциональные модули средств разработки и отладки.
- •Отладчик.
- •Узел эмуляции микроконтроллера.
- •Эмуляционная память.
- •Подсистема точек останова.
- •Процессор точек останова.
- •Трассировщик.
- •Профилировщик.
- •Интегрированная среда разработки.
Память с электрическим стиранием
Память данных типа EEPROM может быть включена в общее пространство памяти данных или организована в виде отдельного массива с возможностью считывания и записи каждого отдельного байта. В отличие от SRAM она допускает только ограниченное (порядка 100000) циклов перезаписи. Время записи в EEPROM значительно больше, чем время записи в статическую память.
Содержимое EEPROM может быть разрушено при снижении питания в процессе записи. Разрушение данных EEPROM, происходит по двум причинам. Во-первых, для операций записи необходимо, чтобы напряжение питания было не ниже определенного уровня, гарантирующего правильное их выполнение. Во-вторых, само ядро микроконтроллера при слишком низком напряжении питания, может неправильно выполнять команды. Защита EEPROM от разрушения при снижении питания в контроллерах решается как программными, так и аппаратными средствами.
Память данных микроконтроллера 8051 (озу).
Объем расположенной на кристалле памяти данных—128 байт. Объем внешней памяти данных может достигать 64 Кбайт. Первые 32 байта организованы в четыре банка регистров общего назначения, обозначаемых соответственно банк 0 — банк 3. Каждый из них состоит из восьми регистров R0 — R7. В любой момент программе доступен только один банк регистров, номер которого содержится в третьем и четвертом битах слова состояния программы PSW (см. ниже).
Оставшееся адресное пространство может конфигурироваться разработчиком по своему усмотрению: в нем располагаются стек, системные и пользовательские области данных. Обращение к ячейкам памяти данных возможно двумя способами. Первый способ — прямая адресация ячейки памяти. В этом случае адрес ячейки является операндом соответствующей команды. Второй способ — косвенная адресация с помощью регистров R0 или R1: перед выполнением соответствующей команды в один из них должен быть занесен адрес ячейки, к которой необходимо обратиться.
Для обращения к внешней памяти данных используется только косвенная адресация с помощью регистров R0 и R1 или с помощью 16-разрядного регистра-указателя DPTR. Он относится к группе регистров специальных функций, и с его помощью можно адресовать все 64 Кбайта внешней памяти.
Часть памяти данных представляет собой так называемую битовую область, в ней имеется возможность при помощи специальных битовых команд адресоваться к каждому разряду ячеек памяти. Адрес прямо адресуемых битов может быть записан либо в виде(Адрес Байта ).(Разряд), например выражение 21.3 означает третий разряд ячейки памяти с адресом 21H, либо в виде абсолютного битового адреса. Соответствие этих двух способов адресации можно определить по таблице.
Адрес байта |
Адреса битов по разрядам |
|||||||
Adr |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
2FH |
7F |
7E |
7D |
7C |
7B |
7A |
79 |
78 |
2EH |
77 |
76 |
75 |
74 |
73 |
72 |
71 |
70 |
2DH |
6F |
6E |
6D |
6C |
6B |
6A |
69 |
68 |
2CH |
67 |
66 |
65 |
64 |
63 |
62 |
61 |
60 |
2BH |
5F |
5E |
5D |
5C |
5B |
5A |
59 |
58 |
2AH |
57 |
56 |
55 |
54 |
53 |
52 |
51 |
50 |
29H |
4F |
4E |
4D |
4C |
4B |
4A |
49 |
48 |
28H |
47 |
46 |
45 |
44 |
43 |
42 |
41 |
40 |
27H |
3F |
3E |
3D |
3C |
3B |
3A |
39 |
38 |
26H |
37 |
36 |
35 |
34 |
33 |
32 |
31 |
30 |
25H |
2F |
2E |
2D |
2C |
2B |
2A |
29 |
28 |
24H |
27 |
26 |
25 |
24 |
23 |
22 |
21 |
20 |
23H |
1F |
1E |
1D |
1C |
1B |
1A |
19 |
18 |
22H |
17 |
16 |
15 |
14 |
13 |
12 |
11 |
10 |
21H |
0F |
0E |
0D |
0C |
0B |
0A |
09 |
08 |
20H |
07 |
06 |
05 |
04 |
03 |
02 |
01 |
00 |
Таблица 1.1 Адреса битовых областей памяти микроконтроллера 8051
ПРИМЕЧАНИЕ. Адрес прямо адресуемых битов может быть записан либо в виде выражения (Адрес Байта ).(Разряд), например выражение 21.3 означает адрес третьего разряда ячейки памяти с адресом 21H, либо в виде абсолютного битового адреса, который для данного бита равен (см. таблицу) 0B.