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

курсовая работа

2.1 Вибір мікроконтролера та огляд його архітектури

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

Розробнику мікропроцесорних пристроїв приходиться вирішувати ряд характерних задач: на якому процесорі будувати систему, які периферійні пристрої (таймери, послідовні і паралельні порти, АЦП, ЦАП, і т. д. ) вибрати, який блок живлення, скільки коштує розробка.

До недавнього часу у розробників не було широкого вибору. Сімейство однокристальних мікро-EОM Intel 8051, здавалось, перекривало по можливостям задачі, які найбільш часто зустрічаються.

Сьогодні на ринку зявився цілий ряд фірм зі своїми пропозиціями до однокристальних восьмирозрядних мікро - EОM. В першу чергу це мікро - ЕОМ сімейства Z86 фірми Zilog, МС 68 (Motorola), РІС 16/17 (Microchip). Менш відомі - мікро - ЕОМ ST62 (Thomson) та СОР800(National).

Для того, щоб вибрати з цього різноманіття найбільш вдалу базу для майбутнього мікропроцесорного пристрою, необхідно мати порівняльні характеристики всіх вище перерахованих однокристальних мікро - ЕОМ. Однак кінцевий вибір залежить від багатьох факторів. В першу чергу, це привязаність розробника чи традиції, далі - складність вирішуваної задачі ціна однокристальної мікро - ЕОМ.

Цікаве опитування було проведено серед відвідувачів сайту «Телесистеми». Учасники могли відповісти на питання: “Якому мікроконтролеру ви віддаєте найбільшу перевагу?“ Голоси розподілилися таким чином (таблиця 2.1): найбільш популярними стали МК архітектура AVR ( розробка Atmel) і класичної архітектури MCS-51 (розробка Intel).

Популярна також структура PIC, розроблена Microchip. Малопопулярні МК фірми Zilog типу Z8 -- виключно із-за одноразової структури програмування. Технічні параметри приблизно однакові, показники надійності -- теж. Залишаються тільки міркування чисто фінансового характеру. І ось тут відмінності істотні. Наприклад, ціна МК фірми Intel, в 2, а то і в 3 рази вище за ціну МК фірми Atmel.

Таблиця 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].

Делись добром ;)