Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Звіт з мікропроцесорної практики.docx
Скачиваний:
12
Добавлен:
16.05.2015
Размер:
137.53 Кб
Скачать

Структурна схема ацп

Цифро-аналоговий перетворювач (англ. DAC) — пристрій для перетворення цифрового (як правило двійкового) сигналу на аналоговий. Пристрій, що виконує зворотну дію називається аналогово-цифровим перетворювачем (АЦП)

Як правило ЦАП отримує на вхід цифровий сигнал в імпульсно-кодовій модуляції (англ. PCM — pulse-codemodulation). Перетворення різних стиснутих форматів в PCM виконується відповідними кодеками.

ЦАП використовується завжди, коли необхідно перетворити сигнал з цифрового формату в аналоговий. ЦАП використовується в системах керування технологічними процесами, програвачах CD/DVD, звукових картах ПК.

Схематичнезображення 8-бітного ЦАП

12. Компаратор. Програмування в різних режимах

Компаратор– цеелементпорівняння, який широко використовується в системах контролю та автоматичного керування. Компараторивідносяться до елементівімпульсноїтехніки. [1] Компаратор, виконаний на базіопераційногопідсилювача (ОП), порівнюєвимірюванунапругуUвх, яка подається на один ізвходів (переважно на інвертувальний), із опорною напругою (наперед заданою) Uоп, яка подана на іншийвхід. Опорнанапруга є незмінною в часі, додатньоїчивід'ємноїполярності, а вхіднанапруга — змінюється. Коли Uвх=Uопвихіднанапруга ОП змінюєсвій знак на протилежний (з U+вих.макс на U-вих.максчинавпаки). Тому компаратор маєщеназву «нуль-орган», оскількизмінаполярностівихідноїнапруги (перемикання) відбувається за умови, щоuвх- Uоп=0, де Uоп — задана напруга.

Є майже в кожній AVR , така корисна приблуда як аналоговий компаратор . Це вже майже стандартний пристрій і зустрічається дуже часто в безлічі різних контролерів. Навіть у стародавньому, як гівно мамонта, АТ89С2051 він вже є. Штучка прикольна, дозволяє порівнювати два аналогових сигналу і виносити свій вердикт 0 перший більше другого, 1 другий більше першого.

Застосувати його можна, наприклад, щоб відстежувати рівень заряду акумулятора за осіданні напруги.Схема найпростіша - стабілітрон створює опорна напруга, яке завжди одіннаковом, а напруга з резистивного дільника залежить від вхідної напруги.

Наприклад, на вході у нас 8 вольт. Зі стабілітрона, розрахованого на 3.3 вольта, виходить завжди одне і те ж напруга - 3.3 вольта. А з симетричного резистивного дільника виходить половина напруги тобто 4 вольта. 4 це більше ніж 3.3, (3.3 - 4 = -0.7 результат менше нуля) з компаратора виходить 0

Тепер якщо просяде батарейка і напруга знизиться до 6 вольт, то з дільника буде вже 3 вольти, а з опорного як було 3.3 так і залишилося. Зате тепер на компараторе ситуація докорінно змінилася - 3 менше ніж 3.3 (3.3 - 3 = 0.3 результат більше нуля), а значить на виході у нього буде 1

Ось так, наприклад, можна легко і просто стежити за годує напругою і видавати сигнал тривоги якщо батарейка сяде.

Налаштування компаратора в контролері AVR ATMega16 Для інших моделей AVR все дуже і дуже схоже, просто мені так зручніше. Якщо буде утруднення запитаєш в коментах.  Мега16 має на борту компаратор, з входами AIN0 (прямий вхід) і AIN1 (інверсний вхід)Щоб компаратор заробив його висновки потрібно підключити на вхід ( DDR = 0) і відключити підтяжку до одиниці ( PORT = 0).

Регістр конфігурацій компаратора ACSR Біти:

  • ACD включення компаратора 0 включений, 1 вимкнений. По дефолту там нуль, а значить при старті компаратор включений.

  • ACBG - підключення до прямого входу компаратора внутрішнього джерела опорного напруги ( ІОН ) на 1.22 + (-) 0.05V. Якщо 0 то ІОН не підключений.

  • ACO - біт результату. Власне, це і є вихід компаратора.

  • ACI - прапор переривання. Я думаю, що ти вже звик до того, що в AVR є переривання на кожен чих.Компаратор не виняток. Встановлюється за подією, скидається після відходу на обробник або програмно, як завжди, записом в нього 1.

  • ACIE - де є переривання там повинен бути і біт дозволу. Це він і є. Встановивши в 1 ми дозволяємо переривання від компаратора. По дефолту, природно, нуль.

  • ACIC - підключення компаратора до схемою захоплення таймера1 . При попаданні сигналу на схему захоплення поточне значення з таймера тут же тирітся до спеціального регістр захоплення, а таймер продовжує вважати далі. А в прив'язці до компаратору це зручно коли потрібно вимірювати тривалості сигналів.

  • Біти ACIS1: ACIS0 визначає умова виникнення переривання від компаратора:

    • 00 - будь-яка зміна на вході.

    • 01 - зарезервовано для наступних поколінь

    • 10 - перехід з 1 на 0

    • 11 - перехід з 0 на 1

От за що люблю АТМегі так це за фарш! Навіть свій власний джерело опорного напруги є. Так що зі схеми зі стабілітроном можна сміливо викинути все, що стосується стабілітрона :) Залишивши тільки дільник, ну і підібравши плечі резисторного дільника так, щоб отримати напругу на виході трохи вище ніж 1.22V.  Мало того, якщо в контролері є АЦП, то на висновок AIN1 можна підключити БУДЬ вхід АЦП. Нереально круто! Для того, щоб це зробити потрібно:

  • У регістрі SFIOR (регістр спеціальних функцій) виставити біт ACME (начебто так ракети називалися в мультику про койота і страуса ;))

  • Вимкнути АЦП , скинувши біт ADEN в регістрі налаштувань АЦП ( ADCSRA )

  • У регістрі ADMUX в розрядах MUX2: MUX1: MUX0 вказати номер входу АЦП.

13. Таймери/лічильники мікроконтролерів сімейства 8051.

У базових моделях сімейства є два програмованих 16-бітних таймери /лічильники (T/C0 і T/C1), які можуть бути використані як таймер, так і як лічильники зовнішніх подій. У першому випадку вміст відповідного таймера/лічильника (Т/С) інкрементується в кожному машинному циклі, тобто через кожні 12 періодів коливань кварцового резонатора, в другому воно інкрементується під впливом переходу з 1 в 0 зовнішнього вхідного сигналу, що подається на відповідний (T0, T1) вивід мікроЕОМ 8051. Оскільки на розпізнавання періоду потрібні два машинних цикли, максимальна частота підрахунку вхідних сигналів дорівнює 1/24 частоти резонатора. На тривалість періоду вхідних сигналів обмежень зверху немає. Для гарантованого прочитання вхідний сигнал повинен утримувати значення 1, як мінімум, протягом одного машинного циклу мікроЕОМ.

Для керування режимами роботи Т/С і для організації їх взаємодії з системою переривань використовуються два регістри спеціальних функцій (TMOD і TCON), опис яких наведено нижче.

Таблиця 11 - Регістр режиму роботи таймера/лічильника

Символ

Позиція

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

GATE

TMOD.7 для Т/С1 і TMOD.3 для Т/СО

Управління блокуванням. Якщо біт встановлено, то таймер/лічильник "x" дозволений до тих пір, поки на вході "lNTx" високий рівень і біт управління "TRx" встановлено. Якщо біт скинутий, то Т/С дозволяється, як тільки біт управління "TRx" встановлюється

С/Т

TMOD.6 для T/C1 і TMOD.2 для Т/СО

Біт вибору режиму таймера або лічильника подій. Якщо біт скинутий, то працює таймер від внутрішнього джерела сигналів синхронізації. Якщо встановлено, то працює лічильник від зовнішніх сигналів на вході "Tx"

M1

TMOD.5 для T/C1 і TMOD.1 для Т/СО

Режим роботи

M1

M0

 

0

0

Таймер ВЕ48. "TLx" працює як 5-бітний дільник

0

1

16 бітний таймер/лічильник. "THx" і "TLx" увімкнений послідовно

1

0

8-бітнийавтоперезавантажуваний таймер/лічильник. "THx" зберігає значення, яке має бути перезавантажена в "TLx" кожного разу пвсля переповнення

1

1

Таймер/лічильник 1 зупиняється. Таймер/лічильник 0: TLO працює як 8-бітний таймер/лічильник, і його режим визначається керуючими бітами таймера 0. TH0 працює тільки як 8-бітний таймер, і його режим визначається керуючими бітами таймера 1

M0

TMOD.4 для Т/С1 і TMOD.0 для Т/СО