Пример: Транспортная логистика
Я ищу:
На главную  |  Добавить в избранное  

Цифровые устройства /

Разработка сенсора на поверхностно-акустических волнах. Автоматизация измерительной установки

←предыдущая следующая→
1 2 3 4 5 6 7 8 9 



Скачать реферат


описанных ниже.

Через порт Р0:

• Выводится младший байт адреса А0 – А7 при работе с внешней памятью программ и внешней памятью данных;

• Выдается из ОМЭВМ и принимается в ОМЭВМ байт данных при работе с внешней памятью (при этом обмен байтом данных и вывод младшего байта адреса внешней памяти мультиплексированы во времени);

Через порт Р2:

• Выводится старший байт адреса А8 – А15 при работе с внешней памятью программ и внешней памятью данных (для внешней памяти данных – только при использовании команд, которые вырабатывают 16-разрядный адрес)

Каждая линия порта Р3 имеет индивидуальную альтернативную функцию:

• P3.00 – RxD, вход последовательного порта, предназначен для ввода последовательных данный в приемник последовательного порта;

• P3.1 – TxD, выход последовательного порта, предназначен для вывода последовательных данных из передатчика последовательного порта;

• P3.2 – INT0 – используется как вход 0 внешнего запроса прерывания;

• P3.3 – INT1 - используется как вход 1 внешнего запроса прерывания;

• P3.4 – T0, используется, как вход счетчика внешних событий Т/С 0;

• P3.5 – T1, используется, как вход счетчика внешних событий Т/С 1;

• P3.6 – WR, строб записи во внешнюю память данных, входной сигнал, сопровождающий вывод данных через порт Р0 при использовании соответствующих команд;

• P3.7 – RD, строб чтения из внешней памяти данных, выходной сигнал, сопровождающий ввод данных через порт Р0 при использовании соответствующих команд.

Альтернативная функция любой из линий порта Р3 реализуется только в том случае, если в соответствующем этой линии фиксаторе-защелки содержится «1». В противном случае на линии порта 3 будет присутствовать «0».

Среди прочих особенностей данной ОМЭВМ особого внимания заслуживают следующие.

Параллельные порты ввода/вывода.

Для связи ОМЭВМ с объектами управления, для ввода/вывода информации используются 32 двунаправленные линии. Эти линии сгруппированы в 4 порта по 8 линий в каждом. Каждая линия может быть индивидуальна и независимо запрограммирована на вход или выход. При использовании линии в качестве входа необходимо соответствующий бит порта установить в «1». При установке ОМЭВМ в исходное состояние все линии портов включены в исходное состояние. Обращение к портам ввода/вывода осуществляется через регистры специальных функций Р0 – Р3. Обращение производится с использованием команд, оперирующих с байтами, битом или с комбинацией бит.

В случае использования внешней памяти программ или данных, порт 0 служит для ввода младшего байта адреса внешней памяти, а через Р2 – для вывода старшего байта вывода внешней памяти, поэтому, когда мы используем внешнюю память – эти порты заняты. Данные во внешнюю память передаются через регистр Р0 (рис. 9).

Все выводы порта 3 могут быть использованы для реализации альтернативных функций. Альтернативные функции могут быть задействованы путем записи «1» в соответствующие разряды порта «Р3».

В состав ОМЭВМ входят 2 независимых таймера/счетчика Т0 и Т1, предназначенных для измерения временных интервалов, длительности импульсов регенерирования периодически повторяющихся прерываний. Каждому таймеру/счетчику соответствует 16-разрядный таймерный регистр, состоящий из двух байт (TH0, TL0; TH1, TL1)

Таймеры/счетчики работают в двух режимах (в качестве таймера и счетчика).

При работе в качестве таймера, содержимое таймерного регистра увеличивается на единицу в каждом машинном цикле.

Путем программной установки таймерного регистра в исходное состояние и анализа флага переполнения могут быть реализованы различные временные задержки в диапазоне 0000-FFFF. Временная задержка, превышающая это значение (65535 мкс) может быть получена накоплением переполнений в рабочем регистре под управлением программы.

При работе в режиме счетчика событий таймерный регистр увеличивается на 1 каждый раз, когда сигнал на входе Т0 порта 3 переходит из «1» в «0».

Состояние внешнего входа Т0 или Т1 опрашивается каждую микросекунду (машинный цикл). Для управления таймером/счетчиком используются 2 регистра специальных функций: TCON – регистр управления и TMOD – регистр режимов.

Прерывания

МК51 имеет 5 аппаратных источников прерываний. Прерывание – сигнал, который поступает в ОМЭВМ от одного из 5 источников прерываний и вызывает переход из основной программы в подпрограмму обработки прерываний.

Появление сигнала – событие, неожиданное для основной программы. Поэтому точно не известно, в каком месте выполнения программы это произойдет. В ОМЭВМ используется векторная система прерываний. Это значит, что для каждого источника прерываний в ПЗУ предусмотрен адрес (вектор) начала подпрограммы обработки прерываний.

Каждый источник прерываний имеет свой адрес начала подпрограммы обработки прерываний. Адреса находятся в ПЗУ.

Получив запрос прерывания от одного из пяти источников, система обработки прерываний выполняет следующие действия:

1. Помещает в стек содержимое счетчика команд, чтобы запомнить команду основной программы, на которую нужно вернуться после обработки прерываний.

2. Загружает в счетчик команд адрес вектора, соответствующей подпрограммы обработки прерываний и осуществляет переход по этому адресу. По адресу вектора должна быть расположена команда безусловного перехода к начальному адресу подпрограммы обработки прерываний.

3. Подпрограмма обслуживания прерывания обязательно завершается командой выхода из подпрограммы, обслуживающей прерывания, по которой счетчик команд перезагружается из стека адресом возврата в основную программу и осуществляет аппаратный сброс запросов прерываний.

Последовательный порт ввода/вывода

В состав ОМЭВМ входит последовательный порт, представляющий собой асинхронный приемопередатчик. Он осуществляет прием и передачу информации, представленной последовательным кодом, младшими битами вперед. Для этого в состав УАПП входят принимающие и передающие сдвиговые регистры, преобразующие параллельный код в последовательный. Последовательный порт является дуплексным, то есть одновременно осуществляет прием и передачу. Передаваемые и принимаемые данные хранятся в регистре специальных функций SBUF – буферный регистр. Физически регистр SBUF представляет собой 2 раздельных регистра. Один – для передаваемых данных, второй – для принимаемых. При приеме обеспечивается хранение принятого байта до конца приема следующего байта. Байт, не прочитанный из SBUF за время приема следующего байта, теряется. Запись байта в буфер SBUF при передаче приводит к автоматической перезаписи байта в сдвигающий регистр передатчика и инициализирует передачу байта. Всего имеется 4 режима работы последовательного порта:

• 00 – синхронный режим приема/передачи 8-битных данных. Частота передачи – 1/12 частоты процессора. Скорость фиксированная.

• 01 – 8-битный режим передачи с переменной скоростью. Скорость передачи задается таймером Т1 (600 – 9600 бит/сек). Формат посылки: 1 старт + 8 бит информации + 1 стоп.

• 10 – 9-битный режим передачи информации с фиксированной скоростью. Скорость передачи – частота резонатора деленная на 64 или на 32. 9-й бит может использоваться для контроля по четности.

• 11 – 9-битный режим передачи информации с переменной скоростью, величина которой задается таймером Т1.

Для сопряжения с интерфейсом RS232C, УАПП может работать в режимах 10 и 11, когда скорость определяется таймером Т1. Если устройство разрабатывается на МК51, оно должно иметь выход на последовательный интерфейс с RS232C. При этом перед разработчиком встают следующие проблемы:

1. Согласование уровней сигналов RS232C и МК51.

2. Поддержание стандартной скорости передачи.

3. Поддержание стандартных форматов посылок.

4. Поддержание стандартных протоколов обмена – набор символов для того, чтобы обеспечить нормальный прием/передачу.

Задача преобразования последовательного кода выходного сигнала частотомера в параллельный несколько усложняется тем, что необходим опрос 38 каналов. Данное обстоятельство приводит к необходимости применения дополнительных микросхем, позволяющих решить эту задачу. Для этого использовались микросхемы КР580ВВ55А.

Микросхема КР580ВВ55А предназначена для параллельной передачи информации между микропроцессором и периферийными устройствами и содержит три 8-разрядных канала ввода/вывода

А, В, С.

Канал С может быть представлен в виде двух 4-разрядных каналов ввода/вывода, доступ к которым производится как к отдельным независимым каналам. Периферийные устройства подключаются к каналам А, В, С, а связь с микропроцессором осуществляется с помощью шины D через буфер данных. Структурная схема КР580ВВ55А представлена на рис 10.

Рисунок 10 Структурная схема микросхемы КР580ВВ55А

Каждый из каналов А, В, С состоит из 8-разрядного регистра и двунаправленных формирователей, имеющих на выходе состояние «Выключено», Устройство управления содержит регистр управляющего слова (РУС), в который предварительно производится запись информации, определяющей режим работы каналов, и формирует сигналы выбора канала и управления каналом С.

Микросхема может работать в одном из трех режимов: режим 0 - простой ввод/вывод; режим 1 - стробируемый ввод/вывод; режим 2 -двунаправленный канал. Режим работы каналов можно. изменять как в начале, так и в процессе выполнения программы, что позволяет обслуживать различные периферийные устройства в определенном порядке с помощью одной микросхемы

←предыдущая следующая→
1 2 3 4 5 6 7 8 9 



Copyright © 2005—2007 «Mark5»