33367

Универсальный асинхронный приемопередатчик ОМК АТ90S8515

Доклад

Коммуникация, связь, радиоэлектроника и цифровые приборы

Управление работой приемопередатчика осуществляется с помощью регистра управления UCR. Текущее состояние приемопередатчика определяется с помощью регистра состояния USR. При чтении регистра UDR выполняется обращение к регистру приемника при записи к регистру передатчика. Работа передатчика разрешается установкой в 1 разряда TXEN регистра UCR UCSRB.

Русский

2013-09-05

38.5 KB

7 чел.

Универсальный асинхронный приемопередатчик ОМК АТ90S8515

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

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

Модуль UART может обнаруживать и сигнализировать о следующих внештатных ситуациях: переполнение, ошибка кадрирования, неверный старт-бит. Для уменьшения вероятности сбоев в модуле реализована функция фильтрации помех.

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

Выводы микроконтроллера, используемые модулем UART, являются линиями порта D. В качестве входа приемника (RXD) используется вывод PD0, а в качестве передатчика (TXD) - вывод PD1.

Управление работой приемопередатчика осуществляется с помощью регистра управления UCR. Текущее состояние приемопередатчика определяется с помощью регистра состояния USR. Принимаемые и передаваемые данные (младшие 8 разрядов) хранятся в регистре данных UDR. Физически регистр UDR состоит из двух отдельных регистров, один из которых используется для передачи данных, другой - для приема. При чтении регистра UDR выполняется обращение к регистру приемника, при записи - к регистру передатчика. Основой передатчика и приёмника UART являются сдвиговые регистры, используемые в передатчике для преобразования параллельного кода в последовательный, а в приёмнике - последовательного кода в параллельный.

Работа передатчика разрешается установкой в «1» разряда TXEN регистра UCR (UCSRB). Если этот разряд сброшен (передатчик выключен), вывод PD1 (TXD) может использоваться как контакт ввода/вывода общего назначения. При установке разряда TXEN этот вывод подключается к передатчику UART и начинает функционировать как выход независимо от состояния разряда DDRD1 регистра DDRD.

Передача инициируется записью передаваемых данных в регистр данных UART - UDR. После этого данные пересылаются из регистра UDR в сдвиговый регистр передатчика. При этом возможны два варианта:

• новое значение записывается в регистр UDR после того, как был передан стоп-бит предыдущего слова. В этом случае данные пересылаются в сдвиговый регистр сразу же после записи в регистр UDR;

• новое значение записывается в регистр UDR во время передачи. В этом случае данные пересылаются в сдвиговый регистр после передачи стоп-бита текущего слова.

После пересылки содержимого регистра UDR в сдвиговый регистр флаг UDRE регистра USR (UCSRA) устанавливается в «1», что означает готовность передатчика к получению нового значения. В этом состоянии флаг остается до новой записи в регистр UDR. Одновременно с пересылкой формируется служебная информация: 0-й разряд сдвигового регистра сбрасывается в «0» (старт-бит), а 9-й (10-й) разряд устанавливается в «1» (стоп-бит). После загрузки сдвигового регистра его содержимое начинает сдвигаться вправо и поступать на вывод TXD в следующем порядке: старт-бит, данные (начиная с младшего разряда), стоп-бит. Сдвиг осуществляется по тактовому сигналу, вырабатываемому контроллером скорости передачи. Если во время передачи в регистр UDR было записано новое значение, то после передачи стоп-бита оно пересылается в сдвиговый регистр. Если же к моменту окончания передачи стоп-бита такой записи выполнено не было, устанавливается флаг завершения передачи ТХС регистра USR (UCSRA).

Прием данных разрешается установкой разряда RXEN регистра UCR (UCSRB). Если этот разряд сброшен (приемник выключен), вывод PD0 (RXD) может использоваться как контакт ввода/вывода общего назначения. При установке разряда RXEN этот вывод подключается к приемнику UART  и начинает функционировать как вход независимо от состояния разряда DDRD0 регистра DDRD.

Работает приемник следующим образом. Схема предварительной обработки опрашивает вход приемника с частотой, в 16 раз превышающей скорость передачи данных (для обработки одного разряда принимаемой последовательности производится 16 выборок входного сигнала). Обнаружение лог. «0» в режиме ожидания интерпретируется как появление переднего (спадающего) фронта старт-бита. После этого проверяется значение 8-, 9- и десятой выборок входного сигнала. Если значение хотя бы двух выборок из указанных равно лог. «1», старт-бит считается ложным (помеха), а приемник переходит к ожиданию следующего изменения входного сигнала с лог. «1» на лог. «0». В противном случае считается, что обнаружен старт-бит новой последовательности.

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

Распознавание стоп-бита производится также по трем выборкам входного сигнала. Стоп-бит считается принятым, если значение хотя бы двух из трех выборок входного сигнала равно лог. «1». В противном случае фиксируется ошибка кадрирования и флаг FE регистра USR (UCSRA) устанавливается «1». Перед чтением регистра данных UDR следует всегда проверять состояние этого флага.

Независимо от того был или не был обнаружен стоп-бит в конце принимаемой посылки, принятое слово пересылается в регистр данных и устанавливается флаг RXC  регистра USR (UCSRA).

Если новое слово будет принято до того, как из регистра UDR будут считаны предыдущие данные, возникает переполнение. Об этом сигнализирует флаг OR регистра USR (UCSRA), который в этом случае устанавливается в «1». Установка этого флага означает, что принятые данные не могут быть пересланы из сдвигового регистра в регистр данных и, соответственно, являются потерянными. Сбрасывается указанный флаг только после обращения к регистру данных. Поэтому при высоких скоростях передачи либо при большой загрузке процессора пользователь после каждого чтения содержимого регистра UDR должен проверять состояние флага OR регистра USR (UCSRA) для обнаружения возможного переполнения.


 

А также другие работы, которые могут Вас заинтересовать

72186. Философия: Учебник для вузов 5.03 MB
  Учебник написан авторами, которые известны и как крупные ученые, и как педагоги, обладающие большим опытом преподавания в вузах. Фундаментальные вопросы философии рассматриваются в нем с позиций плюрализма, многообразия их интерпретации и обоснования.
72187. Религиоведение: Учебник для юридических вузов МВД России 1.61 MB
  В сочинениях отцов церкви четко проводится сравнение между повиновением царям и послушанием Богу. Филологический анализ религиозных текстов позволил мыслителям эпохи Возрождения не только развить античную традицию религиоведения но и подвергнуть критическому научному анализу некоторые важнейшие документы церкви.
72189. Базы данных: учебно-методический комплекс 3.24 MB
  Дисциплина посвящена изучению вопросов организации баз данных и систем управления базами данных. В основных ее разделах изучаются принципы построения, функционирования и оценки характеристик баз данных и их систем управления.
72190. УЧЕБНОЕ ПОСОБИЕ «ХИМИЯ ПИЩИ» 1.54 MB
  В основе производства пищевых продуктов лежат превращения основных компонентов пищи воды белковых веществ липидов углеводов солей и витаминов. Их классификацию состав и строение; пищевую энергетическую и биологическую ценность основных нутриентов...
72191. Захист інформації та інформаційна безпека: посібник 998.5 KB
  Інформація, будучи продуктом діяльності, виступає як власність держави, підприємств, установ, організацій, громадян, і, як об’єкт власності, вимагає захищеності. Проте проблема захисту інформації не зводиться тільки до захисту прав її власників, але і містить в собі такий важливий аспект...
72192. БАЗЫ ДАННЫХ: УЧЕБНО-МЕТОДИЧЕСКИЙ КОМПЛЕКС 7.9 MB
  Методические указания к выполнению лабораторных работ являются составной частью раздела «Информационные ресурсы дисциплины» учебно-методического комплекса и содержат описание лабораторных работ, порядок их выполнения и требования к оформлению отчета.
72193. Безопасность жизнедеятельности: Учебно-методический комплекс 503.5 KB
  Безопасность жизнедеятельности БЖД –- наука о сохранении здоровья и безопасности человека в процессе жизнедеятельности; об опасностях среды обитания в том числе производственной среды; о выявлении и анализе опасностей и защите от них.
72194. Высокотехнологичное оборудование предприятий общественного питания: Учебное пособие 2.76 MB
  К механическому высокотехнологичному оборудованию для предприятий общественного питания относятся: ленточные пилы; мясорубки с системой охлаждения в процессе измельчения продукта; иньекторы; вакуумные массажеры-маринаторы; вакуумные упаковочные машины.