скачать рефераты

скачать рефераты

 
 
скачать рефераты скачать рефераты

Меню

Мікропроцесорний АЦП порозрядного врівноваження із ваговою надлишковістю, що калібрується скачать рефераты

p align="left">Таблиця 2.1 - Статистика опитування на сайті http://www.telesys.ru

Мікроконтролер

Кількість голосів

АСІ

3 (0%)

AVR

309 (29%)

MCS-51

220 (21%)

PIC

317 (30%)

Z8

35 (3%)

Z80

21(2%)

Інший

60 (5%)

Кращий мікроконтролер -- DSP

33 (3%)

Ненавиджу мікроконтролери

41(3%)

Фірма Atmel запропонувала цікаву серію AVR, яка миттєво знайшла підтримку у радіоаматорів. У МК серії AVR використовуються принципи так званої RISC архітектури, коли пам'ять програм і пам'ять даних, з якими програма оперує, не тільки розділені фізично, але ще мають і різні канали зв'язку з ядром (різні шини). Окрім цього, є ще одна цікава особливість, яка називається конвеєризацією. Конвеєризація дозволяє одночасно і виконувати команду, і готувати до виконання наступну. Гарвардська архітектура, а також конвеєризація і деякі інші спеціальні заходи дозволяють виконувати інструкції дуже швидко -- за один машинний цикл.

МК серії AVR мають в своєму складі компаратори, АЦП, пристрої ШІМ, послідовні порти вводу/виводу. Звичайно, різні типономінали включають різні пристрої, але їх набір на сьогоднішній момент є нормою.

Таким чином вибираємо МК фірми Atmel [7].

Для вибору мікроконтролера потрібно враховувати його технічні характеристики, такі як:

швидкодія мікроконтролера;

наявність потрібної периферії;

число ліній введення-виведення;

споживану потужність.

Мікроконтролер, який відповідає даним параметрам належить до сімейства AVR. АVR -- це нове сімейство 8-розрядних RISC-мікроконтролерів фірми Atmel. Ці мікроконтролери дозволяють вирішувати безліч задач убудованих систем. Вони відрізняються від інших розповсюджених у даний час мікроконтролерів більшою швидкістю роботи, більшою універсальністю. Швидкодія даних мікроконтролерів дозволяє в ряді випадків застосовувати їх у пристроях, для реалізації яких раніше можна було застосовувати тільки 16-розрядні мікроконтролери, що дозволяє відчутно знизити ціну готової системи. Крім того, мікроконтролери АVR дуже легко програмуються за допомогою компілятора мови асемблера.

Фірма Atmel випускає великий спектр мікроконтролерів серед яких із потрібними параметрами можна визначити модель AT90S2333.

AT90S2333 - економічний 8-бітовий КМОН МК, побудований з використанням розширеної RISC архітектури AVR. Виконуючи по одній команді за період тактової частоти, що дозволяє розробникам створювати системи оптимальні по швидкості і споживаній потужності. У основі ядра AVR лежить розширена RISC архітектура, об'єднуюча розвинений набір команд і 32 регістри загального призначення. Всі 32 регістри безпосередньо підключені до АЛП, що дає доступ до будь-яких двох регістрів за один машинний цикл.

Подібна архітектура забезпечує десятиразовий виграш в ефективності коду в порівнянні з традиційними CISC МК.

AT90S2333 пропонує наступні можливості: 2 Кбайт - пам'ять з підтримкою внутрішнього системного програмування, 128 байт EEPROM, 20 ліній I/O загального призначення, 32 робочих регістра загального призначення, два універсальні таймер/лічильники з режимами порівняння, внутрішні і зовнішні переривання, програмований послідовний UART, 6-ти канальний, 10-ти розрядний АЦП, програмований сторожовий таймер з вбудованим тактовим генератором і програмований послідовний порт SPI для завантаження програм в Flash пам'ять, а також, два програмно вибираних режиму економії енергоспоживання. Режим очікування «Idle» зупиняє CPU, але залишає функціонувати SRAM, таймер/лічильники, SPI порт і систему переривань. Режим економії енергоспоживання «Power Down» зберігає значення регістрів, але зупиняє тактовий генератор, відключаючи всю решту функцій мікроконтролера, аж до наступного зовнішнього переривання, або до апаратної ініціалізації.

МК виробляється з використанням технології незалежної пам'яті високої щільності фірми Atmel. Flash пам'ять на кристалі може бути перепрограмована прямо в системі через послідовний інтерфейс SPI або доступним програматором незалежної пам'яті. Об'єднуючи на одному кристалі вдосконалений 8-бітовий RISC процесор із Flash пам'яттю, AT90S2333 є потужним мікроконтролером, який дозволяє створювати ефективні та маловартісні пристрої.

AVR AT90S2333 підтримується повним набором програм і пакетів для розробки, включаючи: компілятори С, макроасемблери, внутрішньосхемні емулятори і набори для макетування.

Мікроконтролери сімейства AVR мають єдину базову структуру. Узагальнену структурну схему мікроконтролера AT90S2333 зображено на рисунку 2.1.

Рисунок 2.1 - Блок схема мікроконтролера AT90S2333

До складу мікроконтролера входять:

генератор тактового сигналу (GCK);

процесор (CPU);

постійний запам'ятовуючий пристрій для збереження програми виконаний за технологією Flash (FlashROM);

оперативний запам'ятовуючий пристрій статичного типу для збереження даних (SRAM);

постійний запам'ятовуючий пристрій для збереження даних, виконаний за технологією EEPROM, (EEPROM);

набір периферійних пристроїв для вводу/виводу даних і керуючих сигналів, і виконання інших функцій.

До складу процесора (CPU) входять:

лічильник команд (PC);

арифметико-логічний пристрій (ALU);

блок регістрів загального призначення (GPR, General Purpose Regіsters) і інші елементи.

Крім регістрів загального призначення в мікроконтролері маються регістри спеціальних функцій, що у сімействі AVR називаються регістрами вводу/виводу (І/O Regіsters, IOR). За участю цих регістрів здійснюються:

керування роботою мікроконтролера і окремих його пристроїв;

визначення стану мікроконтролера і окремих його пристроїв;

ввід даних у мікроконтролер й окремі його пристрої.

Кожному регістру присвоєне ім'я, пов'язане з функцією, яку виконує цей регістр. Мікроконтролер AT90S2333 має 20 регістрів вводу/виводу, які іменовані, як:

Port B (PB5..PB0) - Порт B є 6-бітовим двонаправленим портом вводу/виводу з внутрішніми підтягаючими резисторами. Вихідні буфери порту B можуть поглинати струм до 20мА. Якщо виводи PB0..PB5 використовуються як входи і ззовні встановлюються в низький стан, вони є джерелами струму, якщо включені внутрішні підтягаючі резистори.

Port С (PС5..PС0) - Порт С є 6-бітовим двонаправленим портом вводу/виводу з внутрішніми підтягаючими резисторами. Вихідні буфери порту С можуть поглинати струм до 20мА. Якщо виводи PС0..PС5 використовуються як входи і ззовні встановлюються в низький стан, вони є джерелами струму, якщо включені внутрішні підтягаючі резистори.

Port D (PD5..PD0) - Порт D є 8-бітовим двонаправленим портом вводу/виводу з внутрішніми підтягаючими резисторами. Вихідні буфери порту B можуть поглинати струм до 20мА. Якщо виводи PD0..PD7 використовуються як входи і ззовні встановлюються в низький стан, вони є джерелами струму, якщо включені внутрішні підтягаючі резистори.

RESET - вхід скидання. Утримання на вході низького рівня протягом двох машинних циклів (якщо працює тактовий генератор), скидає пристій.

Мікроконтролери сімейства AVR є пристроями синхронного типу. Дії, які виконуються в мікроконтролері, прив'язані до імпульсів тактового сигналу.

Як генератор тактового сигналу (GCK) використовуються:

внутрішній генератор із зовнішнім кварцовим чи керамічним резонатором (XTAL);

внутрішній RC-генератор (ІRC);

внутрішній генератор із зовнішнім RC-колом (ERC);

зовнішній генератор (ЕХТ).

У мікроконтролерів, які мають внутрішній генератор із зовнішнім резонатором. XTAL1 і XTAL2 є входом і виходом інвертуючого підсилювача, на якому можна зібрати генератор тактових імпульсів. Можна використовувати як кварцові, так і керамічні резонатори. Якщо сигнал генератора необхідно використовувати для управління зовнішніми пристроями, сигнал з виводу XTAL2 знімається через одиночний буфер. При подачі зовнішнього тактового сигналу вивід XTAL2 залишається непідключеним, а XTAL1 підключається до виходу зовнішнього генератора.

Процесор (CPU) формує адреса чергової команди, вибирає команду з пам'яті й організовує її виконання.

До складу процесора крім лічильника команд (PC), арифметико-логічного пристрою (ALU) і блоку регістрів загального призначення (GPR) входять:

регістр стану мікроконтролера SREG;

регістр-показник стека SP чи SPL і SPH.

Високопродуктивно AVR ALU з'єднано безпосередньо з усіма 32 швидкодіючими регістрами загального призначення. За один тактовий цикл ALU виконує операцію між регістрами цього реєстрового файлу. Операції ALU підрозділяються на три основні категорії: арифметичні, логічні і бітові [8].

2.2 Вибір додаткових елементів

Структурна схема АЦП порозрядного врівноваження містить в аналоговій частині «надлишковий» ЦАП, що використовується під час перетворення.

Число розрядів , задіяних у надлишковому ЦАП, природно, більше ніж у двійковому й визначається зі співвідношення:

. (2.1)

Так, для побудови АЦП 14-ти розрядної точності (=14) при б=1,618 потрібен ЦАП на =20 розряду коду "золотої пропорції". Незважаючи на збільшення розрядної сітки, швидкодія АЦП на основі НПСЧ не зменшується, а навпаки, може бути істотно збільшена. Зазначений ефект виникає внаслідок витрати частини надмірності ваг розрядів на автокомпенсацію динамічних похибок із сигналу, що компенсує [8].

Для роботи ЦАП використовується РПН, що забезпечує утворення кодових комбінацій, які створюють компенсуючий сигнал для компаратора в процесі порозрядного врівноваження. Основною складовою РПН є спеціальний регістр - мікросхема AM2504 [7], яка зображена на рисунку 2.2, яка призначена для побудови АЦП, що працюють по принципу послідовного наближення з числом розрядів до 12. Має в своєму складі 4 входи:

С - для подачі тактових імпульсів (спрацювання по зростанню тактових імпульсів), D - інформаційний вхід, Е - дозвіл перетворення та S - вхід “пуск“.

Робота мікросхеми показана на діаграмах C-DO, що зображена на рисунку 2.2.

Рисунок 2.2 - Мікросхема AM2504

При подачі на вхід S логічного 0 по спаду чергового імпульсу відбувається початкова установка тригерів регістра. На виході закінчення перетворення C0 з'являється логічна 1. Такий стан регістра зберігатиметься до тих пір, поки на вході S буде логічний 0.

Після встановлення на вході S логічної 1 перший спад імпульсу негативної полярності виробить запис в тригер регістра з виходами 12 і 12 інформації з входу D і встановить вихід 11 в стан 0, на виходах 10-1 і C0 буде логічної 1.

Спад чергового імпульсу негативної полярності виробить запис інформації з входу D в черговий тригер регістра і встановить наступний за ним вихід в стан 0. Таким чином, на виходах регістра по черзі з'являється логічний 0, вслід за ним - інформація з входу D.

Після запису інформації з входу D в останній тригер регістра (з виходом 1) на виході C0 з'являється логічний 0 і цей стан регістра фіксується до появи логічного 0 на вході S. Якщо вхід S з'єднати з виходом C0, поява логічного 0 на виході C0 по спаду чергового тактового імпульсу приведе до встановлення початкового стану регістра аналогічно імпульсу 0. В результаті мікросхема повторюватиме описаний вище цикл роботи.

Рисунок 2.3 - Часова діаграма роботи мікросхеми AM2504

Наявність входу Е дозволяє сполучати між собою мікросхеми для отримання регістрів послідовного наближення на більшу кількість розрядів, як показано на рисунку 2.4. Робота таких регістрів аналогічна роботі однієї мікросхеми.

Мікросхема дозволяє використовувати її як регістр послідовного наближення і з меншим, ніж на 12, числом розрядів, для чого для подачі сигналу на вхід S можна використовувати його з'єднання з будь-яким з виходів 1-11.

Рисунок 2.4 - З'єднання мікросхем AM2504 для збільшення кількості розрядів

2.3 Розробка загального алгоритму функціонування АЦП

АЦП порозрядного врівноваження перетворить аналоговий сигнал в цифровий за N кроків, де N -- розрядність АЦП. На кожному кроці визначається по одному біту шуканого цифрового значення, починаючи СЗР і закінчуючи МЗР. Послідовність дій за визначенням чергового біта полягає в наступному. На ЦАП виставляється аналогове значення, утворене з бітів, вже визначених на попередніх кроках; біт, який повинен бути визначений на цьому кроці, виставляється в 1, більш молодші біти встановлені в 0. Отримане на допоміжному ЦАП значення порівнюється з вхідним аналоговим значенням. Якщо значення вхідного сигналу більше значення на допоміжному ЦАП, то визначуваний біт отримує значення 1, інакше 0. АЦП цього типу володіють одночасно високою швидкістю і хорошою розрядністю.

Слід зазначити, що використання АЦП із ЦАП на основі НПСЧ у складі систем цифрової обробки аналогових сигналів також дає певні переваги перед двійковими перетворювачами інформації. Так, зменшений час врівноважування дозволяє підняти частоту дискретизації, збільшити кількість оброблюваних каналів при роботі в багатоканальному режимі. Незважаючи на спрощену технологію виготовлення аналогових вузлів, результуюча точність перетворення як ЦАП, так і АЦП на основі НПСЧ може бути досить високою при роздільності не менше 14-16 двійкових розрядів. Це досягається, зокрема, калібруванням ваг розрядів і корекцією статичних похибок, що здійснюється цифровим обчислювальним пристроєм. Причому даний пристрій може одночасно виконувати дві функції: калібрування похибок і перетворення НПСЧ у двійкову систему. Для виконання операцій безпосередньо з цифровими сигналами доцільно використовувати мікроконтролер. СП, -ЦАП, РПН і БК сукупно складають ядро АЦП - блок порозрядного врівноважування (БПВ). У БК передбачено можливість подачі сигналу керування Узв.

Задачею БПВ є перетворення аналогового сигналу з виходу ПВЗ в робочий код К(а), що формується у РПН. Для перетворення робочого коду К у двійковий код використовується окремий ЦОП. Причому на етапі виготовлення системи і компонування аналогових вузлів здійснюється високоточне вимірювання ваг розрядів АЦП. Отримані результати у вигляді двійкових кодів заносяться в БП і використовуються надалі для роботи. Для зв'язку ЦОП із каналами виведення двійкової цифрової інформації використовується послідовний або паралельний інтерфейс залежно від необхідної швидкості передавання інформації [9].

Граф-схему алгоритму функціонування АЦП системи наведено в додатку А. Тут: j - номер каналу; i - номер такту порозрядного врівноважування в БПВ; k - номер дискретизації; С - результат обчислень у ПК; В - операнд, якому призначаються значення кодів із ПЗП; К(ДА0) - код похибки нуля; Кi - код ваги i-го додатного розряду; - код ваги i-го від'ємного розряду. Причому у випадку НПСЧ (0,1) існує тільки один від'ємний розряд - знаковий; П - масив пам'яті в мікроконтролері, в якому фіксуються коди дискретизованих відліків аналогових сигналів. Значення цифрового сигналу у=1 відповідає режимові вибірки ПВЗ, у=0 - збереження. У процесі функціонування системи аналогові сигнали з входу подаються на ПВЗ. Дискретизовані відліки потім перетворюються в цифрові еквіваленти і надходять у ЦОП для відповідного оброблення. Причому на етапі проектування виміряються ваги розрядів -ЦАП, коди яких фіксуються в ПЗП. Надалі ці розряди вважаються "точними" і "стабільними". Водночас варто відзначити, що зазначений пристрій можна виконати, зокрема, на базі мікроконтролера.

Страницы: 1, 2, 3