Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






Преобразование данных из параллельного кода в последовательный и обратно




Наиболее распространенным применением процедур преобразования параллельной формы в последовательную и обратно является связь с удаленными датчиками, исполнительными механизмами и другими МК по однопроводным и двухпроводным линиям передачи информации.

Для этих целей удобно использовать аппаратные средства микроконтроллера – последовательный порт (см. 1.3.4). Порт может работать в двух режимах: в режиме сдвигающего регистра и режиме универсального асинхронного приёмопередатчика.

Работа последовательного порта в режиме сдвигающего регистра предполагает синхронную выдачу и приём битов информации (рисунок 4.20).

 

   
Рисунок 4.20 – Организация последовательного синхронного обмена между микроконтроллером и периферийным устройством

 

Внешнее устройство, принимающее информацию, должно «защёлкивать» биты по переднему фронту сигнала на выходе TXD, выдающее – устанавливать данные по заднему фронту.

Выдача информации в этом режиме может быть реализована следующим образом (листинг 4.32).

 

Листинг 4.32 – Программа выдачи информации микроконтроллером

  ORG 0000H ; Адрес начала программы
  NEXT: MOV IE, #00H MOV SCON, #00H     MOV P0, #FFH MOV A, P0 SETB P1.0   MOV SBUF, A     JNB TI, $ CLR P1.0   CLR TI JMP NEXT ; Запрет всех прерываний ; Настройка последовательного ; порта контроллера на режим ; синхронной передачи ; Настройка порта P0 на ввод ; Чтение данных из порта P0 ; Разрешение внешнему ; устройству приёма данных ; Запись данных в регистр SBUF ; (при этом автоматически ; начинается выдача данных) ; Ожидание завершения передачи ; Запрет внешнему устройству ; приёма данных ; Сброс флага конца передачи ; Переход на начало цикла

 

Процедура приёма данных аналогична процедуре выдачи (листинг 4.33):

 

Листинг 4.33 – Программа приёма информации микроконтроллером

  ORG 0000H ; Адрес начала программы
  NEXT: MOV IE, #00H MOV SCON, #10H     SETB P1.0   JNB RI, $ MOV A, SBUF MOV P0, A CLR P1.0   CLR RI JMP NEXT … ; Запрет всех прерываний ; Настройка последовательного ; порта контроллера на режим ; синхронного приёма ; Разрешение внешнему ; устройству на передачу данных ; Ожидание завершения приёма ;Чтение данных из регистра SBUF ; и их выдача в P0 ; Запрет внешнему устройству ; передачи данных ; Сброс флага конца приёма ; Переход на начало цикла

 

Режим универсального приёмопередатчика удобно использовать для асинхронной выдачи и асинхронного приёма информации по последовательному каналу связи (например, по интерфейсу RS-232). Описание работы последовательного порта в режиме универсального приёмопередатчика приведено в пункте 1.3.4.

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

 

Листинг 4.34 – Программа, демонстрирующая асинхронный обмен
информации через последовательный порт






Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных