Разработка контроллера управления последовательным портом
Курсовой проект - Компьютеры, программирование
Другие курсовые по предмету Компьютеры, программирование
ница, разработанная для кодирования букв кириллических алфавитов.
Сигналы интерфейса RS-232C делят на следующие классы:
Последовательные данные (например, TXD, RXD). Интерфейс RS-232C обеспечивает два независимых последовательных канала данных: первичный (главный) и вторичный (вспомогательный). Оба канала могут работать в дуплексном режиме, т.е. одновременно осуществлять передачу и прием информации.
Управляющие сигналы квитирования (например, RTS, CTS). Сигналы квитирования - это средство, с помощью которого обмен сигналами позволяет DTE начать диалог с DCE до фактических передачи или приема данных по последовательным линиям связи.
Сигналы синхронизации (например, ТС, RC). В синхронном режиме (в отличие от более распространенного асинхронного) между устройствами необходимо передавать сигналы синхронизации, которые осуществляют тактирование принимаемого сигнала в целях его декодирования.
На практике вспомогательный канал RS-232C применяется редко, и в асинхронном режиме из 25 сигнальных линий интерфейса обычно используются только девять, которые приведены в Табл. 1.
Таблица 1.
Номер контактаСигналВыполняемая функция1FGОсновная или защитная земля, подключаемая к стойке или шасси оборудования2TxDПоследовательные данные, передаваемые от DTE к DCE3RxDПоследовательные данные, принимаемые от DTE к DCE4RTSЗапрос передачи. Активным уровнем этого сигнала DTE указывает, что оно хочет послать данные в DCE5CTSСброс передачи. Активным уровнем этого сигнала DCE сообщает, что связь установлена6DSRГотовность модема. Активным уровнем этого сигнала DCE сообщает, что связь установлена7SGВозвратный тракт общего сигнала (сигнальная земля)8DCDОбнаружение несущей данных. Активным уровнем этого сигнала DTE показывает, что оно работает и DCE может подключиться к каналу связи9-Не задействован
2. Программная эмуляция SCI
Модуль SCI обрабатывает все команды передачи и приема и тем самым освобождает центральный процессор (CPU) от выполнения этих функций. Модуль SCI является программируемым для различных скоростей передачи. Приемник может обнаружить автоматически ошибки формата, такие как кадрирование, шум и переполнение.
Наличие в составе 8-разрядного МК модуля контроллера последовательного ввода/вывода стало настолько обычным явлением, что лишь самые простые, маловыводные МК в корпусах DIP-16 и DIP-20 не имеют портов последовательного обмена, такие как микроконтроллеров MC68HC705J1A. Для выполнения асинхронной последовательной связи используется программная эмуляция SCI. В этом случае процессор будет контролировать контакты портов ввода / вывода, выполняя те же функции, что и линии приема данных (RXD) и передачи данных (TXD) истинного аппаратно-управляемого SCI.
Требования для применения программной эмуляции SCI :
Оптимизация скорости для максимальной скорости передачи;
Минимальный размер кода;
Простота настройки для различных скоростей передачи;
Возможность обнаружения шума и ошибок кадра при получении.
Поскольку процессор не так эффективен, как специализированные аппаратные SCI, программная эмуляция имеет ограничения:
Очень высокая скорость передачи данных не является достижимой;
Программная эмуляция SCI потребляет память и пропускную способность ЦП;
Гибкость и функциональность МК снижаются.
Если перечисленные ограничения являются существенными для приложения, то использование микроконтроллера с модулем SCI было бы более уместно. Однако, многие приложения не требуется производительности и гибкости SCI, и в тех случаях, программная эмуляция является экономически выгодным решением.
При программной эмуляции SCI не возможна реализация полнодуплексного режима. Это программное решение работает только в полудуплексном режиме.
3. Описание используемого оборудования
.1 Микроконтроллер MC68HC705J1A
HC705J1A относится к семейству МК HC05 производства фирмы Motorola. Год рождения семейства - 1980-й. Количество различных модификаций МК с процессорным ядром HC05 составляет около 180. МК семейства HC05 отличаются очень точной ориентацией на различные сектора рынка массового потребления.
МК семейства HC05 объединены в серии. Каждая серия имеет буквальное обозначение, общее число серий равно 15. MC68HC705J1A относится к серии J. Данная серия включает в себя недорогие 20-выводные МК, содержащие ПЗУ, многофункциональный таймер с функцией прерывания реального времени.
ЦП семейства HC05 имеют CISC-архитектуру с развитой системой команд, на основе которой удобно программировать даже на ассемблере (делается мало ошибок).
Из периферийных устройств HC705J1AT содержит многофункциональный таймер (MFT), сторожевой таймер и 2 двунаправленных параллельных порта. Таймер MFT содержит 15 разрядов и обеспечивает формирование запросов прерывания процессора с заданной периодичностью. Структурная схема микроконтроллера MC68HC705J1A приведена на рис. 3.1.
Он имеет общее количество памяти равное 1240 байтов в стираемом программируемом постоянном запоминающем устройстве (ПЗУ), а также 64 Байт в ОЗУ. MC68HC705J1A состоит из 20 выводов, 14 из которых ножки ввода - вывода.
Рисунок 3.1. Структурная схема МК MC68HC705J1A
Назначение выводов контроллера HС705J1AP приведено в таблице.
Таблица 2 - Описание выводов микроконтроллера MC68HC705J1AP
ВыводНазваниеНазначение 9VDDНапряжение питания10VSSНапряжение 0В20Сброс19Управление запросом на аппаратное прерывание3-8PB5-PB0Шестибитный параллельный порт11-18PA7-PA0Восьмибитный параллельный порт ввода-вывода.1, 2OSC1, OSC2Р32 - защ?/p>