Міністерство освіти та науки України
Національний університет “Львівська політехніка”
Кафедра САПР
Курсова робота
З курсу “Комп’ютери та мікропроцесорні системи”
ПРИСТРІЙ МІКРОПРОЦЕСОРНОЇ ОБРОБКИ
АНАЛОГОВОЇ ІНФОРМАЦІЇ
Керівник:
Завдання
на курсову роботу студента
Патереги Ю.І.
Тема роботи: Мікропроцесорна обробка аналогової інформації.
Термін здачі студентом закінченої роботи 20.XII.2006р
Вихідні дані для роботи:
Функціональна залежність:
Розрядність АЦП і ЦАП: 10 розрядний .
Полярність вхідного сигналу: однополярний невід‘ємний.
Організація обміну з АЦП: через КПДП КР580ВТ57.
Об’єм ОЗП і організація мікросхеми пам’яті: 4К з організацією 2048х8.
Вид функціонального вузла: Буферний регістр КР580ИР82.
Постановка задачі: Розробити компоненти технічного і програмного забезпечення мікропроцесорного пристрою на базі МП КР580ВМ80, який включає аналогово-цифровий і цифро-аналоговий перетворювачі і виконує функцію цифрової обробки аналогової інформації. Обробка описується заданим пропорційно-інтегро-диференціальним рівнянням, що пов’язує аналогові сигнали x(t) на вході і y(t) на виході системи.
Анотація
“Пристрій мікропроцесорної обробки аналогової інформації”. Курсова робота. - НУ “Львівська політехніка”, каф.: САПР, дисципліна : “Комп’ютери і мікропроцесорні системи”, 2006.
Курсова робота складається з 35 сторінок, 9 таблиць, 12 схем, і додатку.
В даній курсовій роботі розроблено компоненти апаратного і програмного забезпечення мікропроцесорного пристрою, який включає аналого- і цифро-аналогові перетворювачі і виконує обробку за функціональною залежністю ..
аналогового сигналу. Дана робота охоплює ввід і первинну обробку аналогової інформації, подальшу цифрову обробку інформації за програмою і вхідними даними, а також вивід обробленої інформації в аналоговій формі для подальшого використання.
ЗмістПерелік умовних скорочень 5
Вступ 6
1. Синтез аналогової схеми фільтру 7
3.1 Вибір типу АЦП 12
Схема 4. Мікросхема К1113ПВ1 13
Значення 13
3.2 Вибір типу ЦАП 16
3.3 Структура представлення даних 18
4.Структурна схема та алгоритм функціонування МПП 19
4.2 Розподіл адресного простору 21
5. Загальна структура програми роботи МПП 25
5.1 Опис програм вводу, виводу 27
5.3 Оцінка верхньої фінітної частоти вхідного аналогового сигналу 31
6. Опис функціонального вузла 32
Аналіз результатів та висновки 34
Список використаної літератури 35
Перелік умовних скорочень
АЦП
аналогово-цифровий перетворювач
ВІС
Велика інтегральна схема
ГТІ
генератор тактових імпульсів
ІС
інтегральна схема
КС
керуюче слово
МП
Мікропроцесор
МПП
мікропроцесорний пристрій
МПС
Мікропроцесорна система
МР
молодші розряди
ОЗП
оперативний запам`ятовуючий пристрій
ОП
операційний підсилювач
ПЗП
постійний запам`ятовуючий пристрій
ППІ
паралельний програмований інтерфейс
РКС
регістр керуючого слова
СК
системний контролер
СР
старші розряди
СШ
системана шина
ТГ
тактовий генератор
ТТЛ
транзисторно-транзисторна логіка
ЦАП
цифро-аналоговий перетворювач
ЦФ
цифровий фільтр
ЦІС
цифрова інтегральна схема
ША
шина адрес
ШД
шина даних
ШК
шина керування
КМОН
метал оксид напівпровідник – із комплементарною структурою
КПДП
контролер прямого доступу до пам’яті.
Вступ
Успіх інтегральних технологій привів до появи великих інтегральних схем з густиною розміщення компонентів до десятків та сотень тисяч транзисторів на одному кристалі. Степінь інтеграції підвищується в даний час великими темпами, густина ВІС з кожним роком подвоюється, звідси випливає, що відношення об’єму випуску заказаних ВІС, призначених для реалізації конкретних логічних схем до кількостів типів ВІС зі збільшенням степені інтеграції зменшується. Заказані ВІС в більшості випадків не вигідні для їх виготовлення і закажчика-розробника цифрових систем, так як будь яка нова логічна схема потребує створення дорогої вузькоспеціалізованої ВІС.
Вихід з даної ситуації полягає в підході в основі якого лежить використання можливості програмування на рівні логічного елемента. На даний час найбіль широко використовуються програмні логічні матриці різних рівннів і ВІС з багатократним програмуванням – управляємі логічні матриці, мікропроцесори і мікро-ЕОМ.
Основною частиною цифрового пристрою, в якому відбувається обробка інформації є процесор. Процесор складається з операційного пристрою і пристрою керування. Очевидно що МП не може функціонувати без інших інтегральних схем, що виконують функції синхронізації та узгодження. Сукупність інтегральних схем, сумісних по конструктивно-технологічному виконанню і призначених для сумісного використання при побудові мікропроцесорних систем, називається мікропроцесорним комплексом. Таким чином , МП виконує арифметичні та логічні операції, аналізує та приймає рішення , що міняють процес обрахунків, керує процесом вводу та виводу інформації.
Операційний пристрій складається з регістрів суматорів лічильників і т. д. В ньому виконуються арифметичні та логічні операції у відповідності з командами, які поступають з пристрою керування. Пристрій побудований за способом схемної логіки, будується на інтегральних схемах різного ступеня інтеграції , в тому числі на спеціалізованих ВІС шляхом вибору певного комплекту інтегральних мікросхем і способу вибору їх з’єднання. Функціонування його полягає в генерації послідовності керуючих сигналів , які виробляються керуючим пристроєм під дією синхронізуючих імпульсів. Функціонування такого пристрою серйозно залежить від схеми з’єднання.
При такій організації операційного пристрою та пристрою керування вони є вузькоспеціалізовані і будь яка зміна алгоритму функціонування або різноманітних коефіцієнтів в розрахункових співвідношеннях вимагає або повної заміни мікросхем, або їх доповнення і зміни схеми з’єднань цих мікросхем.
Розвиток мікроелектроніки та цифрових методів привів до нового напрямку в створенні радіоелектронних засобів, які будуються на принципах програмованої логіки. Тепер інженер розробляє електронну схему ,яка є уніфікованою а також алгоритм функціонування пристрою і програму роботи цього пристрою, тобто функції розробника апаратури перемістилися зі схемної області в програмну.
З застосуванням МП стало можливим в радіоелектронних пристроях широко впровадити принцип програмованої логіки, який полягає в тому, що всі перетворення, що відбуваються в ОП здійснюються за програмою записаною в пам’яті і реалізують функціонування радіоелектронного процесу.
1. Синтез аналогової схеми фільтру
Під час побудови мікропроцесорних пристроїв та систем автоматики часто виникає необхідність розв’язувати задачі, пов’язані з проектуванням та розробкою засобів перетворення аналогових сигналів, оскільки вихідні сигнали сенсорів в своїй більшості є аналоговими.
Крім того, не менш важливими є проблеми аналогово-цифрового перетворення сигналів. До складу МПП входять засоби перетворення та обробки не тільки цифрових, але й аналогових сигналів та аналогово-цифрового перетворення.
Фізичні величини, такі як сила, тиск, температура та інші, що є об’єктом контролю та регулювання, за допомогою відповідних сенсорів перетворюються у відповідні сигнали. Вихідні сигнали сенсорів дуже часто є сигналами низького рівня, крім того, вони є аналоговими величинами, тому їх попередньо підсилюють та виконують аналогово-цифрове перетворення.
Пристрій, що реалізується на основі певної функціональної залежності перетворення вхідного аналогового сигналу у аналоговий вихідний сигнал – називають аналоговим фільтром. Передавальна характеристика аналогового фільтру забезпечує відповідні амплітудно-частотні та фазово частотні залежності, що визначає тип фільтру.
Цифровий фільтр може бути реалізований як апаратурно, так і програмно. При апаратурній реалізації необхідними схемними елементами є перемножувачі, суматори і елементи затримки.
Задано рівняння автоматичного регулювання вхідного x(t) та вихідного y(t) сигналів:
, (1.1)
де x(t) – вхідний аналоговий сигнал, y(t) – вихідний аналоговий сигнал, τ – стала величина.
На основі наступних функціональних залежностей на операційних підсилювачах будується схема аналогового фільтра:
Функціональна схема аналогового фільтра на основі операційних підсилювачів:
Схема 1. Функціональна схема аналогового фільтра
Так як в моєму рівнянні нема подвійного диференціалу чи інтегралу то: виконую побудову схеми фільтру на основі пасивних елементів, тобто пасивні аналогові фільтри. Для синтезу якого використовуються елементи R, L, C що об’єднуються в RC, LC або RLC ланки. Вихідна напруга знімається з якого-небудь одного або двох послідовно з’єднаних елементів. Синтез аналогової схеми може бути побудований таким чином, що до заданого рівняння застосується перетворення Лапласа.
y(t) Y(p)
x(t) X(p)
Отримаємо вираз:
Отримане алгебраїчне рівняння розв’яжемо відносно Y(р):
На основі виведеного рівняння будуємо функціональну схему фільтра на пасивних елементах.
Схема 2. Функціональна аналогова схема фільтра на пасивних елементах.
Знайдемо значення сталої :
y(t) = IR;
;
;
;
Отже,
Технічні характеристики аналогових схем фільтрів на практиці обмежені та потребують схем корекції від температурного дрейфу та інших зовнішніх впливів. Цифрові методи обробки інформації оминають ці недоліки і знайшли широке застосування з появою мікропроцесорних пристроїв. Мікропроцесорна обробка характеризується збільшенням точності функціонального перетворення, швидкістю та гнучкістю, що забезпечується цифровим програмуванням та можливістю фільтрації більшого числа аналогових сигналів.
2. Синтез структурної схеми цифрового фільтру
Дискретизація аналогового рівняння полягає в заміні безперервної частини її дискретними відліками і відповідними перетвореннями похідних та інтегралів. Очевидна дискретизація першої похідної – її заміна першою скінченною різницею:
, - інтервал дискретизації.
Для дискретизації рівняння використовуються наближені рівності:
Замінюємо
В результаті отримаємо рівняння:
Синтезуємо схему по цій формулі.
Побудова схеми цифрового фільтра.
На основі цього рівняння, отриманого в попередньому пункті, будуємо схему цифрового фільтра, який є рекурсивним, оскільки в правій частині є :
Схема 3. “Схема цифрового фільтра”
В дану схему входять:
- суматор;
D L- елемент затримки;
Х Y - перемножувач.
3. Вибір і обґрунтування типу АЦП і ЦАП
3.1 Вибір типу АЦП
Для вибору АЦП проведемо порівняння характеристик двох мікросхем: десятирозрядного К1113ПВ1 і дванадцятирозрядного К572ПВ1. Деякі параметри АЦП К1113ПВ1 та К572ПВ1 наведені в таблиці 1:
Таблиця 1.
Параметри
К1113ПВ1
К572ПВ1
Розрядність
10
12
Час перетворення,мкс
30
110
Похибка, зумовлена нелінійністю %
0,1
0,1
Кількість виводів мікросхеми
18
48
В результаті порівняння видно, що мікросхема К1113ПВ1 краща з точки зору швидкодії. Крім того, вона в своєму складі має власний генератор тактових імпульсів, компаратор напруг, чого немає в К572ПВ1, для якої потрібно встановлювати їх окремими мікросхемами додатково. Тому зупинимо свій вибір на ній.
Мікросхема К1113ПВ1 є функціонально закінченими 10-розрядними АЦП, що може бути спряженим з МП. Забезпечує перетворення як однополярної напруги (вивід 15 з’єднується з виводом 16) в діапазоні 0...9,95 В, так і біполярної напруги в діапазоні -4,975...+4,975 В в паралельний двійковий код. До складу ЦІС входять ЦАП, компаратор напруги, регістр послідовного наближення (РПН), джерело опорної напруги (ДОН), генератор тактових імпульсів, вихідний буферний регістр з трьома станами, схеми керування. Вихідні каскади з трьома станами дозволяють читати результат перетворення зразу на шину даних МП. В ЦІС вихідний струм ЦАП порівнюється зі струмом вхідного резистора від джерела сигналу і формується логічний сигнал РПН. Стабілізація розрядних струмів ЦАП здійснюється вбудованим ДОН. Синхронізація РПН забезпечується імпульсами вбудованого ГТІ з частотою 300...400 кГц. Встановлення РПН в вихідне положення і запуск його в режим перетворення здійснюється по зовнішньому сигналу "гасіння і перетворення". По закінченні перетворення АЦП виробляє сигнал "готовність даних" і інформація з РПН поступає на цифрові входи через каскади з трьома станами. Корпус К1113ПВ1(A-B) типу 2104.18-1, маса не більше 2,5г.
Схема 4. Мікросхема К1113ПВ1
Опис виводів мікросхеми:
D1D10 – цифрові виходи
U1 – напруга живлення
U2 – друга напруга живлення
ST – пуск АЦП
IN – аналоговий вхід
S0 – зсув нуля
RY – готовність даних
GA – аналогова земля
GD – цифрова земля
Електричні параметри АЦП приведені в таблиці 2.
Таблиця 2.
Електричні параметри
Значення
Номінальна напруга живлення Uж1
5 В 5%
Номінальна напруга живлення Uж2
-15 В 5%
Вихідна напруга низького рівня
не більше 0,4 В
Вихідна напруга високого рівня
не менше 2,4 В
Напруга зсуву нуля в однополярному і двополярному режимах від повної шкали
0,3%
Струм живлення від джерела Iж1
не більше 10 мА
Струм живлення від джерела Iж2
не більше 18 мА
Вхідний струм високого (низького) рівня
40 мкА
Струм втрати(утечки) на виході
40 мкА
Час перетворення
не більше 30 мкс
Нелінійність від повної шкали К1113ПВ1А
0,1%
Абсолютна похибка перетворення в кінцевій точці від повної шкали
0,4%
Роботу ІС демонструє часова діаграма.
Схема. 5. Часові діаграми роботи мікросхеми АЦП К1113ПВ1
Робота даного АЦП визначається відповідними керуючими сигналами. При встановленні на вході «гасіння перетворення» рівня 0, АЦП починає перетворювати вхідну інформацію. Через час потрібний для перетворення (30мкс), на виході 17 з’являється сигнал з рівнем 0, на підставі якого дані з АЦП можуть бути введені мікропроцесором. Прийнявши дані МП встановлює на вході 11 гасіння перетворення рівень логічної 1-ці. За цим сигналом гаситься інформація в регістрі послідовного наближення і АЦП знову готовий до обробки і прийому даних. Цей АЦП може обробляти однополярний сигнал напругою до10,24В і двополярний 5,12В.
Підключення АЦП до МП в режимі ППІ “1”
Для спряження АЦП і ЦАП з МП використаємо програмований паралельний інтерфейс (ППІ) КР580ВВ55. При програмному опитуванні АЦП можна використовувати режим 0 ППІ, а при вводі через переривання при використанні команди RST N – режим 0 або 1.
Режим роботи і напрям обміну з зовнішніми пристроями програмується керуючими словами. Керуюче слово режиму встановлює режими роботи груп А або B і режим вводу або виводу для кожного порту.
В першому режимі роботи здійснюється асинхронний обмін інформації між портом і периферією.
При цьому порти А В використовуються для передачі даних, а порт С – для керуючих сигналів. Призначення розрядів порту С в режимі вводу інформації наступне. Вхід STB використовується для прийому сигналу, стробуючого запис інформації в порт. IBF –інформує, про те, що вхідний буфер заповнений. INTR-використовується як запит на переривання для мікропроцесора. Для реалізації цього режиму тригери розрядів РС4 для порту А і РС2 для порту В повинні бути встановленими в “1”, якщо програміст дозволяє переривання.
Запуск АЦП (сигнал Запуск) здійснюється через паралельний інтерфейс КР580ВВ55 (розряд 7 каналу С). ППІ використовується в режимі 1, сигнал “Готовність” поступає на вхід ППІ (4 і 2 розряди порту С для каналів А і В відповідно). Коли на входи РС4 і РС2 приходить сигнал (готовність), ППІ виробляє сигнал IBF на входах РС1 і РС5, а вже відповідно до цих сигналів і внутрішнього тригера INTE ППІ виробляє сигнал INTR на виходах РС0 і РС3, один з яких і з’єднаний з виводом запиту переривання INT мікропроцесораКР580ВМ80. .
МП після запиту переривання встановлює INTE=0 і виконується машинний цикл переривання. На МП формується сигнал DBIN=1. Це означає, що МП читає з ШД деяку інформацію, яка не вибирається з пам’яті. В цей час на ШД поступає код команди RSTN з буфера даних, який “пропускає” дані, оскільки на системному контролері сигнал INTA=0. По цій команді МП переходить на команду обробки переривань, яка повинна бути розміщена в пам’яті за адресою 8*N.
Схема 5. Підключення АЦП до шин МПП
3.2 Вибір типу ЦАП
Відповідно до типу АЦП в системі необхідно застосувати 10-розрядний ЦАП. Тому, в якості мікросхеми ЦАП було вибрано мікросхему К572ПА1, керуючись такими критеріями: вихідна розрядність дорівнює розрядності АЦП (10 розрядів). Мікросхема ЦАП К572ПА1 призначена для перетворення 10-розрядного прямого паралельного двійкового коду на цифрових входах в струм на аналоговому виході, який пропорційний значеню кода і резисторної напруги. Для роботи в режимі з виходом по напрузі до ЦІС ЦАП К572ПА1 підключається зовнішній ДОН і операційний підсилювач (ОУ) з цілью створення від’ємного зворотнього зв’язку (ВЗЗ), працюючого в режимі сумування струму.
Електричні параметри даної мікросхеми наведені в таблиці 3.
Таблиця 3.
Електричні параметри К572ПА1
Параметри,
не менше
Диференційна нелінійність
0,1%
Абсолютна похибка перетворення в точці кінцевої шкали Fa, МР
30
Напруга живлення
5 В ± 10%
Опорна напруга
10,24 В
Час перетворення
5 мкс
Схема. 6. Мікросхема К572ПА1
Позначення виводів:
1 – аналоговий вихід 1
2 – аналоговий вихід 2
3 – спільний вивід
4 – цифровий вхід 1 (СР)
5 – 12 – цифрові входи 2 – 9
13 – цифровий вхід 10 (МР)
14 – напруга джерела
15 – опорна напруга
16 – вивід резистора зворотнього зв’язку
Схема 7. Структурна схема підключення МП і ЦАП
3.3 Структура представлення даних
При заданій розрядності АЦП - 10 розрядів для представлення вхідних даних необхідно 10 розрядів. Виходячи з цього, потрібно знайти скільки розрядів потрібно виділити для вихідних даних.
Рівняння цифрового фільтру має вигляд:
Причому
Тоді
Звідси ми бачимо, що , то розрядність нарощувати не потрібно. Оскільки розрядність xn рівна 10, то розрядність yn повинна бути також 10.
Вхідні дані мають знак, відповідно його мають коефіцієнти і вихідні дані, тому старший біт резервуємо для знаку.
Коефіцієнти а і b є менші 1, тому на них виділяємо по 1 байту.
Структура представлення даних буде наступною:
а – 1 байт
З
b – 1 байт
З
yn – 2 байти
Н
Н
Н
Н
H
H
yn-1 – 2 байти
Н
Н
Н
Н
H
H
xn – 2 байти
Н
Н
Н
Н
H
H
,де Н – біт не використовується, З – знак.
4.Структурна схема та алгоритм функціонування МПП
Для мікропроцесорних пристроїв характерна шинна структура, під якою розуміється те, що всі компоненти МПП під’єднані до системної шини.
Структурна схема можливої реалізації проектованого МПП наступна:
Схема 8 .Структурна схема мікропроцесорного пристрою
Як ми бачимо до складу МПП входять наступні елементи: МП, ПЗП, ТГ, СК, ОЗП, АЦП, ЦАП, СШ. Системна шина в свою чергу складається з ША, ШД та ШК. ША є 16-розрядною односпрямованою; ШД 8-розрядна двоспрямована; ШК набір окремих ліній, які мають свою напрямленість.
МП в складі МПП виконує наступні функції:
формує адреси команд;
зчитує інформацію з зовнішніх пристроїв та пам’яті;
виконує над нею арифметичні та логічні операції;
аналізує результати і записує дані в пам’ять і зовнішні пристрої, функціонуючи при цьому під управлінням команд з деякої фіксованої множини;
при необхідності записує результати в пам’ять;
реагує на зовнішні сигнали.
ТГ призначений для формування синхроімпульсів та приймає участь в прийомі та видачі керуючих сигналів забезпечуючи функціонування МП та інших МПП.
ПЗП служить для постійного зберігання незмінної інформації необхідної для функціонування МПП (програма функціонування ЦФ ).
ОЗП служить для тимчасового зберігання інформації, що використовується при розрахунках.
СК призначений для формування певних керуючих сигналів (MEMR, MEMW, I/OR, I/OW, INTA).
КПДП реалізує контролерний обмін інформацією між зовнішніми пристроями і пам’яттю мікропроцесорної системи.
АЦП отримує на вході МПП аналоговий сигнал та перетворює його в цифровий код.
ЦАП здійснює зворотнє перетворення. Поступивший на його вхід двійковий код він перетворює у відповідний аналоговий сигнал.
Отже МПП працює за таким принципом: сигнал поступає на аналоговий вхід АЦП. АЦП перетворює сигнал в двійковий код, потім сигналом “готовність ” робить запит на переривання КПДП .КПЛП в свою чергу переводить МП в стан захвату, зчитує дані з АЦП і записує в ОЗП за відповідною адресою. Потім КПДП передає керування МП. МП звертається до пам’яті для отримання нових команд та тимчасового збереження результатів. Отримавши результат, МП посилає двійковий код через КПДП на ЦАП, де код перетворюється у відповідний аналоговий сигнал, що поступає на вихід МПП.
Крім того в склад МПП входять наступні допоміжні елементи:
буферний регістр ;
окремі логічні елементи;
дешифратори.
Таблиця 4.
Позначення
Опис
Мікросхема
МП
мікропроцесор
КР580ВМ80
ГТІ
генератор тактових імпульсів
КР580ГФ24
СК
системний контролер
КР580ВК28
ШФ
шинний формувач
КР580ВА86
ПЗП
постійно запам’ятовуючий пристрій
К573РФ21
ОЗП
оперативно запам’ятовуючий пристрій
К155РУ5х32
КПДП
Контролер прямого доступу до пам’яті
КР580ВВ55
АЦП
Аналогово-цифровий перетворювач
К1113ПВ1
ЦАП
Цифро-аналоговий перетворювач
К572ПА1
4.2 Розподіл адресного простору
Об’єм адресного простору МП КР580ВМ80А становить 64К, що визначається 16-розрядною адресною шиною. В цьому адресному просторі необхідно розмістити адреси ПЗП та ОЗП. Згідно варіанту завдання об’єм оперативної пам’яті в МПП повинен бути 32К. Під величини Xn, Yn-1, Yn виділимо місце в ОЗП. Решту інформації зберігатимемо в ПЗП. Мікропроцесор КР580ВМ80 може здійснювати синхронний і асинхронний обмін інформацією за даними адресами з пам’яттю (ОЗП, ПЗП) та зовнішніми пристроями. При обробці інформації МП зчитує коди команд, операнди і записує одержаний вміст в регістри РЗК або виконує обмін інформації з пам’яттю та зовнішніми пристроями.
Можливі два підходи до організації звертання до пристроїв обміну інформації. Перший підхід використовує звертання до зовнішніх пристроїв, як до комірок пам’яті. Тобто, адресний простір, що відводиться для цих пристроїв включає 64К адрес. Однак, внаслідок повного вкладення адресного простору пристроїв вводу/виводу в простір адрес пам’яті, останнє пропорційно зменшується з збільшенням числа обслуговування зовнішніх пристроїв вводу/виводу. До переваг даного підходу можна віднести можливість використання різноманітних команд пересилання даних.
Інший підхід використовує роздільне керування пам’яттю і зовнішніми пристроями. Лише дві команди IN і OUT, призначені для обміну інформацією з зовнішніми пристроями. Так, як для цих команд адреса для зовнішнього пристрою 8-ми розрядна, то МП КР580ВМ80 може звертатись до 256 пристроїв вводу і 256 пристроїв виводу. При цьому адресний простір пам’яті буде максимальним (64К).
Таблиця 5 Розподіл адрес.
ПЗП (ROM)
Адреса
Вміст пам’яті
Пояснення
0000h (RST0)
jmp Main
На початкову ініціалізацію в головній програмі
0070h
SUM:
Підпрограма додавання двобайтових чисел
0080h
Mul:
Підпрограма множення
0100h
Main:
Головна програма
0160h
CAP:
Підпрограма цифрової обробки інформації
01FCh
a0
Коефіцієнт a0
01FDh
a1
Коефіцієнт a1
01FEh
b1
Коефіцієнт b1
ОЗП (RAM)
8000h
xn
Вхідна константа
8002h
xn-1
Попередня вхідна константа
8004h
yn-1
Попередня вихідна константа
8006h
yn
Вихідна константа
FFFFh
SP
Вершина стеку
У нашій МПС є два ППІ КР580ВВ55 та два ПКП КР580ВН59. Для звертання до каналів вводу і каналів виводу їм необхідно також присвоїти конкретні адреси. У МПС на основі МП КР580ВМ80А для зовнішніх пристроїв виділено 256 адрес. Виходячи з цього, канали вводу/виводу, а також регістри керуючих слів матимуть наступні адреси:
Таблиця 6. Адреси портів ППІ
КР580ВВ55, призначений для вводу(АЦП)
КР580ВВ55, призначений для виводу(ЦАП)
Адреса
Значення
Адреса
Значення
0B0h
Канал А
0D0h
Канал А
0B1h
Канал В
0D1h
Канал В
0B2h
Канал С
0D2h
Канал С
0B3h
РКС
0D3h
РКС
Таблиця 7. Адреси портів ПКП
Адреси регістрів КПДП
00000000b
0h
РА0
00000001b
1h
РЧЦ0
00000010b
2h
РА1
00000011b
3h
РЧЦ1
00000100b
4h
РА2
00000101b
5h
РЧЦ2
00000110b
6h
РА3
00000111b
7h
РЧЦ3
00001000b
8h
РКС(запис)
00001000b
8h
РСК(читання)
4.3 Алгоритм функціонування МПП.
Для всіх пристроїв існує режим початкового пуску. При одночасному включені живлення –5В, +5В і 12В (або послідовно у вказаному напрямку) і поступленні тактових імпульсів на мікропроцесор з генератора тактових імпульсів, всі регістри і прапорці МП встановлюються в довільні стани. Після цього подається з ГТІ на вхід RESET МП сигнал високого рівня тривалістю не менше 3 тактів – лічильник команд (РС), тригер дозволу переривання (вихід INTE), а також тригер підтвердження захоплення (вихід HLDA) скидаються, і мікропроцесор починає вибірку з пам’яті команд, розміщених з нульової адреси.
Алгоритм обробки інформації МПП наступний. Спочатку вхідний сигнал xn поступає на вхід АЦП. Коли АЦП перетворить аналоговий сигнал на цифровий то видає сигнал “готовність”, який поступає на вхід DRQ КПДП .Тоді КПДП сигналом HOLD переводить МП в стан захвату, і після підтвердження захвату , який приймає на вхід HLDA знімає з виходів АЦП двійковий код і записує за адресою яка записана в регістрі адрес. ПДП працює в режимах ТС-стоп і Автозагрузка, тому відразу зчитує з пам’яті результат опрацювання (в першому циклі ще результату немає) і подає на входи ЦАП.
Після цього МП зчитує з пам’яті і опрацьовує цю інформацію і записує її в іншу комірку, з якої вже в наступному циклі КПДП зчитає з пам’яті результат опрацювання і подасть на входи ЦАП. Блок-схема алгоритму функціонування МПП приведенa в схемi 9.
Схема 9 Алгоритм функціонування МП – пристрою
5. Загальна структура програми роботи МПП
Основна програма повинна функціонувати згідно певного алгоритму. Вона містить ініціалізацію мікросхем КР580ВВ55, КР580ВН59, запуск АЦП, ввід даних при обробці переривань, обчислення рівняння ЦФ і передачу обрахованого yn на ЦАП для переведення в аналогову форму. За вхідні сигнали xn-1 і yn-1 при першому обрахунку приймаємо 0, який і записуємо за відповідними адресами в ОЗП. Встановлюємо вказівник стеку на відповідну адресу. Головна програма розташована в ПЗП, починаючи з адреси 100h і має такий вигляд:
main:
lxi h,0000h
lxi sp,0FFFFh
shld 8000h ;Встановлення початкових коефіцієнтів
shld 8002h
shld 8004h
shld 8006h
shld 8008h
;Програмування ППІ1
mvi a,10010010b ;Режим задання режиму,реж.групи А=0,А<-,C(4-7)->, out 0B3h ; B<-,C(0-3)->,реж.групи В=0
;Програмування ППІ2
mvi a,10001000b ;Режим задання режиму,реж.групи А=0,А->,C(4-7)<- out 0D3h ; ,B->,C(0-3)->,реж.групи В=0
;програмування КПДП
;завантаження регістру адресу каналу 2.
7 mvi a,00h
10 out 04h ;04h адреса регістру адресу каналу 2
10 out 04h
;завантаження числа циклів каналу 2
7 mvi a,00h ;кількість байт зменшене на одиницю
10 out 05h ;адреса регістру числа циклів 2.
7 mvi a,01000000b
10 out 05h
;завантаження регістру адресу каналу 3.
7 mvi a,09h
10 out 06h
7 mvi a,00h
10 out 06h
;завантаження числа циклів каналу 3.
7 mvi a,00h
10 out 07h
7 mvi a,10000000b
10 out 07h
7 mvi a,11001100b ;слово ррежиму
10 out 08h
Start:
mvi a,00000000b ;Запуск АЦП(зростаючим фронтом)
out 0b3h
mvi a,00000001b ;Запустили АЦП
out 0b3h
;Дозвіл на вивід даних ЦАП
mvi a,00000000b;CS=0
out 0D2h
mvi a,00000010b;BS=0
out 0D2h
lxi h,8008h ;Перевірка чи готові дані
m1:
mov a,m
cpi 0
jz m1
di
call CAP
ei
jmp start
Головна програма виконується за 393 такти і займає 85 байтів пам’яті.
5.1 Опис програм вводу, виводу
Згідно завдання необхідно вводити 10 і виводити 10 біт даних. Для цього використаємо дві мікросхеми КР580ВВ55. Ці мікросхеми запрограмуємо в режим 0 на ввід/вивід: канал А та молодші розряди каналу B. В обох ППІ, згідно завдання, використовуємо 0 режим роботи. Для запуску АЦП будемо використовувати розряд С0 каналу С.
Таким чином керуюче слово для першого ППІ набуде вигляду:
Схема 10. Схема керуючого слова ППІ для вводу.
Керуюче слово для другого ППІ має вигляд:
Схема 11. Схема керуючого слова ППІ для виводу.
Код програми, що ініціалізує ППІ, має такий вигляд:
mvi a,10010010b
out 0B3h ; ініціалізація ППІ, призначеного для вводу
mvi a,10001001b
out 0D3h ; ініціалізація ППІ, призначеного для виводу
Наступним кроком для зчитування інформації буде ініціалізація АЦП. Для цього необхідно на вхід «Гашення/перетворення» АЦП подати логічний 0 для скидання та логічну 1 для запуску перетворення. Як видно зі схеми підключення АЦП, вихід «Гашення/перетворення» АЦП підключений до ППІ. Це є лінія каналу С – С0. Отже, щоб ініціалізувати АЦП необхідно виконати наступну послідовність команд:
mvi a, 00000000b
out 0B2h ; запуск АЦП
mvi a, 00000001b
out 0B2h ; дозвіл на перетворення АЦП
Після задання режиму роботи ППІ та ініціалізації АЦП можна приступити до зчитування значення xn з АЦП. Дані з виходу АЦП поступають в канали А та В. Програмна реалізація вводу xn має такий вигляд:
in 0B0h ;Порт А – молодший байт
mov l, a
in 0B1h ;Порт В – старший байт(два молодші розр.)
ani 00000011b
mov h, a
Після виконання цієї послідовності команд введене xn буде міститись в HL. Старші 6 бітів регістра h не використовується і туди записуємо нулі. Вивід результату на ЦАП (відбувається в підпрограмі CAP) виконується через канал A та молодші розряди каналу В і програмується так:
mov a, l
out 0B0h
mov a, h
out 0B1h
5.2 Опис програм обробки інформації
Підпрограма обробки інформації має назву CAP. Вона працює з значеннями сигналів xn і yn-1 та з коефіцієнтами а0 і b1. Ці всі параметри мають свої конкретні адреси в пам’яті. Результатом виконання підпрограми є числове значення сигналу уn.
CAP:
lhld 8000h ; HL xn ; 16 t ; 3 B
lda 01FCh ; A a0 ; 13 t ; 3 B
xchg ; 13 ; 2 B
call Mul ; a0 * xn ; 17 t ; 3 B
mov b, h ; 5 t ; 1 B
mov c, l ; запам’ятовуємо a0 * xn в ВС ; 5 t ; 1 B
lhld 8004h ; HL yn-1 ; 16 t ; 3 B
lda 01FEh ; A b1 ; 13 t ; 3 B
xchg ; 13 ; 2 B
call Mul ; b1 * yn-1 ; 17 t ; 3 B
call SUM ; HL a0 * xn + b1 * yn-1 ; 17 t ; 3 B
shld 8006h ; [8006h] yn ; 16 t ; 3 B
; вивід yn в ЦАП
mov a, l ; 5 t ; 1 B
out 0B0h ; 10 t ; 2 B
mov a, h ; 5 t ; 1 B
out 0B1h ; 10 t ; 2 B
mvi a,0 ;Скидання switch ; 7 t ; 2 B
sta 8008h ; 13 t ; 3 B
jmp CAP ; 10 t ; 3 B
Підпрограма обробки інформації виконується за 356 тактів і займає 67 байтів пам’яті.
Підпрограма додавання двобайтових чисел (Вхідними даними для неї є доданки, які розміщені в парах BC і HL. Сума повертається в парі HL.):
SUM: mov a, c ; 5 t 1 B
add l ; 7 t 1 B
mov l, a ; 7 t 1 B
mov a, b ; 5 t 1 B
adc h ; 7 t 1 B
mov h, a ; 7 t 1 B
ret ; 10 t 1 B
Процедура SUM виконується за 48 тактів і займає 7 байтів пам’яті.
Процедура множення двобайтового числа на однобайтове Mul. Вхідними даними для неї є множники, розміщені в регістровій парі DE і акумуляторі. Процедура повертає добуток в акумуляторі (старші розряди) і парі НL (молодші розряди). Текст цієї процедури:
Mul: lxi h, 0h ; 10 t 3 B
mvi c, 8 ; 7 t 2 B
n1: dad h ; 10 t 1 B
ral ; 4 t 1 B
jnc n2 ; 10 t 2 B
dad d ; 10 t 1 B
n2: aci 0 ; 7 t 2 B
dcr c ; 5 t 1 B
jnz n1 ; 10 t 2 B
ret ; 10 t 1 B
Процедура Mul виконується за 475 такти і займає 16 байтів пам’яті.
5.3 Оцінка верхньої фінітної частоти вхідного аналогового сигналу
Оцінку верхньої фінітної частоти фільтру проводимо з точки зору найнижчої швидкодії фільтру. Для визначення верхньої граничної частоти фільтра необхідно вирахувати за скільки тактів виконається перетворення сигналу на вході АЦП в сигнал на виході ЦАП.
В процесі виконання програми виконуються:
основна програма;
підпрограма множення;
підпрограма додавання.
Кількість тактів, за які виконуються дані фрагменти, приведені в таблиці:
Таблиця 8.
Назва програми
Кількість тактів необхідних для виконання програми
Число виконань даної програми за один цикл
Кількість тактів за цикл
Основна програма
393
1
393
підпрограма множення
475
2
950
підпрограма додавання
48
1
48
Таким чином цикл перетворення відбувається за 1391 тактів. В такому випадку, частота видачі інформації при максимальній тактовій частоті процесора 2,5 Мгц рівна
fвид=2,5МГц/1391=1797 Гц
За теоремою Котельникова довільний сигнал, який має скінчений спектр, може бути точно перетворений в цифрову форму і потім відтворений за відліками цього дискретного сигналу при умові, що
,
де t інтервал дискретизації, fверх верхня фінітна частота аналогового сигналу.
Оскільки
,
то ,
а отже верхня фінітна частота фільтра fверх=899 Гц.
6. Опис функціонального вузла
Згідно із завданням на курсову роботу в даному розділі потрібно описати буферний регістр КР580ИР82.
Буферний регістр серії КР580ИР82 призначений для фіксації інформації.
Електричні параметри:
Технологія – ТТЛШ
Кількість активних елементів в кристалі – 524
Тип корпуса – 2140.20-1
Кількість виводів в корпусі – 20
Час затримки розповсюдження інформаційного сигналу, відносно сигналу на вході, (Uжив = 5 В; С = 30 пФ; R = 52,7 Ом; Uсигн = 2,14 В), - 30 нс.
Напруга живлення – 5 В 5%
Струм споживання від джерела живлення – 160 мА
Потужність розсіювання – 1 Вт
Діапазон робочих температур – від –10 С до +70 С
Схема. 12. Умовне позначення буферного регістра КР580ИР82
Таблиця 9. Призначення виводів мікросхеми КР580ИР82
Номер вивода
Позначення
Тип вивода
Функціональне значення
20
+5 В
-
Живлення
10
GND
-
Загальний
1 – 8
DI0 – DI7
Виходи
Сигнали, які подаються на виводи 1 – 8, поступають на входи D – тригерів буферного регістра
19 – 22
DI0 – DI7
Виходи з високоімпендантним станом
На 19 – 12 виводяться стани тригерів буферного регістра, якщо на вхід OE подано сигнал дозволу, в протилежному випадку виводи 19 –12 знаходяться у високоімпендантному стані
11
STB
Вхід
Строб. По сигналу високого рівня, який поступає на вивід 11, інформація, яка подається на входи DI0 – DI7, записується в тригери буфера
9
OE
Вхід
Дозвіл видачі вмісту буфера регістра. Сигнал низького рівня на вході 9 дозволяє видачу на виводи DO0 – DO7 вмісту буферного регістра, а сигнал високого рівня переводить ці виводи у високоімпендантний стан
Якщо на вхід OE поступає дозволяючий сигнал низького рівня, а на вхід STB – сигнал високого рівня, то інформація зі входів мікросхеми передаються на виходи. Після переходу сигнала на вході STB з високого рівня на низький інформація, записана в буферний регістр, зберігається до появи дозволяючого сигнала на вході STB. Сигнал високого рівня на вході OE переводить виводи DO0 – DO7 у високоімпендантний стан.
Аналіз результатів та висновки
В даній курсовій роботі нами був розроблений МП – пристрій автоматичної системи регулювання на основі КР580ВМ80. Як видно по результатам роботи (отриманий МПП має верхню граничну частоту зчитування вхідного сигналу рівну 899 Гц.) даний пристрій є досить швидкодіючим. Проблема в тому, що якщо даний МПП буде застосований при проведенні вимірювань частота коливання вхідної напруги яких є досить високою. Тоді частота зчитування вхідного сигналу даного пристрою виявиться замалою, щоб точно описати форму вхідного сигналу і відобразити залежність вихідного сигналу. Для підвищення швидкодії МП – пристрою слід або вдосконалювати алгоритм обробки інформації, або використовувати більш потужний мікропроцесор, в систему команд якого входить команда множення, яка часто використовується у нашому алгоритмі роботи пристрою. Може підійти дуже відомий процесор фірми Intel 8088 або Intel 8086.
Можна також взагалі замінити мікропроцесор на набір інтегральних схем, що має суттєво вплинути на швидкодію роботи пристрою.
Список використаної літератури
Алексенко А. Г., Галицин А. А., Иванников А. Д. Проектирование радиоелектронной апаратуры на микропроцессорах: програмирование, типовые решения, методы отладки. М.; Радио и связь, 1984.
Майоров В. Г., Гаврилов А. И. Практический курс программирования микропроцессорных систем. М.; Машиностроение, 1989.
Корячко В. П. Микропроцессоры и микроЭВМ в радиоэлектронных средствах; Учеб. Для вузов по спец. ‘Конструирование и технология радиоэлектронных средств.’ М.; Внеш. Шк, 1990.
Федорков Б. Г., Телец В. А. Микросхемы ЦАП и АЦП: функционирование, параметры, применение. М; Енергоатомиздат, 1990.