Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Кофанов_ЦП, ч. 2 (КЛ_ел.варіант).docx
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
3.69 Mб
Скачать

8.5. Інтегральний аналоговий компаратор у складі мк avr

На виході ОП загального призначення встановлюються фіксовані рівні напруги ±Uн, що визначаються напругами джерел живлення. Через те, що такі величини напруги не збігаються з логічними рівнями цифрових пристроїв, для їх узгодження доводиться застосовувати перетворювачі рівня. Цей недолік усунуто в спеціалізованих ІС – інтегральних аналогових компараторах, в яких вихідний ключовий каскад ОП виконується по такій самій схемі, як і в цифрових ІС, тому на виході формуються рівні логічних 0 та 1.

Прикладом є спеціалізований АК у складі МК AVR (рис. 5,а). На прямий та інверсний його входи подаються сигнали від виводів МК відповідно AIN0 і AIN1 (Analog Comparator Input), що є альтернативними функціями виводів PB2, PB3 порту В, якщо останні сконфігуровано як входи (DDRB2, DDRB3 = 0) та вимкнено внутрішні підтягувальні резистори (записом PORTB2, PORTB3 = 0). На прямий вхід можна подати також опорну напругу Uоп від внутрішнього джерела опорної напруги (ДОН) сигналом ACBG (Analog Comparator Bandgap Select – Вибір прямого входу АК): при ACBG = 0 електронний перемикач S1 з’єднує прямий вхід зі входом AIN0, а при ACBG = 1 – з ДОН. Величина опорної напруги Uоп є фіксованою і становить 1,23 В (у т.ч. для моделі ATme-ga8515) або 1,10 В, тому в разі потреби інше значення Uоп слід встановлювати від зовнішнього джерела зі входів AIN0 або AIN1.

Рис. 5. Інтегральний аналоговий компаратор (а) та його часові діаграми (б)

АК живиться від загального однополярного джерела +VCC, яке по ввімкненні МК за умовчанням подається на АК сигналом ACD = 0 (Analog Comparator Disable – Вимикання АК). У разі потреби, наприклад, з метою енергозаощадження, АК можна вимкнути від'єднанням його від джерела живлення електронним ключем S2 шляхом запису ACD = 1.

Швидкодію АК, як і цифрових пристроїв, зручно характеризувати часом затримки поширення tз.п – інтервалом (рис. 5,б), що у фірмовій документації позначається як tACPD (Analog Comparator Propagation Delay – затримка поширення сигналу в АК) і наводиться для найбільшого з проміжків переходу вихідної напруги до лог.0 або лог.1. Швидкодія спеціалізованих ІС аналогових компараторів на один-два порядки вище, ніж АК, побудованих на ОП загального призначення. Для АК у складі МК AVR максимальна затримка становить tACPD = = 500 нс при напрузі живлення VCC = 4 В.

8.6. Модуль аналогового компаратора

Розглянутий АК входить до складу модуля (рис. 6,а), який керується регістром ACSR (табл. Х.1). Його біти ACD та ACBG, як вже зазначалося, керують вимиканням АК (ключ S2) і прямим входом (перемикач S1). У режимі детектора рівня на прямий вхід подається опорна напруга Uоп, а на інверсний – вхідний аналоговий сигнал u. На ділянках часової діаграми, де вхідний сигнал u перевищує рівень опорної напруги Uоп, на виході u встановлюється рівень лог.0, інакше результатом порівняння буде вихідний рівень лог.1 (рис. 6,б). Цей результат зберігається в біті АСО як стан виходу АК і надходить до блоку захоплення Т/Л1. Проте за скинутого біта ACIC = 0 АК залишається роз'єднаним з модулем Т/Л1, а для з'єднання з його блоком захоплення потрібно встановити біт ACIC = 1. Це дозволяє за допомогою Т/Л1 вимірювати тривалості потрібних інтервалів аналогового сигналу.

Рис. 6. Модуль аналогового компаратора, його регістр керування і стану ACSR (а) та часові діаграми перемикання (б)

За результатом порівняння в модулі АК може бути також згенеровано запит на переривання. Формувач прапора запиту переривання є детектором фронтів за негативним та позитивним перепадом вихідної напруги. Бітами ACIS[1:0] (табл. Х.2) вибирається імпульс за одним з цих перепадів або за будь-яким перепадом (див. рис. 6,б). Вибраний імпульс фіксується в біті ACI як прапор запиту на переривання. Маскою переривання від АК є біт ACIЕ, за встановлення якого прапор АСІ надходить до модуля переривань. Як тільки відбувається перехід до підпрограми обробки переривання (зрозуміло, що за наявності загального дозволу: якщо встановлено біт І в регістрі SREG), прапор, як звичайно, скидається апаратно. Слід зауважити, що під час налаштування АК зміною бітів ACD та ACIS[1:0] переривання від АК має бути заборонено.

Таблиця Х.1 – Біти РВВ керування і стану АК ACSR

Біт

Назва та призначення

ACD

Analog Comparator Disable – Вимикання АК (0 – АК увімкнений, 1 – вимкнений)

ACBG

Analog Comparator Bandgap Select – Вибір прямого входу АК: 0 – з’єднано зі входом AIN0, 1 – з’єднано з внутрішнім ДОН

ACO

Analog Comparator Output – Вихід АК

ACI

Analog Comparator Interrupt Flag – Прапор переривання від АК

ACIE

Analog Comparator Interrupt Enable – Дозвіл переривання від АК

ACIC

Analog Comparator Input Capture Enable – З'єднання АК з блоком захоплення Т/Л1: 0 – роз'єднаний, 1 - з'єднаний

ACIS1:0

Analog Comparator Interrupt Mode Select – Вибір умови виникнення переривання від АК (табл. Х.2)

;***** Вимкнення аналогового компаратора

LDIO ACSR,(1<<ACD) ; LDIO @0,@1 - Завантаження байта: @0 <- @1

Таблиця Х.2 – Вибір умови виникнення переривання від АК

ACIS1

ACIS0

Умова виникнення переривання

0

0

Будь-яка зміна стану виходу АК

0

1

Зарезервовано (код не використовується)

1

0

Зміна стану виходу АК з 1 на 0

1

1

Зміна стану виходу АК з 0 на 1

Інші різновиди модуля АК відрізняються від розглянутого неістотно. Так, з метою заощадити енергоспоживання в окремих моделях МК передбачено відключення цифрових буферів на виводах PB2, PB3 порту В, якщо використовуються альтернативні функції цих виводів – аналогові входи AIN0 і AIN1. Крім того, на інверсний вхід АК можна подати аналоговий сигнал з будь-якого входу АЦП (природно, в моделях МК, що мають АЦП), якщо модуль АЦП вимкнено.

78