Аналого-цифровой преобразователь
Аналоговый компаратор
Мы уже упоминали о компараторе. Он предназначен для сравнения напряжений на двух специальных внешних входах. Такие входы имеют названия: 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 бит в секунду.
Последовательный периферийный интерфейс (SPI)
Это специальный последовательный интерфейс, разработанный для связи микроконтроллеров между собой. Канал SPI использует для передачи информации три линии: линию MISO (Master Input / Slave Output); линию MOSI (Master Output / Slave Input); линию SCK (Тактовый сигнал).
В микроконтроллерах AVR канал SPI может выполнять двоякую функцию. Так, при помощи этого интерфейса можно не только организовать последовательный канал обмена информацией между двумя микроконтроллерами, но и между микроконтроллером и любым периферийным устройством, имеющим SPI-интерфейс.
Существует целый набор подобных устройств: цифровые потенциометры, ЦАП/АЦП, внешние Flash-ПЗУ и др.
В табл. 3.1 в графе SPI приведена информация о наличии канала SPI в разных микроконтроллерах. Здесь имеется в виду полный SPI-канал, способный выполнять все вышеперечисленные функции.
Второе предназначениеканала SPI — программирование микроконтроллера. Именно через этот канал осуществляется последовательное программирование памяти программ и внутреннего EEPROM. Такой усеченный канал SPI имеется практически в каждом микроконтроллере AVR. Преимущество программирования через SPI состоит в том, что такой способ позволяет программировать микросхему, не вынимая ее из отлаживаемого устройства. Это так называемое внутрисхемное программирование. Необходимо лишь позаботиться, чтобы другие сигналы на выводах, служащих линиями SPI интерфейса, отключались в момент программирования. Обычно в плате отлаживаемого устройства предусматривают специальный разъем, куда и подключается программатор.
Последовательный двухпроводный интерфейс (TWI)
Этот интерфейс является полным аналогом шины PC фирмы Philips, получившей широкое распространение в различных системах управления бытовой и промышленной техникой. Интерфейс позволяет объединить вместе до 128 устройств, подключив их к одной двухпроводной шине. Линии шины PC имеют следующие названия: линия SCL(линия тактового сигнала); линия SDA(линия передачи данных).
Интерфейс позволяет обмениваться данными между ведущим устройством, которым обычно является микроконтроллер, и любым из внешних устройств, подключенных к двухпроводной линии. При этом ведущее устройство может как передавать данные на ведомое, так и принимать данные из него.
Наличие интерфейса для работы с PC шиной позволяет применять микроконтроллеры в системах управления телевизоров, радиоприемников и т. п. Специализированные микросхемы для телевизионных приемников, радиоприемников, магнитол с PC-интерфейсом в настоящее время становятся фактически стандартом. Кроме того, в настоящее время широко применяются контроллеры дисплеев на жидких кристаллах, микросхемы Flash-памяти и другие устройства, управляемые по РС-шине.
<== предыдущая лекция | | | следующая лекция ==> |
Методы исследования рынка | | | Понятие товара, классификация товара |
Дата добавления: 2017-10-09; просмотров: 1430;