Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Последовательный канал (UART/USART)

Тема 25. Другие встроенные периферийные устройства.

Аналоговый компаратор

Мы уже упоминали о компараторе. Он предназначен для сравнения напряжений на двух специальных внешних входах. Такие входы имеют названия: AIN0 (неинвертирующий); AIN1 (инвертирующий).

Не забываем, что каждый из этих входов совмещен с одной из линий какого-либо порта ввода-вывода. Если напряжение на входе AIN0 больше, чем напряжение на входе AIN1, то на выходе компаратора — логическая единица. В противном случае там логический ноль.

Этот результат сохраняется в одном из разрядов специального реги­стра ввода-вывода, предназначенного для работы с компаратором.

Регистр называется ACSR. А разряд, куда выводится выходной сигнал компаратора, тоже имеет свое название. Он называется АСО. Другой раз­ряд под названием ACD того же регистра отвечает за включение/выклю­чение компаратора. Еще два разряда ACIS0 и ACIS1 определяют способ влияния сигнала с выхода компаратора на последующие схемы. Есть три варианта: любое изменение на выходе; изменение с единицы на ноль; изменение с ноля на единицу.

Как видите, отдельные разряды некоторых регистров тоже иногда различаются не по номерам, а по названиям. Это позволяет в разных микроконтроллерах использовать для одной и той же цели разные раз­ряды регистров. В этом случае имя разряда остается прежним. Хотя чаще всего номера разрядов не меняются.

Схема компаратора имеет специальный внутренний источник опор­ного напряжения, который может быть подключен к неинвертирующему входу компаратора. Подключением внутреннего источника управляет разряд ACBG регистра ACSR. Кроме того, на инвертирующий вход ком­паратора можно подать сигнал с любого входа АЦП. Этим переключе­нием управляют остальные разряды регистра ACSR. Что такое АЦП и какие АЦП применяются в микроконтроллерах серии AVR, мы рассмо­трим в следующем разделе.

Аналого-цифровой преобразователь

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

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

Встроенный АЦП имеют не все микроконтроллеры AVR. Это и понятно. Ввод аналоговой информации нужен далеко не всегда. В микроконтролле­рах AVR применяется десятиразрядное АЦП последовательного приближе­ния. Микросхемы, имеющие в своем составе встроенный АЦП, обязательно имеют раздельное питание для цифровой и для аналоговой частей схемы. Поэтому они имеют два вывода питания и два вывода общего провода.

Кроме того, один из выводов зарезервирован для подачи на микро­схему внешнего опорного напряжения. Опорное напряжение использу­ется в схеме АЦП для оценки уровня входного сигнала. От стабильности опорного напряжения зависит точность измерения.

Каждый АЦП снабжен многоканальным аналоговым коммутатором (мультиплексором), который позволяет измерять аналоговое напряже­ние с нескольких разных входов. Количество входов АЦП у разных микро­схем различное. Существуют варианты в 4, 6, 8 и 11 входов. Количество входов аналого-цифрового преобразования для каждой из микросхем серии AVR можно узнать из табл. 3.1 (графа «Число Каналов АЦП»).

Обычно измеряемый сигнал прикладывается между соответствующим входом АЦП и аналоговым общим проводом. Такие входы называются несимметричными. В некоторых микроконтроллерах имеется режим, в котором входы АЦП объединяются попарно и образуют дифференци­альные входы. Дифференциальные входы отличаются от обычных тем, что измеряемый сигнал прикладывается между двумя входами: прямым и инверсным. При этом наводимые помехи компенсируются, а полезный сиг­нал проходит без изменений. Такие входы называются симметричными.

Процесс преобразования напряжения в код занимает 13 или 14 так­тов. За это время происходит подбор кода методом последовательных приближений. По окончании процесса преобразования вырабатывается запрос на прерывание. Результат преобразования записывается в пару регистров ADCH, ADCL. Из шестнадцати разрядов этой регистровой пары используются только 10. Остальные всегда равны нулю. Причем могут использоваться либо десять старших разрядов (ADCH7—ADCH0, ADCL7, ADCL6), либо десять младших разрядов (ADCH1, ADCH0, ADCL7—ADCL0). Это зависит от выбранного вами режима работы.

АЦП могут работать как в одиночном режиме, так и в непрерывном. В непрерывном режиме преобразования идут один за другим. В одиноч­ном режиме процесс преобразования запускается однократно от одного из следующих событий:

♦ прерывания от аналогового компаратора; внешнего прерывания INTO;

♦ прерывания по событию «Совпадение» одного из таймеров;

♦ прерывания по переполнению одного из таймеров;

♦ прерывания по событию «Захват» одного из таймеров.
Управление всеми режимами работы АЦП производится при помощи двух специальных регистров ADMUX и ADCSR. Регистр ADMUX предна­значен для управления входным аналоговым мультиплексором. Регистр ADCSR предназначен для выбора режима работы АЦП.

Процесс преобразования в АЦП синхронизируется от внутреннего генератора микроконтроллера. Тактовый сигнал от генератора поступает на АЦП через предварительный делитель с программируемым коэффи­циентом деления. Коэффициент деления зависит от значения разрядов ADPS0, ADPS1 и ADPS2 регистра ADCSR и может принимать значения 2,4,8,16,32,64 и 128.

Наибольшая точность преобразования достигается тогда, когда такто­вая частота преобразования находится в диапазоне 50—200 кГц. Поэтому рекомендуется выбирать такой коэффициент деления, чтобы тактовая частота модуля АЦП находилась в этом диапазоне.

Последовательный канал (UART/USART)

Некоторые микроконтроллеры серии AVR имеют:

♦ встроенный универсальный последовательный асинхронный прие­мопередатчик (UART);

♦ универсальный последовательный синхронно/асинхронный прие­мопередатчик (US ART).

Некоторые модели имеют даже сразу два таких канала. Наличие UART для разных микроконтроллеров указано в графе «UART» в табл. 3.1. Каналы UART (USART) предназначены для обмена информацией между микроконтроллером и любым внешним устройством. Протокол UART (USART) — это довольно распространенный протокол последовательной передачи информации. Такой протокол, в частности, использует последо­вательный порт компьютера (СОМ-порт). При помощи UART (USART) можно организовывать линию связи не только между двумя микрокон­троллерами, но и между микроконтроллером и компьютером.

Для обмена информацией UART (USART) использует две линии: RxD и TxD. Одна линия используется для приема информации, другая — для передачи. В модулях UART посылка может быть восьми- или девятираз­рядной. В модуле USART ее длина может составлять от 5 до 9 разрядов. Кроме того, модули могут вырабатывать и контролировать разряд чет­ности.

Скорость передачи определяется специальным внутренним програм­мируемым делителем и частотой тактового генератора микроконтрол­лера. Коэффициент деления делителя может изменяться от 2 до 65536. Для того, чтобы последовательный канал мог нормально обмениваться информацией с внешними устройствами, необходимо так подобрать коэффициент деления и частоту тактового генератора, чтобы получить одну из стандартных скоростей передачи информации. Например, 2400, 4800, 9600,14400,19200, 28800 бит в секунду.

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...