бесплатные рефераты

Віртуальний вимірювальний комплекс на базі учбового лабораторного стенду EV 8031

На базі дискретних спеціалізованих приладів;

Спеціалізовані мікропроцесорні прилади;

Прилади за технологією "віртуальні інструменти";

Розглянемо ці напрямки більш докладно:

1.2.1. Портативні вимірювальні комплекси на базі дискретних спеціалізованих приладів

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

О промисловому (захищеному) виконанні говорити не приходиться. Вартість висока, надійність низька (велика кількість складових), функціональні можливості фіксовані й обмежені можливостями комплектуючих приладів. Модернізація й адаптація до об'єктів діагностики - дорогі, трудомісткі, у більшості випадків повною мірою просто нездійсненні. Використовуються, в основному, для оснащення лабораторних установок, проведення НИР ОКР і ін.

1.2.2. Спеціалізовані мікропроцесорні прилади

Аналізатори-збирачі. На сьогоднішній день це досить широка номенклатура приладів як вітчизняного, так і імпортного виробництва. Прилади дійсно портативні, багатоцільові, можуть бути у захищеному виконанні аж до забезпечення вимог по іскровзривобезпеки. В останній якості практично не мають альтернативи, але у всіх інших випадках на сьогоднішній день це вже далеко не кращий шлях рішення подібних задач. Справа в тім, що подібні прилади у всіх випадках являють собою, по суті, спеціалізовані "саморобні" портативні комп'ютери з убудованими пристроями вводу-виводу даних і унікальним програмним забезпеченням фірми-виробника. У кожного виробника подібні прилади є зовсім унікальними як по виконанню "у залізі", так і по програмному забезпеченні. Як комп'ютери, по більшості своїх технічних параметрів і сервісних можливостей вони не йдуть ні в яке порівняння з "звичайними" сучасними портативними комп'ютерами, тим більше з темпами їхнього безупинного удосконалювання і зниження вартості. Вартість приладів досить висока і на практиці може збільшуватися (навіть у рази) за рахунок комплектації відповідним програмним забезпеченням. Вартість програмного забезпечення практично завжди порівнянна з вартістю "заліза", а іноді і перевершує його. У цілому можна сказати так: річ гарна, іноді незамінна, але в більшості випадків далеко не краща на сьогоднішній день.

1.2.3. Прилади за технологією «віртуальні інструменти»

Формально термін означає "удавані прилади", власне кажучи, функціонально, це, звичайно, зовсім дійсні прилади і віртуальність їх складається тільки в тім, що окремо, як звичні дискретні прилади "у залізі" вони дійсно не існують. Реалізуються апаратно-програмним шляхом і базуються на трьох основних складовим:

Обчислювальні й апаратні можливості сучасних комп'ютерів, для переносних приладів - це Notebook;

Спеціалізовані мови програмування для задач обробки й аналізу сигналів;

Апаратні пристрої вводу-виводу спеціально розроблені для роботи під керуванням програм, написаних на вищезгаданих спеціалізованих мовах програмування.

Одне з найбільш вдалих і отримавших дуже широке поширення в усьому світі пропозицій по практичній реалізації даної технології створення приладів - апаратні пристрої вводу-виводу і спеціалізована мова графічного програмування LabVIEW фірми National Instruments, США. Обширнейшая бібліотека стандартних функцій обробки сигналів і створення інтерфейсу для користувача (вид приладу на моніторі), налагоджені драйвери взаємодії з апаратними пристроями, величезна номенклатура самих пристроїв вводу-виводу в сполученні з можливостями сучасних комп'ютерів дозволяють при мінімально можливих на сьогоднішній день витратах створювати в дуже короткий термін будь-які складні прилади, причому дуже високої якості. Це обумовлено тим, що всі основні складові подібного приладу (комп'ютер, системне ПО, пристрій вводу-виводу) - це фірмові вироби масового виробництва, протестовані виготовлювачем і гарантовані для забезпечення, що сопрягаются по всім необхідним параметрам, найбільш повного використання всіх можливостей кожного з названих компонентів. При цьому всі основні компоненти безупинно удосконалюються по своїх функціональних і технічних параметрах з повним збереженням наступності з попередніми версіями. Наприклад, раз уже створений в остаточному виді прилад можна переустановити на іншій, більш сучасний комп'ютер і він відразу почне працювати, наприклад, більш швидко без яких-небудь переробок самої програми приладу. З погляду габаритів приладів, навіть теоретично немає нічого рівного, оскільки в габаритах, наприклад, одна сучасного Notebook може бути реалізоване практично необмежена кількість різних приладів. З цим же зв'язані і вартісні показники подібних приладів. Наприклад, навіть один прилад типу стандартного вузькополосного спектроаналізатору у віртуальному виконанні буде коштувати в 1.5-2 рази дешевше, ніж у традиційному дискретному. З огляду на те, що за технологією віртуальних приладів у рамках разових витрат "на залізо" може бути реалізоване (і так на практиці завжди і відбувається) безліч приладів, вартість подібного рішення стає просто несоизмеримо малої в порівнянні з іншими способами реалізації. Оскільки технологія "віртуальних приладів" являє собою зовсім нову і, можна сказати, революційну технологію в приладобудуванні, вона дозволяє сполучити такі якості, що у процесі удосконалювання традиційних приладів, як правило, сполучити неможливо: краще, дешевше, швидше, надійніше. Розглянемо даний тип приладів більш докладно.

1.2.3.1. Віртуальні прилади фірми «Белвар»

Ця фірма пропонує користувачам цифрові логічні аналізатори у вигляді невеликих приставок до персонального комп'ютера. Наприклад АКС-3161, це професійна модель віртуального 16 - канального логічного аналізатору з частотою дискретизації 200МГц, виконана у вигляді приставки до ПК та підключається до LPT-порту комп'ютера. Має гнучки можливості захвату та відображення цифрового потоку даних, широкими можливостями по роботі з зовнішньою тактовою частотою. Має наступні технічні параметри:

· Внутришні частоти дискретизаії 1,25 кГц...200 МГц (17 ступенів)

· 16 каналів

· Буфер даних 131000 виборок на канал

· Режими запуску: по шаблону; по фронту; безперервний

· Цифровий регістратор: від 4 секунд до 1 часу

· Порогова напруга 1,0...2,4 В

· Споживча потужність 4,5 Вт (800 мВт у режимі очікування)

· Нестабільність частоти дискретизації 0,01%

· Вхідна напруга 0...7 В макс.

· Вхідна ширина смуги частот 40 МГц

· Вхідний імпеданс 100 кОм/8 пФ

· Габаритні розміри 150х86х26 мм

Зовнішній вигляд цього логічного аналізатору приведений на рис. 1.1

Рисунок 1.1 Зовнішній вигляд приставки до комп'ютера АСК-3161

Нижче на рис. 1.2 приведено вікно програми інтерфейсу користувача з діаграмою сигналів.

Рисунок 1.2 Вид деяких вікон ПО приставки до комп'ютера АСК-3161

АКС-3162 - віртуальний 16-канальний логічний аналізатор виконаний у вигляді плати розширення в ISA-слот комп'ютера та працює разом з осцилографічною плотою АСК-3101. Єдине для обох плат програмне забезпечення дозволяє синхронізувати і бачити на екрані одночасно 2 канали аналогової та 16 каналів цифрової інформації. Сполучення аналогових та цифрових функцій дозволяє використовувати систему як осцилограф змішаних сигналів для пошуку аналогових перешкод у цифрових схемах, аналізу фронтів, логічних рівнів та ін.

АКС-3162 має наступні технічні параметри:

· 16 каналів

· Мінімальний період виборок: 50 нс у реальному часі

· Максимальний період виборок 2,5 мс

· Запуск: будь-яка комбінація логічних рівнів на вході аналізатору, або синхронізуючий сигнал з плати осцилографу

· Можливість запису до запускаючої події 7872 відліку

· Довжина запису 8000 відліків на кожний канал

· Вхідний імпеданс 1 МОм/30 пФ

· Рівень спарцьовування запуску обираємий: ТТЛ або КМОП

Зовнішній вигляд цього логічного аналізатору приведений на рис. 1.3

Рисунок 1.3 Зовнішній вигляд приставки до комп'ютера АСК-3162

Нижче на рис. 1.4 приведено вікно програми інтерфейсу користувача з діаграмою сигналів.

Рисунок 1.4 Вид деяких вікон ПО приставки до комп'ютера АСК-3162

АКС-3166 - це більш потужний логічний аналізатор, має наступні технічні характеристики:

· 16 каналів

· Діапазон частот дискретизації 2 кГц…200 МГц

· Довжина запису 2М слова на канал

· Регулювання розміру предзапису та постзапису

· Діапазон установки порогів спрацьовування по входах ±2,5 В с дискретністю 20 мВ

· Режими запуску: при наявності шаблону даних, по тривалості шаблону даних, по фронту будь-якого біта даних, за шаблоном даних та/або по фронту будь-якого біту даних у різноманітних комбінаціях

· Інтерфейс зв'язку з комп'ютером USB 1.1 або LPT (EPP)

· Професійні вимірювальні щупи дозволяють легко і швидко здійснити підключення до контактів аналізуємої плати

Цей логічний аналізатор призначений для аналізу потоку цифрових даних одночасно по 16 каналам з частотою дискретизації до 200 МГц, а також може бути використаний у якості цифрового регістратору даних. Буфер 2М виборок на канал дозволяє забезпечити високу точність часових вимірів достатньо тривалих потоків даних. Гнучкий набір варіантів синхронізації та шаблонів запуску дозволяє визначити різноманітні збої у потоці даних, що приводять до порушення роботи апаратури. Даний аналізатор забезпечує нормальну роботу з апаратурою, яка має різні логічні порогові рівні вхідних сигналів, тому що пороги обираються користувачем.

Інтерфейс користувача програми складається з набору робочих панелей (вікон). Кожна панель має набір керуючих елементів (КЕ), які дозволяють користувачу впливати на роботу програми та індикаторів, що відображають необхідну інформацію. Більшість цих елементів є частиною стандартного інтерфейсу Windows і не потребують спеціальних пояснень по їх використанню.

Зовнішній вигляд цього логічного аналізатору приведений на рис. 1.5

Рисунок 1.5 Зовнішній вигляд приставки до комп'ютера АСК-3166

Для керування програмою користувач може також використовувати команди спливаючього меню головної панелі. АКС-3166 має зрозумілий та зручний інтерфейс, котрий може налагоджуватися користувачем. Нижче на рис. 1.6 приведено вікно програми інтерфейсу користувача з діаграмою сигналів.

Рисунок 1.6 Вид деяких вікон ПО приставки до комп'ютера АСК-3166

1.2.3.2. Віртуальні прилади фірми «Omega»

Логический анализатор Omega - Logic : використовується для запису аналізу послідовних та паралельних потоків обміну, а також генерації заданих цифрових послідовностей. Збудований на основі базового блоку Omega. Завдяки використанню ПЛІС пристрій має недосяжну для мікроконтролерних аналогів швидкодію та точність обробки даних. 4 режими запису дозволяють оптимально використовувати внутрішню пам'ять аналізатора. Наявність різноманітних вбудованих та користувальницьких засобів аналізу сигналів дає можливість швидко та ефективно оброблювати великі об'єми інформації. Цей аналізатор має наступні технічні параметри:

· Логічний аналізатор:

· Кількість каналів: 2, 4, 8

· Об'єм внутрішньої пам'яті: 128 КБайт (опціонально 512K)

· Режими запису: нормальний, адаптивний, дельта, з зовнішньою синхронізацією.

· Максимальна частота запису: 20 МГц.

· Стабільність задаючього генератора: +/-100ppm (опціонально +/-25ppm)

· Аналізатор протоколів: I2C, MicroWire, SPI, RS232, 1Wire, CAN ...

· Налагодження режимів відображення інформації (двійковий, десятковий, шістнадцятковий, символьний).

· Вбудована макромова аналізу і генерації послідовностей.

· Збереження даних у файли різних форматів.

· Генератор: 8 каналів, 128 КБайт пам'яті, максимальна частота - 20 МГц, однократний та циклічний режим.

· Логічний пробник - 16 каналів.

· Електричні параметри (з адаптером LA16):

· - Вхідний опір - 100 кОм

· - Вихідний опір - 100 Ом

· - Вхідна ємність - 10 пФ (без кабелю)

· - Напруга порогового рівня - 1.4В (TTL)

1.2.3.3. Віртуальні прилади фірми «National Instruments»

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

Розглядаючи новітні прилади збору даних цієї фірми, можна виділити наступні: це універсальній зовнішній пристрій збору даних USB 6008/6009, а також внутрішні плати збору даних М серії, що мають стандартній та поширений для звичайних ПК швидкий інтерфейс РСІ.

Розглянемо тепер більш детально технічні характеристики цих приладів:

USB 6008/6009 зображено на рис. 1.7.

· 8 каналів аналогового вводу, з дозволом 12 або 14 біт, частота оцифровки до 48 кГц;

· Гвитові термінали для підключення датчиків;

· Швидке plug-and-play підключення до ПК;

· Драйвери для ОС Windows, Mac OS X та Linux;

· Багатофункціональний ввід/вивід для проведення збору та збереження даних;

· Живлення по шині USB;

· Безкоштовне ПО для збору та збереження даних.

Рисунок 1.7 Зовнішній вигляд приставки до комп'ютера USB 6008/6009

Плати збору даних М серії зображено на рис. 1.8.

· До 32 аналогових входів, 4 виходів та 48 цифрових ліній;

· Дозвіл до 18 розрядів;

· Програмує мий вхідний діапазон;

· Аналоговий вивід до 2,8 МГц (16 розрядів);

· Високошвидкісний (до 10 МГц) ввід/вивід цифрових сигналів;

· У 5 разів покращена точність вимірів за рахунок нелінійної калібрування в усіх діапазонах;

· Повна підтримка LabVIEW та інструментального драйверу NI-DAQmx.

Рисунок 1.8 Зовнішній вигляд плати збору даних М серії

LabVIEW являє собою високоефективне середовище графічного програмування, у якому можна створювати гнучкі та масштабовані прикладні програми вимірів, керування та тестування з мінімальними часовими та грошовими затратами. Приклад прикладної програми вимірів, створеної у LabVIEW зображено на рис.1.9.

Рисунок 1.9 Зовнішній вигляд вікон прикладної програми вимірів,

створеної у LabVIEW

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

1.3 Порівняльний аналіз та висновки

Задачу реалізації ВВК аналогічного розроблювальному, можна вирішити декількома шляхами:

За допомогою спеціалізованих плат (реалізація на «твердій» логіці). Даний спосіб дозволяє мінімізувати як розміри, так і вартість апаратної частини, але при цьому зростають вимоги до ПК, тому що на нього лягає вся обробка вхідного сигналу.

За допомогою плат на «програмувальній» логіці. Даний спосіб дозволяє не тільки передбачити захист плати від позамежного рівня вхідного сигналу, але і перекласти частину його обробки на мікроконтролер плати, що дозволяє розвантажити ПК.

1.3.1 Короткі висновки

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

1.4. Зв'язок ВВК з IBM PC

Підключення ВВК до ПК можна здійснити використовуючи будь-який убудований інтерфейс. Коротке порівняння деяких з них приведено в табл. 1.

Таблиця 1.

Порівняння методів підключення ВIК

Системна магістраль ISA

Інтерфейс
Centronics

Інтерфейс
RS-232C

Швидкість обміну

Висока (до 5 Мбайт/с і вище)

до 100 Кбайт/с

115200 Кбiт/с

Довжина і тип лінії зв'язку з комп'ютером

Вбудовані ПС (лінія зв'язку відсутня)

До 2 м, багатопровідний кабель

До 15м, одиночний провід

Складність вузлів сполучення з ПК

Від малої до середньої

Від малої до середньої

Від середньої до високої

Додатковий конструктив

Не потрібний

Потрібний

Потрібний

Зовнішнє джерело живлення

Не потрібне

Потрібне

Потрібне

Формат і розрядність даних

Паралельний,
16 розрядів

Паралельний,
8 розрядів

Послідовний

Необхідність наявності драйвера

+

+

-

Кількість ПС, що підключаються до ПК

До 6

1

1

З погляду розроблювального ВВК найбільш привабливим виглядає інтерфейс RS-232.

1.4.1 Вибір інтерфейсу зв'язку

У розроблювальному ВВК зв'язок пристрою з ПК буде здійснюватися за допомогою COM порту (інтерфейс RS-232). Даний вид зв'язку дозволяє забезпечити достатню для роботи ВВК швидкість і при цьому є найбільш зручним з погляду ПО, тому що не вимагає спеціального драйвера. Розглянемо цей інтерфейс більш докладно.

2 ОБЗОР АПАРАТНОЇ ЧАСТИНИ

2.1 Лабораторный стенд EV8031

Рис. 1 Блок схема стенду EV8031

Вся логіка стенду реалізована на програмуємій логічній мікросхемі EPM7128STC100. Системний контроллер керує режимами роботи, виробу керуючих сигналів на ОЗП, регістри защіпки, динамічним світлодіодним індикатором, клавіатурою.

2.1.1 Системний контроллер

Системний контроллер зв'язаний з мікроконтроллером за допомогою шини данних AD0..7 та старших 4-х біт адресу A12..15. Коли мікроконтроллер виконує операцію читання/запису данних у зовнішню пам'ять спочатку на лінії AD0..7(мультиплексується із A0..7 на момент синхроімпульсу лінії ALE) та лінії A8..15 виводиться адрес комірки, молодші 8 біт та старші - відповідно. Після закінчення синхроімпульсу ALE на лініях AD0..7 з'являється 8 біт данних. Коли старший біт адресу дорівнює 1, системний контроллер залишає лінію nRCS у високому стані, і старші 4 біта адресу, разом із молодшим байтом адресу, який надійшов по лініям AD0..7 у період синхроімпульсу, тепер керують адресою пристрою котрому надсилається керуючий байт. Перелік адрес за якими розташовані керуючі слова пристроїв наданий у таблиці 2.1.

Таблиця 2.1.

Адрес

Тип цикла

B7

B6

B5

B4

B3

B2

B1

B0

Имя

Порты периферийных устройств

8xx0

Запись

[Порт A]

PA_REG

8xx1

Запись

[Порт B]

PB_REG

8xx2

Запись

[Порт C]

PC_REG

8xx3

Запись

x

x

x

x

x

TRISC

x

x

TRIS

ЖКИ

8xx4

Запись

Регистр команд ЖК индикатора

LCD_CMD

8xx5

Запись

Регистр данных ЖК индикатора

LCD_DATA

Последовательный порт

9xxx

Чтение

CTS

DSR

DCD

RI

KL3

KL2

KL1

KL0

US_REG

Cxx0

Запись

x

x

X

x

DTR

RTS

CFG1

CFG0

UC_REG

Индикатор и светодиоды

Axx0

Запись

[Регистр индикатора 0]

DISPLAY[0]

Axx1

Запись

[Регистр индикатора 1]

DISPLAY[1]

Axx2

Запись

<зарезервировано>

DISPLAY[2]

Axx3

Запись

<зарезервировано>

DISPLAY[3]

Axx4

Запись

DP3

DP2

DP1

DP0

BL3

BL2

BL1

BL0

DC_REG

Axx5

Запись

<зарезервировано>

EDC_REG

Axx6

Запись

LED7

LED6

LED5

LED4

LED3

LED2

LED1

LED0

LED_REG

Управление работой

Axx7

Запись

x

x

X

x

x

x

x

RUN

SYS_CTL

Совместимые регистры

Bxx0

Запись

[Регистр индикатора 1]

DISPLAYB

2.1.2 Зовнішня пам'ять ОЗП

Коли старший 15 біт адресу дорівнює 0 системний контроллер встановлює лінію вибору кристаллу ОЗП - nRCS у низький логічний рівень, а лінії nRRD та nRWR повторюють стани ліній nRD та nWR відповідно. Лінія RA14 повторює лінію A14 тільки у тому випадку якщо вибраний режим роботи стенда із мікроконтроллером AVR. У випадку роботи із мікроконтроллером 80C51 лінією буде керувати системний контроллер перші 16кбайт - коди інструкцій программи, другі 16кбайт - данні.

2.1.3 Порти вводу/виводу

Стенд має три 8-ми бітних портів вводу/виводу PORTA(лінії PA0..7), PORTB(лінії PB0..7), PORTC(лінії PC0..7). Порти PORTA та PORTB виконані на регістрах защіпках і працюють тільки на виход, а PORTC - у системному контроллері і може працювати як на вход так і на виход. Коли мікроконтроллер записує байт по адресу 8xx0(x - не впливають і можуть бути будь якими), системний контроллер встановлює лінію PACLK у високий стан. Регістр защіпка запам'ятовує лінії AD0..7 та повторює іх стан на своїх вихідних лініях - PA0..7. Аналогічно отримується доступ до портів PORTB та PORTC але доступ виконується за адресами 8xx1 та 8хх2 відповідно. За адресою 8хх3 знаходиться байт керування режимом роботи на вхід або на вихід, за відповідає біт 2. Якщо він дорівнює 0 порт працює на вхід, якщо 1 на вихід.

2.1.4 Порт послідовної передачі данних

Модуль послідовного зв'язку створений на мікросхемі приймача 1489, передавача 74НС04, мултиплексора каналу передачі (усередині системного контроллеру). Вибор каналу послідовної передачі забеспечується сигналами CFG1,CFG0 за адресою 9001h(см. таблицу 1). Програмне встановлення сигналів CFG0 у `1', а CFG1 у '0' формує вибір додаткового каналу послідовної передачі данних, гніздо X12. Додатковий послідовний канал має повний набір сигналів інтерфейсу RS-232C. Сам пристрій який реалізує послідовну прийом/передачу знаходиться у мікроконтроллері і називається UART або USART, його лінії RxD, TxD зв'язані із системним контроллером, а він в свою чергу може комутувати їх на 3 напрямки:COM1, COM2, RS485.

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

Стенд підтримує 2 типи мікроконтроллерів: мікроконтроллер AT89C51 із ядром і8031, та ATMega8515 із AVR ядром який і розглядається у данному документі. Для перемиканням між режимами підтримки першого або другого мікроконтроллеру, системний контроллер має лінію Х9(0 - AVR, 1 - i8031).

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

КМОП мікроконтроллер АТ8515 реалізований за AVR RISC архітектурою (Гарвардська архітектура із роздільною пам'яттю та роздільними шинами для пам'яті програм та даних) та сумісний за похідним кодом і тактуванню із 8-ми розрядними мікроконтролерами родини FVR. Виконуючи команди за один тактовий цикл, він забезпечує могутню систему команд із 32-ма 8-розрядними регістрами загального призначення та конвеєрне звернення до пам'яті програм. Шість із 32 регістрів можуть використовуватись як три 16-розрядних регістра-вказіника при косвенній адресації простору пам'яті. Виконання відносних переходів та команд виклику реалізується із прямою адресацією усіх 4К адресного простору. Адреса периферійних функцій міститься у просторі пам'яті вводу/виводу. Архітектура ефективно підтримує як мови високого рівня, так і програми на мовах асемблеру.

2.2.1 Архітектура AVR

Мікроконтроллер має 32 регістри загального призначення які безпосередньо підключені до АЛУ, це дозволяє виконувати більшість команд за один такт. Мікроконтроллер має 8 кбайт неодноразово-програмуємої пам'яті программ, 512 байт внутрішнього ПЗП, 512 байт внутрішнього ОЗП та інтерфейс який дозволяє розширити ций об'єм завдяки підключенню зовнішнього ОЗП, 4 - 8-ми бітних порта та 1 - 3-х бітний порт, 1 - 8-ми бітний таймер та 1 - 16 - бітний таймер, які мають зовнішні лінії синхронізації, переривання за переповненням та зрівненням. Також мікроконтроллер має зовнішні переривання, послідовний програмуємий приемопередавач, програмуємий “WatchDog” таймер із окремим RC-генератором, порт SPI та три програмуємі режими роботи єнергосбереження.

Рис 1. Блок схема мікроконтроллеру ATMega8515

2.2.2 Розподілення пам'яті мікроконтролера

Розподілення пам'яті мікроконтроллера показано на рис. 2.

Внутрішній ОЗП мікроконтроллеру розташований за адресою 0060h та закінчується 025Fh. Починаючи з адреси 0260h до FFFFh можна адресувати зовнішню пам'ять. На рис. 3 надана структурна схема підключення зовнішнього ОЗП до мікроконтроллеру.

Рис 2. Розподілення пам'яті мікроконтроллера.

Внутрішній ОЗП мікроконтроллеру розташований за адресою 0060h та закінчується 025Fh. Починаючи з адреси 0260h до FFFFh можна адресувати зовнішню пам'ять. На рис. 3 надана структурна схема підключення зовнішнього ОЗП до мікроконтроллеру.

Рис. 3 Структурна схема підключення ОЗП до мікроконтроллера

На відміну від внутрішньої пам'яті доступ до зовнішньої триває довше на 1 такт(або на 2 такти у залежності від налаштовувань). На рис. 4 подана

часова діаграма доступу до зовнішньої пам'яті:

Рис. 4 Часова діаграма доступу до зовнішньої пам'яті.

Робота зовнішнього СОЗП(SRAM) налаштовується за допомогою регістру MCUCR рис 5.

Рис. 5 Опис полів регістру MCUCR

Робота зовнішнього SRAM дозволяється встановленням біту SRE у регістрі MCUCR. За зрівняннями зі зверненням до внутрішньої пам'яті даних, звернення до зовнішньої пам'яті потребує додаткового циклу на кожний байт. Це означає, що для виконання команд LD, ST, LDS, STS, PUSH та POP потрібен додатковий тактовий цикл. Якщо стек розташований у зовнішній SRAM, то для переривання, виклику підпрограм та вертання потрібно буде два додаткових цикла, оскільки в стеку буде зберігатися та відновлятися двубайтовий лічильник команд. Якщо інтерфейс із зовнішньою пам'яттю використовується із станом чекання, то на кожний байт необхідно ще два додаткових тактових цикла. Це призводить до наступного ефекту. Командам пересилання даних необхідно два додаткових тактових цикла, тоді для обробки переривання, виклику підпрограми та при вертанні з підпрограми потрібно на чотири тактових циклу більше, ніж це вказано в описі системи команд.

Встановлений у 1 біт SRE дозволяє звернення до зовнішнього SRAM даних та переводить роботу портів А, С, ліній WR та RD на виконання альтернативної функції, також змінюється напрямок роботи портів. Після встановлення SRE у 0 звертання до зовнішньої пам'яті недозволяється, а напрямок роботи портів встановлюється у читання.

При встановленому у 1 SRW до циклу звертання до зовнішнього SRAM дозволяється один цикл чекання. При скиданні у 0 біті SRW звертання до зовнішнього SRAM виконується за 3 цикли. См. рис. 4 Цикл та звернення до зовнішнього SRAM без стану очікування, та рис. 6 із станом очікування.

Рис.6 Звернення до зовнішньої SRAM зі станом очікування

2.2.3 Порти вводу виводу

Порти вводу/виводу можуть робити на вхід та на вихід. За це відповідає відповідний регістр напрямку DDRx(x-назва порту A, B…). Також порт має регістр стану PORTx запис данних у який відображається на порт, якщо порт знаходиться у режимі видачі. А якщо порт працює у режимі читання цей регістр вмикає/вимикає підтягуючі резистори. Для читання порту використовується регістр PINx. Також більшість портів мають альтернативні функції і коли порт іх виконує, відповідні регістри DDRx, PORTx та PINx не впливають на роботу порта. На рис. 7 зображена блок-схема порта який немає альтернативної функції.

Рис. 7 Блок схема порта вводу/виводу

2.2.4 Переривання та обробка переривань

Найважливіша характеристика будьякого мікроконтроллера це - час відгуку на переривання. Відгук на виконання усіх дозволених переривань AVR складає мінімум 4 тактових цикла. Впродовж 4 тактових циклів вміст лічильника команд(2 байта) зберігається у стек, та вказівник стеку зменшується на 2. Вектор вказує перехід на підпрограму обробки переривання та цей перехід займає 3 тактових цикла. Якщо переривання виникає за час виконання багатоциклової команди, то команда закінчує виконання, а потім обслуговується переривання. Вертання з підпрограми обробки переривання (як і виклик підпрограми) займає 4 тактових цикла. Впродовж цих 4 циклів стан лічильника команд (2 байта) відновляється зі стеку та вказівник стеку збільшується на 2. Коли мікроконтроллер виходить з перервання, він завжди вертається у основну програму та виконує ще одну команду, перш ніж почати обслуговувати якесь відкладене переривання.

Відзначимо, що регістр статусу SREG не обробляється апаратними можливостями AVR, ані для переривань, ані для підпрограм.

При обробці підпрограм переривань, які потребують збереження SREG, збереження потрібно виконувати програмними засобами користувача. Для переривань, які запускаються статичними подіями (наприклад співпадання вмісту регістру зрівняння 1А із станом таймеру/лічильника1). Прапорець переривання встановлюється у момент виникнення події. Якщо прапорець скинутий, але умови виникнення переривання продовжують існувати, прапорець не буде встановлюватись до тих пір, доки ця подія не виникне знову.

2.2.5 Таймери

Мікроконтроллер має один 8-розрядний та один 16-розрядний таймери лічильники. Вони можуть тактуватися, як від внутрішнього, так і від зовнішнього генератора. Блок схеми таймерів зображена на рис. 8 та рис. 9. Кожний таймер має свій окремий попередній дільник із чотирма ступенями ділення: CK/8, CK/64, CK/256, CK/1024, де CK - це вхідний тактовий сигнал. Цей тактовий сигнал, за замовчуванням, з'єднаний із головним тактовим сигналом системи. Обидва таймери мають загальний регістр стану таймерів, у якому зберігаються такі прапори стану, як: переповнення, співпадання за зрівненням та захвату події. Встановлення дозволення/недозволення переривань виконується у регістрі масок переривань таймерів/лічільників TIMSK. При тактуванні таймеру/лічильника від зовнішнього генератора цей сигнал синхронізується із тактовою частотою CPU. Для запеспечення правильної синхронізації зовнішнього сигналу необхідно, щоб мінімальний час між двома вхідними тактовими тактовими циклами був не менш одного циклу внутрішнього тактового сигналу CPU. Зовнішній тактовий сигнал синхронізується за підніманням фронту внутрішнього тактового сигналу CPU. Точність таймерів росте зі зменшенням коєфіцієнту попереднього ділення. Аналогічним чином, високий коефіцієнт попереднього ділення зручно використовувати при реалізації функцій із низькою швидкістю виконання, або точної синхронізації рідко виникаючих дій. Оба таймери підтримують зрівнення.

2.2.6 Послідовний приємопередавач USART

Блок-схема передавача USART показана на рис. 10. Передача данних починається записом передаваємих данних у регістр данних I/O USART(UDR). Дані пересилаються з UDR у зсувний регісир передачі у наступних випадках:

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

Рис. 8 Блок схема 8-ми бітного таймеру мікроконтроллеру

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


© 2010 РЕФЕРАТЫ