Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УП КурсРасч9-1.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
10.98 Mб
Скачать

3.5.Последовательный интерфейс для приема пакетов управления

Стандартный вариант последовательного интерфейса. Последовательный интерфейс может быть использован для приема пакетов управления. Вариант выполненного по последовательной схеме устройства можно найти во второй дополненной версии [3, рис. 1.34], помещенной на компакт-диске. Для преобразования байтового параллельного формата данных микропроцессора в последовательный здесь используется микросхема 8251, которая требует дополнительного формирователя бодовой частоты. Бодовая частота применяется для тактирования передатчика (сигнал RTxC) и приемника (сигнал RxC) микросхемы 8251. Подключение пина готовности передатчика (TxRDY) к входу запроса прерывания (как показано на рис. 1.34) не требуется, так как на передачу используется единственный байт – номер контроллера в группе.

Реализация генератора бодовой частоты (Fbd) должна быть выполнена в каждом конкретном случае особо. Конечно, это должен быть счетчик. Необходимый модуль пересчета (Mbd) следует выбирать из заданных параметров последовательного канала и использованной тактовой частоты микропроцессора. Для варианта Fclk = 4 мГц и стандартной скорости 9600 бит/с модуль пересчета равен

Mbd = Fclk / (9600  BRF) = 4  106 / (9600  16) = 26,041,

где BRF – коэффициент деления частоты тактовых импульсов в микросхеме (см. [3 рис. 3.87]). Значение BRF = 16 наиболее подходит для МП 8085 и его тактовых частот, таким образом, необходимое значение Fbd = 9600  16 = = 153,6 кГц.

Вычисленное значение Mbd необходимо округлить до целого и затем проверить отличие получившегося значения от требуемого номинала. Если получившееся отличие более 3 %, расчет необходимо повторить для другого целого значения или принять другое решение.

Замечание. В случае измерения номинала Fclk для получения более точного значения Fbd необходимо учесть влияние этого изменения на все другие потребители тактовой частоты

(см. рис. 2.12) и согласовать предлагаемое изменение с преподавателем.

В данном случае относительная расстройка бодовой частоты (Fbd) от номинала (частоты даны в килогерцах) составит

F/F = (FbdFclk) / Mbd / Fbd = (153,6  153,846) / 26 / 9,6 = 0,0016 = 0,16 %.

Полученная точность формирования бодовой частоты удовлетворяет требованиям.

Улучшенный вариант последовательного интерфейса. Этот вариант предполагает использование микросхемы 16550, которая представляет собой асинхронный приемопередатчик со встроенным буфером FIFO [9]. Наличие буферов FIFO объемом 16 байт для чтения и записи позволяет уменьшить количество обращений к микропроцессору. Второй значительной особенностью этого прибора является наличие встроенного и программируемого бодового генератора. Для кварцевых резонаторов 1,8432, 3,072 и 18,432 МГц программируемый генератор позволяет получить значения Fbd (BRF = 16) для всех используемых на практике бодовых частот. Базовая конфигурация подключения прибора 16550 к системной шине представлена на рис. 3.6.

Рис. 3.19. Базовая конфигурация прибора 16550

Прибор может быть расположен как в пространстве памяти, так и в пространстве ввода-вывода, занимая блок из 8 байтов; имеет альтернативные сигналы управления (RD, RD# и WR, WR#) и сигнал, эквивалентный сигналу ALE, для подключения к мультиплексированной шине (ADS) только другой полярности. На рис. 3.6 прибор конфигурирован в пространстве IO, адрес задан сигналом CS#, регистр Latch не является обязательным. Входные (SIN) и выходные пины (SOUT), также как и соответствующие сигналы модема, должны подключаться к драйверу преобразования интерфейса RS-232 (микросхемы 1488 и 1489).

Прибор 16550 имеет развитую систему прерывания, которая позволяет использовать единый сигнал (Interrupt), указывающий на несколько возможных событий (прием байта, вывод байта, заполнение буфера FIFO на половину или целиком и др.) или раздельные сигналы приема входного (RxRDY) или вывода выходного (TxRDY) байтов.

В нашем случае для решения задачи приема пакетов управления достаточно использовать сигнал RxRDY для ввода по прерыванию.