![]() |
Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
АНАЛОГО-ЦИФРОВОЙ ПРЕОБРАЗОВАТЕЛЬ.
АЦП, имеющий разрядность n=10, встроенный в МК AVR работает по алгоритму последовательных приближений, погрешность преобразования - не более 2 единиц младшего значащего разряда, время преобразования 65 - 260 мкс. АЦП совместно со встроенным аналоговым мультиплексором обеспечивает преобразование в 10-ти разрядный двоичный код сигналов по 8 аналоговым входам (альтернативная функция линий ввода-вывода порта А) в диапазоне напряжений от О (AGND) до опорного (AREF). Для снижения уровня помех цепи питания (AGND, AVCC) схем преобразования аналоговых сигналов подключаются отдельно (рис. 1), напряжение питания AVCC не должно отличаться от напряжения питания VCC более чем на ±0, 3 В. Опорное напряжение должно лежать в диапазоне от 2 В до напряжения питания AVCC. Код АЦП $000 соответствует нулевому входному сигналу, максимальный код $3FF соответствует сигналу, равному опорному, минус вес единицы младшего значащего разряда. Номер входа мультиплексора, с которого поступает сигнал для преобразования в АЦП, определяется тремя младшими битами MUX2, MUX1, MUXO управляющего регистра ADMUX. Любой из восьми входов может быть выбран через ADMUX записью в него соответствующего кода в любой момент времени, однако переключение входов фактически производится только после завершения очередного цикла преобразования АЦП. АЦП может работать в режиме однократного преобразования или циклически с автоматическим повторным запуском после каждого преобразования. По окончании преобразования формируется флаг прерывания ADIF со стандартной процедурой вызова вектора прерывания ADC с адресом $00е и записью 10-разрядного кода в двухбайтовый регистр ADCL (младшие 8 бит результата), ADCH (старшие 2 бита результата). Чтение данных из регистра результата ADC должно начинаться обязательно с младшего байта (см. примечание на с. 20). Точность АЦП зависит от тактовой частоты преобразования, рекомендуется диапазон тактовых частот 50 - 200 кГц, при более высоких частотах точность преобразования снижается. Стандартный цикл преобразования требует 13 тактов работы и при рекомендуемом значении тактовой частоты 100 кГц определяет время преобразования 130 мкс. Кроме регистров ADMUX, ADCH, ADCL, работа АЦП определяется регистром ADCSR, который также содержится в файле регистров ввода-вывода. Символические имена битов управления в регистре ADCSR
ADEN - бит разрешения: 0 - АЦП выключен, 1 - АЦП включен. ADSC - бит запуска преобразования, в режиме однократного преобразования. Единица должна записываться при каждом запуске, в циклическом режиме - один раз для запуска первого преобразования.
ADFR - бит режима преобразования: 1 - циклический режим, 0 - однократный. ADIF - флаг прерывания, устанавливается после завершения преобразования и записи кода в выходной регистр АЦП. Очищается автоматически при вызове вектора прерывания либо записью 1 в этот бит. ADIE - бит разрешения прерывания АЦП, 1 разрешает прерывание. ADPS 2, ADPS 1, ADPS 20 - биты управления тактовой частотой АЦП, определяют коэффициент деления тактовой частоты микроконтроллера следующим образом: 0 - коэффициент деления 2, 1 - коэффициент деления 2, 10 - коэффициент деления 4, 11 - коэффициент деления 8, 100- коэффициент деления 16, 101- коэффициент деления 32, 110- коэффициент деления 64, 111- коэффициент деления 128. Дополнительное снижение уровня помех для повышения точности преобразования можно получить, если на время преобразования АЦП приостановить работу процессора в микроконтроллере переходом в режим " idle". Возврат в рабочее состояние должна обеспечивать подпрограмма обработки прерывания АЦП. Рис.15. Структурная схема модуля АЦП. МИКРОКОНТРОЛЛЕР. Микроконтроллеры фирмы ATMEL с усовершенствованной RISC архитектурой обладают эффективными программно-аппаратными ресурсами для решения различных задач. Семейство микроконтроллеров AVR содержит и простые модели (AT90S1200, AT90S2313) с минимумом необходимых ресурсов, и весьма сложные модели megaAVR с существенно увеличенным объемом памяти, количеством портов ввода-вывода и других средств. Высокая эффективность микроконтроллеров AVR обеспечивается развитой системой команд, выполняющихся, как правило, за один рабочий такт, аппаратной реализацией многих стандартных функций (таймеры, модуляторы ШИМ, параллельные и последовательные порты ввода-вывода, компаратор, АЦП и др.) и возможностью внутрисистемного программирования, т.е. записи программ и данных в ПЗУ микроконтроллера непосредственно в схеме работающего устройства. Общие архитектурные особенности и программная совместимость микроконтроллеров AVR позволяют использовать одни и те же алгоритмы и рабочие программы на разных моделях. Единственным ограничением применимости может служить только отсутствие необходимых для исполнения программ аппаратных средств в более простых моделях микроконтроллеров. Существенной общей особенностью всего семейства AVR является использование 32 регистров общего назначения и гарвардской архитектуры с тремя раздельными адресными пространствами: памяти программ (флэш-памяти), оперативной памяти данных (ОЗУ), программируемой постоянной памяти данных (ППЗУ). Флэш-память и ППЗУ являются энергонезависимыми и, как обычно, сохраняют данные при отсутствии питающих напряжений. ОЗУ - это стандартная энергозависимая оперативная память. Система команд поддерживает стандартные операции с однобайтовыми данными, возможны определенные операции с двухбайтовыми словами и отдельными битами. Каждый из 32 восьмиразрядных регистров общего назначения может служить регистром-аккумулятором. Основной формат кодов команд - 2 байта, формат данных - 1 байт. Управление и доступ к аппаратным средствам микроконтроллеров производятся с помощью специальных управляющих регистров - регистров ввода-вывода. Эти регистры определяют параметры и режимы работы устройств микроконтроллеров, обеспечивают необходимый обмен данными с ними. Система прерываний позволяет обслуживать программные прерывания, внутренние прерывания всех устройств микроконтроллеров через регистры ввода-вывода и внешние прерывания. Внутренние аппаратные и внешние прерывания имеют жестко закрепленные адреса векторов прерываний. Микроконтроллер AT90S8535 (рис. 16) со 118 командами в системе команд содержит 8-разрядное арифметико-логическое устройство (АЛУ), память программ (флэш-память) объемом 8 Кбайт, электрически программируемое ППЗУ (EEPROM) объемом 0, 5 Кбайт (также с возможностью внутрисистемного программирования), статическое ОЗУ объемом 0, 5 Кбайт, 32 регистра общего назначения, 4 двунаправленных параллельных восьмиразрядных порта ввода-вывода, последовательный синхронный интерфейс SPI, последовательный асинхронный интерфейс UART, два восьмиразрядных и один шестнадцатиразрядный таймеры с возможностью реализации модулятора ШИМ, сторожевой таймер с автономным генератором, аналоговый компаратор, восьмиканальный АЦП. На структурной схеме (рис.16) и в дальнейшем при описании микроконтроллеров будут использованы названия и обозначения, используемые фирмой ATMEL. Внешние выводы микроконтроллера: VCC и GND (общий) - источник питания цифровых элементов; AVCC, AGND (общий аналоговый), AREF - питание и опорное напряжение АЦП и его мультиплексора; RESET - сигнал внешнего сброса (низкий уровень длительностью более 50 не), при включении питания сброс микроконтроллера производится автоматически; XTAL1 и XTAL2 - соответственно вход и выход тактового генератора (для подключения частотозадающего кварцевого резонатора и общей синхронизации с другими устройствами), аналогичные электроды вспомогательного генератора асинхронного режима таймера 2 - выводы РС6 и РС7; РАО-РА7, РВО-РВ7, РСО-РС7, PDO-PD7 - 32 линии ввода-вывода, объединены в 4 восьмиразрядных порта (PORTA, PORTB, PORTC, PORTD). PORTA, PORTB, PORTC, PORTD могут использоваться как стандартные двунаправленные порты ввода-вывода либо для передачи сигналов других устройств микроконтроллера. Альтернативные функции PORTA: передача аналоговых сигналов через мультиплексор на вход АЦП. Альтернативные функции PORTB: Рис.16. Структурная схема микроконтроллера АТ90 S 8535. РВО и РВ1 - внешние входы ТО и Т1 таймеров 0 и 1 соответственно, РВ2 и РВЗ - входы AINO и AIN1 аналогового компаратора, остальные сигналы синхронного последователь- ного интерфейса SPI (PB4 - SS, PB5 - MOSI, PB6 - MISO, РВ7 - SCK). Альтернативные функции PORTC: PC6 и РС7 - вход и выход вспомогательного генератора таймера 2. Альтернативные функции PORTD: PDO и PD1 - сигналы RXD и TXD асинхронного последовательного интерфейса UART соответственно, PD2 и РВЗ сигналы внешних прерываний INTO и INT1, PD4-PD7 - сигналы ОС1В, OCIA, TCP, OC2 таймеров 1 и 2. |
Последнее изменение этой страницы: 2019-10-24; Просмотров: 175; Нарушение авторского права страницы