Выбрать главу

Структурная схема аналогового компаратора изображена на рис. 2.45.

Рис. 2.45. Структурная схема аналогового компаратора

Аналоговый компаратор сравнивает входное напряжение на положительном входе РВ0 (AIN0) и отрицательном входе PB1(AIN1). Когда напряжение на положительном входе больше напряжения на отрицательном, устанавливается бит АСО (Analog Comparator Output). Выход аналогового компаратора можно установить на работу с функцией захвата таймера/счетчика 1. Кроме того, компаратор может вызывать свое прерывание. Пользователь может установить срабатывание прерывания по нарастающему или спадающему фронту или по переключению.

Рис. 2.46. Регистр управления и состояния аналогового компаратора (ACSR)

Бит 7 — ACD — запрещение аналогового компаратора. Когда этот бит установлен, питание от аналогового компаратора отключается. Для отключения компаратора этот бит можно установить в любое время. Обычно это свойство используется, если критично потребление процессора в холостом режиме и восстановление работы процессора от аналогового компаратора не требуется. При изменении бита ACD прерывания от аналогового компаратора должны быть запрещены сбросом ACIE в регистре ACSR. В противном случае прерывание может произойти во время изменения бита.

Бит 6 — в AT90S2313 зарезервирован и всегда читается как 0.

Бит 5 — АСО — выход аналогового компаратора. Бит АСО непосредственно «подключен» к выходу аналогового компаратора.

Бит 4 — ACI — флаг прерывания от аналогового компаратора. Этот бит устанавливается, когда переключение выхода компаратора совпадает с режимом прерывания, установленным битами ACIS1 и ACIS0. Программа обработки прерывания от аналогового компаратора выполняется, если установлен бит ACIE в 1 и установлен в 1 бит I в регистре состояния. ACI сбрасывается аппаратно при выполнении соответствующего вектора прерывания. Другой способ очистить ACI — записать во флаг логическую единицу.

Бит 3 — ACIE — разрешение прерывания ог аналогового компаратора. Когда установлен этот бит и бит I регистра состояния, прерывания от аналогового компаратора отрабатываются. Если бит ACIE = 0, прерывания запрещены.

Бит 2 — ACIC — захват по выходу аналогового компаратора. Если этот бит установлен, функция захвата таймера/счетчика 1 управляется выходом аналогового компаратора. При этом выход компаратора подключается непосредственно к схеме обработки захвата, предоставляя удобные средства подавления шума и выбора фронта, предусмотренные прерыванием захвата по входу. Когда бит очищен, схема захвата и компаратор разъединены. Чтобы компаратор мог управлять функцией захвата таймера/счетчика 1, должен быть установлен бит TICIE1 в регистре TIMCK.

Биты 1,0 — ACIS1, ACIS0 — выбор режима прерывания аналогового компаратора. Различные установки приведены в табл. 2.14.

2.10. Порты ввода/вывода

Порт B

Порт В 8-разрядный — двунаправленный для ввода/вывода.

Для обслуживания порта отведено три регистра: регистр данных PORTB ($18, $38), регистр направления данных — DDRB ($17, $37) и выводы порта В ($16, $36). Адрес выводов порта В предназначен только для чтения, в то время как регистр данных и регистр направления данных — для чтения и записи.

Все выводы порта имеют отдельно подключаемые подтягивающие резисторы. Выходы порта В могут поглощать ток до 20 мА и непосредственно управлять светодиодными индикаторами. Если выводы РВ0…РВ7 используются как входы и замыкаются на землю, то при включенных внутренних подтягивающих резисторов выводы являются источниками тока. Дополнительные функции выводов порта В приведены в табл. 2.15.

При использовании альтернативных функций выводов регистры DDRB и PORTB должны быть установлены в соответствии с описанием альтернативных функций. При использовании возможности внутрисхемного программирования микроконтроллера следует учитывать, что программатор использует для своей работы линии MOSI, MISO и SCK. Соответственно, устройства, подключенные к этим линиям, не должны мешать работе программатора.

Рис. 2.47. Регистр данных порта В — PORTB

Рис. 2.48. Регистр направления данных порта В — DDRB