- •Содержание
- •Список сокращений
- •Введение
- •Структура микроконтроллера
- •Процессор микроконтроллера
- •Адресное пространство микроконтроллера
- •Подключение erom и eram к микроконтроллеру
- •Периферийные устройства микроконтроллера
- •Параллельные порты ввода-вывода
- •Таймер-счетчик т/с0
- •Таймер-счетчик т/с1
- •Последовательный порт
- •Контроллер прерываний
- •Система команд микроконтроллера
- •Общие сведения о языке Ассемблер для микроконтроллеров стандарта mcs-51 и о программном пакете фирмы 2500 a.D.
- •Синтаксис языка Ассемблер
- •Определители основания системы счисления
- •Макроопределения
- •Сообщения о некоторых ошибках ассемблирования
- •Рекомендуемая процедура инициализации микроконтроллера
- •Типичные применения микроконтроллеров
- •Ввод информации с датчиков
- •Опрос двоичного датчика
- •Ожидание события
- •Ожидание импульсного сигнала
- •Устранение дребезга контактов
- •Подсчет числа импульсов
- •Подсчет числа импульсов за интервал времени между двумя событиями
- •Подсчет числа импульсов за заданный промежуток времени
- •Опрос группы двоичных датчиков
- •Ввод информации с матричной клавиатуры
- •Вывод управляющих сигналов из микроконтроллера
- •Формирование статических сигналов
- •Формирование импульсных сигналов
- •Генерация меандра
- •Формирование сигнала с заданной скважностью
- •Вывод и отображение информации
- •Динамический вывод информации на дисплей из семисегментных индикаторов
- •Реализация функций реального времени
- •Программное формирование временной задержки
- •Формирование временной задержки с использованием таймеров
- •Измерение временных интервалов
- •Преобразование кодов
- •Преобразование унитарного кода в двоичный позиционный
- •Преобразование двоичного позиционного кода в унитарный
- •Преобразование кодов из одной системы счисления в другую
- •Преобразование данных из параллельного кода в последовательный и обратно
- •Цифро-аналоговое преобразование
- •Аналого-цифровое преобразование
- •Метод последовательного приближения
- •Метод двойного интегрирования
- •Операции с памятью
- •Тестирование озу
- •Программа тестирования пзу
- •Обмен данными по шине i2с
- •Общие положения и введение в логику работы шины i2с
- •Пример обмена данными по шине i2c
- •Приём данных по протоколу Centronics
- •Литература
Введение
Однокристальные микроЭВМ (микроконтроллеры) AT89С51 семейства AT89 фирмы ATMEL, программно- и аппаратно-совместимые с микроконтроллерами семейства MCS-51 фирмы Intel (отечественный аналог 1816ВВ51 и 1830АА51), предназначены для использования в качестве встраиваемых управляющих микроЭВМ в приборах и системах различного назначения.
Основным преимуществом микроконтроллеров AT89C51 является использование в них в качестве внутреннего постоянного запоминающего устройства для хранения команд программы и констант (IROM) репрограммируемого постоянного запоминающего устройства с электрическим стиранием записи. При этом существенно упрощается процедура репрограммирования памяти, открывается возможность выполнять запись кодов в постоянную память после установки микроконтроллера в аппаратуру и снижать стоимость микроконтроллера по сравнению с микроконтроллерами со стиранием памяти путем облучения ультрафиолетовым излучением.
Ряд глав и параграфов настоящего издания переработан и дополнен по сравнению с одноименным учебным пособием, вышедшим в 2006 г. Добавлены контрольные вопросы для оценки усвоения материала.
Структура микроконтроллера
Микроконтроллер типа АТ89С51 (далее МК) выпускается в корпусе типа cerDIP40. Условное графическое изображение МК приведено на рисунке 1.1, назначение выводов – в таблице 1.1
Рисунок 1.1 – Условное графическое обозначение микроконтроллера |
Выходы портов в статическом режиме при низком уровне сигнала могут пропускать ток нагрузки величиной до 10 мА, при этом суммарный ток нагрузки для порта Р0 должен быть не более чем 26 мА, а для остальных портов не более чем 15 мА. Суммарный ток нагрузки для всех выходов микроконтроллера должен быть не более чем 71 мА.
В динамическом режиме к выходу порта Р0 могут быть подключены 8 входов TTL, а к выходу портов Р1, Р2, Р3 – по четыре входа TTL.
В состав МК (рисунок 1.2) входят:
– процессор (CPU);
– внутреннее постоянное запоминающее устройство (IROM);
– внутреннее оперативное запоминающее устройство (IRAM);
– группа периферийных устройств.
К микроконтроллеру могут быть подключены внешнее постоянное запоминающее устройство (EROM) и внешнее оперативное запоминающее устройство (ERAM).
Таблица 1.1 – Назначение выводов микроконтроллера
Номер вывода |
Обозначение |
Описание |
|
40 |
VCC |
Напряжение питания +5 В |
|
20 |
GND |
Общий провод |
|
18,19 |
XTAL1, XTAL2 |
Вход и выход для подключения кварцевого резонатора |
|
9 |
RST |
Вход для приема сигнала сброса |
|
39–32 |
P0.0–P0.7 |
Параллельный порт ввода-вывода P0 |
|
1–8 |
P1.0–Р1.7 |
Параллельный порт ввода-вывода P1 |
|
21–28 |
P2.0–P2.7 |
Параллельный порт ввода-вывода P2 |
|
10 |
P3.0(RXD) |
Вход синхронно-ассинхронного приёмопередатчика |
Параллельный порт ввода-вывода РЗ |
11 |
P3.1(TXD) |
Выход синхронно-ассинхронного приёмопередатчика |
|
12 |
P3.2( |
Вход запроса прерываний от внешнего источника 0 |
|
13 |
P3.3( |
Вход запроса прерываний от внешнего источника 1 |
|
14 |
P3.4(T0) |
Вход таймер-счётчика 0 |
|
15 |
P3.5(T1) |
Вход таймер-счётчика 1 |
|
16 |
P3.6( |
Вход стробирования записи данных во внешнюю память |
|
17 |
Р3.7( |
Вход стробирования чтения данных из внешней памяти |
|
30 |
ALE |
Выход для выдачи сигнала управления записью во внешний регистр адреса |
|
29 |
PSEN |
Выход для выдачи сигнала управления чтением из внешней постоянной памяти (EROM) |
|
31 |
ЕА |
Вход для управления выбором обращения к IROM и EROM |
|
Рисунок 1.2 – Упрощенная структурная схема микроконтроллера |

)
)
)
)