МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах
РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ" ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах Гендерна антидискримінаційна експертиза може зробити нас моральними рабами ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів Контакти
Тлумачний словник |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ADC Control and Status Register (ADCSR)
Рис. 11.2 - Регістр керування й стани АЦП (ADCSR)
Таблиця 11.1 Короткий опис бітів регістра ADCSR
Біт 7 - ADEN (ADC Enable). Дозвіл роботи АЦП. Перед початком використання АЦП потрібно дозволити його роботу. Для цього необхідно записати лог. «1» у розряд ADEN регістра ADCSR. Причому якщо АЦП буде заблоковано під час циклу перетворення, то перетворення завершено не буде у регістрі даних АЦП залишиться результат попереднього перетворення. Біт 6 - ADSC (ADC Start Conversion). Запуск перетворення. Здійснюється установкою в «1» розряду ADSC регістра ADCSR, а сам цикл перетворення починається по першому наростаючому фронті тактового сигналу після установки цього розряду. Тривалість циклу становить 13 тактів; вибірка й запам'ятовування вхідного сигналу здійснюється протягом перших 1.5 такту. Через 13 тактів перетворення завершується, розряд ADSC апаратно скидається в «0» (у режимі одиночного перетворення), і результат перетворення зберігається в регістрі даних АЦП. Біт 5 - ADFR (ADC Free Running Select). Вибір режиму роботи. Якщо розряд ADFR встановлений в «1», АЦП працює в режимі безперервного перетворення. У цьому режимі запуск кожного наступного перетворення здійснюється автоматично після закінчення поточного. Якщо ж розряд ADFR скинутий в «0», АЦП працює в режимі одиночного перетворення й запуск кожного перетворення здійснюється по команді користувача. Біт 4 - ADIF (ADC Interrupt Flag). Прапорець переривання. Встановлюється по закінченні процесу перетворення й запису результату перетворення в регістрі даних АЦП. Як і прапорці інших переривань, прапорець ADIF скидається апаратно при запуску підпрограми обробки переривання від АЦП або програмно - записом у нього лог. «1». Біт 3 - ADIE (ADC Interrupt Enable). Дозвіл переривання по закінченні перетворення. Для виникнення переривання, прапорець I регістра SREG також повинен бути встановлений в «1». Біти 2-0 - ADPS2...ADPS0 (ADC Prescaler Select Bits). Вибір коефіцієнта розподілу тактової частоти. Тактовим сигналом модуля АЦП є сигнал із переддільника, на вхід якого, у свою чергу, надходить тактовий сигнал мікроконтролера. Коефіцієнт ділення переддільника й, відповідно, тривалість перетворення, визначається станом розрядів ADPS2...ADPSO регістра ADCSR (табл.11.2). Таблиця 11.2 Задання коефіцієнта ділення переддільника АЦП
Найбільша точність перетворення досягається, якщо тактова частота модуля АЦП перебуває в діапазоні 50...200 кГц. Відповідно коефіцієнт ділення переддільника рекомендується вибирати таким, щоб тактова частота модуля АЦП перебувала в зазначеному діапазоні. Якщо АЦП працює в режимі безперервного перетворення, новий цикл почнеться відразу ж після запису результату в регістри даних. В режимі одиночного перетворення нове перетворення може бути запущено відразу ж після скидання розряду ADSC (до збереження результату поточного перетворення). Однак реально цикл перетворення почнеться не раніше ніж через один такт після закінчення поточного перетворення. Часові діаграми, що ілюструють сказане, наведені на мал.11.3. При написанні програм необхідно враховувати одну особливість: для першого після включення АЦП перетворення потрібно на 12 тактів більше, ніж для всіх наступних. Це пов'язано з тим, що при запуску першого перетворення спочатку виконується одно «холосте» перетворення, яке ініціює АЦП (див. мал.11.4). Розряд ADSC у цьому випадку скидається тільки після закінчення робочого перетворення. Таким чином, тривалість перетворення залежить від режиму роботи АЦП і від порядкового номера перетворення. Відповідні дані наведені в табл.11.3 (нумерація циклів - згідно Рис.11.3 і 11.4). а)
б)
Рис. 11.3 - Часові діаграми роботи АЦП: а - режим одиночного перетворення, б - режим безперервного перетворення
Рис. 11.4 - Часові діаграми роботи АЦП при першому перетворенні (режим одиночного перетворення)
Таблиця 11.3 Тривалість перетворення АЦП
Як уже було сказано, результат перетворення зберігається в регістрі даних АЦП. Оскільки АЦП - 10-розрядний, цей регістр фізично розміщений у двох регістрах введення/виведення ADCH:ADCL, доступних тільки для читання (рис.11.5). Ці регістри розташовані за адресами $05:$04 (адреси в адресному просторі ОЗП відповідно $25:$24) і при включенні живлення містять значення «$0000». Звертання до цих регістрів (для одержання результату перетворення) повинно виконуватися в певній послідовності: спочатку необхідно прочитати регістр ADCL, а потім ADCH. Ця вимога пов'язана з тим, що після звертання до регістра ADCL процесор блокує доступ до регістрів даних з боку АЦП доти, поки не буде прочитаний регістр ADCH. Завдяки цьому можна бути впевненим, що при читанні регістрів в них будуть перебувати складові того самого результату. Відповідно, якщо чергове перетворення завершиться до звертання до регістра ADCH, результат перетворення буде загублений. Керування вхідним мультиплексором модуля АЦП здійснюється за допомогою регістра ADMUX, розташованого за адресою $07 ($27). Формат цього регістра наведений на рис.11.6. Читайте також:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|