- •1 Расшифровка и анализ задания
- •1.2 Реакция системы на внешние события
- •2.1.1 Организация архитектуры к1816ве51.
- •2.1.2 Набор регистров мк51
- •2.1.3 Организация памяти мк51
- •2.1.5 Последовательный канал связи
- •2.1.6 Таймеры/счетчики
- •2.1.7 Система прерываний
- •2.1.8 Система команд мк ве51
- •2.2 Функциональное описание ве51
- •2.2.1 Интерфейс расширения
- •2.2.2 Работа таймеров/счетчиков
- •2.2.3 Работа последовательного канала связи
- •2.2.4 Работа с внешней памятью программ и памятью данных
- •2.2.5 Работа с портами
- •3 Разработка подсистемы памяти
- •3.1 Описание микросхемы кр537ру8
- •3.3 Подключение озу и пзу к системной шине
- •4 Разработка подсистем ввода/вывода, прерываний и пдп
- •4.1 Аналогово-цифровой преобразователь
- •4.2 Цифроаналоговый преобразователь
- •4.3 Контроллер прямого доступа к памяти кр580вт57
- •4.4 Многорежимный буферный регистр к589ир12
- •4.5 Контроллер клавиатуры/дисплея кр580вд79
- •4.5.1 Общие сведения о мс кр580вд79
- •4.5.2 Управление ккд с помощью сигналов на внешних выводах
- •4.5.3 Режимы работы клавиатуры
- •4.5.4 Режимы работы дисплея
- •4.5.5 Байт состояния памяти клавиатуры/датчиков
- •5 Разработка программного обеспечения
- •5.2 Разработка блок-схемы управляющей системы
- •6 Реализация устройства на базе микропроцессора к1816ве51
- •6.1 Основные технические данные и характеристики
- •6.1.1 Параметры назначения:
- •6.2 Устройство
- •6.2.1 Общие сведения
- •6.2.2 Принцип действия
2.2.3 Работа последовательного канала связи
Встроенный в ВЕ51 последовательный канал связи может быть запрограммирован для работы в одном из четырех режимов. В режиме 0 данные принимаются или передаются последовательно через линию ТхD со скоростью OSC/12 младшими битами вперед по 8 разрядов за операцию. Для синхронизации внешних средств используется линия ТхD. Передача инициируется всякий раз, когда новые данные записываются в SBUF. Признаком окончания передачи служит установка флажка TI. Операция ввода данных активизируется при разрешенном приеме (REN = 1) по сбросу флажка RI. Установка флажка RI свидетельствует о готовности введенных данных для считывания из SBUF.
Выдаваемый на линию ТхD синхросигнал переходит в состояние 0 в фазе S3PI второго машинного цикла, следующего за циклом исполнения команды записи данных в SBUF или команды сброса RI при REN=1 (рисунок 7, а). Затем он переключается через каждые шесть тактов, переходя в состояние 1 в фазе S6P1 и возвращаясь в состояние 0 в фазе S3P1 до тех пор, пока не будут переданы или приняты все 8 бит. Флажок RI или TI в зависимости от выполняемой операции устанавливается после фронта восьмого синхроимпульса. Прием выходных данных внешними средствами следует осуществлять по фронту синхросигнала. Ввод данных от внешних средств выполняется перед очередным фронтом синхросигнала в фазе S5P2.
а) режим 0; б) режим 1; в) режим 2 и 3
Рисунок 7 - Форматы передачи данных
В отличие от режима 0 в трех оставшихся режимах реализуется асинхронный обмен данными, форматы которых приведены на рисунке 7, б, в. Для повышения помехоустойчивости приема в режимах 1-3 каждый бит данных опрашивается трижды. Для этого период передачи бита данных делится на 16 интервалов. Опрос осуществляется в интервалах 7-9. Решение о состоянии бита данных принимается голосованием «два из трех».
До прихода стартового бита приемник проверяет вход RхD 16 раз за период. При обнаружении перехода из 1 в 0 на входе RхD приемник начинает счет периодов передачи данных. В интервалах 7 - 9 первого периода приемник проверяет правильность генерации стартового бита. Если стартовый бит не подтверждается, то переход принимается за помеху, в противном случае реализуется операция последовательного приема 8 или 9 бит данных, которые запоминаются в регистре SBUF и во флажке RB8 (режим 2 и 3) при приеме последующего стопового бита. Одновременно с этим устанавливается флажок готовности приемника RI, свидетельствующий о приеме очередного кадра.
Данные передаются на вход ТxD после их записи в SBUF независимо от состояния TI. Передача стартового бита начинается в фазе S1P1 машинного цикла, следующего за первым сигналом переполнения счетчика, который используется в качестве генератора скорости. Таким образом, начало передачи данных оказывается синхронизированным по отношению к генератору скорости. Кадр завершается выдачей стопового бита. Перед началом передачи стопового бита устанавливается флажок TI, свидетельствующий об окончании передачи данных.
В режимах 1-3 кадр данных имеет форматы, представленные на рисунке 6, б, в. Если данные D0 - D7 доступны через SBUF, то разряд D8 - через флажки ТВ8 и RB8 управляющего слова SCON. В режиме 2 скорость передачи в зависимости от значения флажка SMOD в регистре PCON может быть равной либо OSC/32 (SMOD = 0), либо OSC/64 (SMOD=l). В режиме 1 и 3 скорость передачи определяется частотой переполнения СТ1 или СТ2 (RCLK=1 или TCLK=1). В случае SMOD=l скорость передачи совпадает с частотой переполнения, а при SMOD = 0 скорость передачи в 2 раза меньше. Таким образом, манипулируя флажком SMOD, можно понизить скорость передачи в режимах 1-3 в 2 раза.
Флажки RI и TI способны осуществлять запрос на прерывание. В режимах 1-3 - установка флажка SM2 разрешает установку флажка RI и генерацию запросов от него только при приеме кадра с D8 = l. Для режима 1 это соответствует контролю кадра на стоповый бит. Для режима 2 и 3 такая организация работы обеспечивает разделение кадров на два класса в зависимости от состояния RB8. В противном случае принятые данные в SBUF не записываются и безвозвратно теряются.