Міністерство освіти та науки України
Національний університет “Львівська політехніка”
Кафедра САПР
Курсова робота
з курсу “Комп’ютери та мікропроцесорні системи”
ПРИСТРІЙ МІКРОПРОЦЕСОРНОЇ ОБРОБКИ АНАЛОГОВОЇ ІНФОРМАЦІЇ
Керівник:
Завдання до курсової роботи
Тема курсової роботи: Пристрій мікропроцесорної обробки аналогової інформації.
Постановка задачі: Розробити компоненти технічного і програмного забезпечення мікропроцесорного пристрою на базі МП КР580ВМ80, який включає аналогово-цифровий і цифро-аналоговий перетворювачі і виконує функцію цифрової обробки аналогової інформації.
Обробка описується заданим рівнянням:
1/(1*y(t)+1/(2*dy(t)/dt=1/(2 +(1(2dx(t)/dt+1/(2*d2x(t)/dt2+(1x(t)
Розрядність АЦП: 10
Полярність вхідного сигналу: однополярний (невід’ємний)
Організація обміну з АЦП: через переривання з RST 4
Режим роботи КР580ВВ55: 0
Об’єм ОЗП (Kb): 8Kb
Організація МП: 4096×1
Вид функціонального вузла: шинний формувач з використанням КР580ВА86
Анотація
Студент: Шиганов А.С.
Курсова робота на тему “Пристрій мікропроцесорної обробки аналогової інформації”.
НУ “Львівська політехніка”
кафедра : САПР
дисципліна: “Комп’ютери та мікропроцесорні системи”
Курсова робота складається з 36 сторінок, 12 таблиць, 13 малюнків, додатка.
В даній курсовій роботі розроблено компоненти апаратного і програмного забезпечення мікропроцесорного пристрою, який включає аналого- і цифро-аналогові перетворювачі і виконує обробку за функціональною залежністю 1/(1*y(t)+1/(2*dy(t)/dt=1/(2+ +(1(2dx(t)/dt+1/(2*d2x(t)/dt2+(1x(t) аналогового сигналу. Дана робота охоплює ввід і первинну обробку аналогової інформації, подальшу цифрову обробку інформації за програмою і вхідними даними, а також вивід обробленої інформації в аналоговій формі для подальшого використання.
Зміст
Завдання до курсової роботи 2
Анотація 3
Зміст 4
Перелік умовних скорочень 5
Вступ 6
1.Синтез аналогової схеми аналогового фільтра на активних елементах.. 7
2.Синтез структурної схеми цифрового фільтру 9
3. Вибір і обґрунтування типу АЦП і ЦАП 11
3.1. Вибір АЦП 11
3.2 Вибір ЦАП 16
3.3. Структура представлення даних. 18
4.Структурна схема та алгоритм функціонування МПП 19
4.1.Опис структурної схеми МПП 19
4.2 Розподіл адресного простору 20
4.3 Алгоритм функціонування МПП. 22
5. Загальна структура програми роботи МПП. 25
5.1 Опис програм вводу/виводу 25
5.2 Опис програми обробки інформації 27
5.3 Оцінка верхньої фінітної частоти вхідного аналогового сигналу 29
6. Опис функціонального вузла 32
7. Аналіз результатів та висновки 34
Список використаної літератури 35
Додаток...............................................................................................................................36
Перелік умовних скорочень
МП
мікропроцесор
МПП
мікропроцесорний пристрій
МПС
мікропроцесорна система
ДШ
дешифратор
ІС
інтегральна схема
МК
мікроконтролер
БЕ
буферний елемент
ГТІ
генератор тактових імпульсів
АЦП
аналого-цифровий перетворювач
МР
молодші розряди
ОЗП
оперативний запам`ятовуючий пристрій
ОП
операційний підсилювач
ПЗП
постійний запам`ятовуючий пристрій
ППІ
паралельний програмований інтерфейс
РКС
регістр керуючого слова
СК
системний контролер
СР
старші розряди
СШ
системна шина
ТГ
тактовий генератор
ЦАП
цифро-аналоговий перетворювач
ЦФ
цифровий фільтр
ША
шина адрес
ШД
шина даних
ШК
шина керування
БР
буферний регістр
АФ
аналоговий фільтр
ВІС
(велика) інтегральна схема
КП
контролер переривань
Вступ
Більшість змінних інформаційних величин (струм, напруга, температура, тиск та інші ) представляються в аналоговій формі.
Кожний сигнал, який представлений змінною у часі напругою, характеризується своїм спектром частот. Довільна частота або смуга частот може бути підсилена, послаблена, виключена або виділена фільтрацією. Фільтрація - це процес зміни спектра частот сигналу.
Фільтри можна побудувати аналогові та цифрові.
Цифрові фільтри мають ряд переваг перед аналоговими, що будуються на резисторах, індуктивностях, ємностях і операційних підсилювачах:
Стабільність характеристик фільтра до розкиду параметрів його елементів.
Малі розміри і висока надійність роботи фільтру.
Можливість легко змінити параметри і характеристики цифрового фільтру не змінюючи схеми.
Можливість реалізації фільтрів із змінними в процесі роботи параметрами.
При фільтрації сигналів неперервний сигнал х(t) за допомогою АЦП перетворюється в дискретний x (n ∆t), який поступає на вхід цифрового фільтру. Отриманий сигнал y(n*∆t) передається на ЦАП і знову перетворюється в аналоговий сигнал. Цифровий фільтр може бути побудований на основі ВІС.
Виконання курсової роботи має за мету :
поглиблення теоретичних знань з технічних і програмних засобів мікропроцесорних пристроїв (МПП);
розвиток навиків самостійної розробки загальної структури МПП з аналого-цифровим і цифро-аналоговим перетворенням інформації, побудови принципових схем окремих вузлів, розробки та відлагодження програмного забезпечення на мові Асемблеру мікропроцесора (МП) КР580ВМ80;
набуття навиків роботи з технічною та довідниковою літературою по вибору аналого-цифрового і цифро-аналогового перетворювачів (АЦП і ЦАП), використання стандартних підпрограм з прикладного програмного забезпечення МП КР580ВМ80.
1. Синтез аналогової схеми аналогового фільтра на активних елементах.
Пристрій, що реалізує на основі певної функціональної залежності перетворення вхідного аналогового сигналу у аналоговий вихідний сигнал називають аналоговим фільтром. Аналоговий фільтр може бути пасивним або активним. Активним називається фільтр, що оснований на застосуванні операційних підсилювачів; пасивним – фільтр на R, L,C елементах, що утворюють RC-, LC- або RLC- ланки.
Основними елеметами активних аналогових фільтрів є інтергатор, диференціатор, інвертор та суматор. В курсовій роботі необхідно реалізувати рівняння вигляду:
1/(1*y(t)+1/(2*dy(t)/dt=1/(2 +(1(2dx(t)/dt+1/(2*d2x(t)/dt2+(1x(t). (1.1)
Звідси видно, що необхідно застосувати диференціатори, інтегратор та суматор для реалізації фільтра.
y(t)=(1/(2 +(12(2dx(t)/dt+(1/(2*d2x(t)/dt2+(12x(t)- (1/(2*dy(t)/dt (1.2)
Рис. 1.1 Функціональна схема аналогового фільтра.
2.Синтез структурної схеми цифрового фільтру
Для заданого рівняння побудуємо структурну схему ЦФ.
Дискретизація аналогового рівняння полягає в заміні безперервної величини її дискретними відліками і відповідними перетвореннями похідних та інтегралів. Очевидна дискретизація першої похідної - її заміна першою скінченою різницею:
, (2.1)
де - інтервал дискретизації.
Аналогічні скінченні різниці використовуються при дискретизації похідних вищих порядків. Так, наприклад, похідна другого порядку може бути замінена виразом:
. (2.2)
Один з способів дискретизації інтеграла полягає в його усуненні шляхом диференціювання рівняння. Інший спосіб прямої дискретизації пов’язаний з такими перетвореннями:
; . (2.3)
В результаті часової дискретизації заданого рівняння отримаємо :
Попереднє рівняння в загальній формі при обробці інформації в реальному масштабі часу має вигляд :
(2.4), де коефіцієнти мають наступний вигляд:
Оскільки в правій частині рівняння є елемент виду , то фільтр є рекурсивним.
Рис. 2.1 Структурна схема реалізації ЦФ,
де: XY - елемент множення ;
DL - елемент затримки ;
( - суматор.
3. Вибір і обґрунтування типу АЦП і ЦАП
У відповідності з критеріями даної роботи розрядність АЦП має бути 10 біт, розрядність ЦАП як буде визначено нижче, повинна бути 12 біт. Критерієм вибору АЦП і ЦАП (крім розрядності) можуть бути наступні параметри:
час перетворення – визначається інтервалом часу від моменту досягнення вихідного сигналу до моменту подачі цифрового сигналу до моменту досягнення вихідним сигналом встановленого значення;
похибка перетворення – найбільше значення відхилення значення аналогового сигналу від розрахункового;
нелінійність – максимальне відхилення лінійно наростаючої напруги від прямої лінії, яка з’єднує точку нуля і максимального вихідного сигналу.
3.1. Вибір АЦП
МП-пристрій працює із інформацією у цифрових кодах. У завданні ж вказано, що пристрій повинен виконувати фільтрацію аналогового сигналу. У розділі 2 була проведена дискретизація сигналу для побудови цифрового фільтра та побудови нової функціональної залежності для дискретного сигналу. Відповідно, виникає необхідність представлення вхідної інформації також у дискретному вигляді для того, щоб забезпечити можливість роботи із ним.
Для перетворення аналогового сигналу у цифровий код використаємо мікросхему АЦП – аналогово-цифрового перетворювача.
Для порівняння візьмемо дві мікросхеми АЦП.
Таблиця 3.1.1
Мікросхема
Тип виконання перетворення
n
,мкс
К1113ПВ1
Послідовне наближення
10
30
К1108ПВ1
Послідовне наближення
10
0,9
Очевидно, що за часом перетворення явну перевагу має мікросхема К1108ПВ1, оскільки частота її перетворень приблизно у 31 раз перевищує аналогічний параметр мікросхеми К1113ПВ1. Мікросхема 10-розрядного швидкодіючого АЦП послідовного наближення К1108ПВ1 призначена для перетворення аналогового сигналу в двійковий паралельний цифровий код. Мікросхема розрахована на перетворення однополярної вхідної напруги в діапазоні 0…3 В. Для роботи АЦП К1108ПВ1 потрібно декілька внутрішніх керамічних конденсаторів і джерел напруги Ucc1= 5B±5% i Ucc2= 5,2B±5% .
Електричні параметри мікросхеми КП1108ПВ1 (Т=25+10°).
Таблиця 3.1.2.
Число розрядів
10
Нелінійність δL, МР
-1 – 1
Диференціальна нелінійність δLD, МР
-0,75…0,75
Час перетворення t, мкс
0,9
Частота перетворення fc, МГц
0,4 – 1,5
Струм споживання від джерела живлення Ісс1, мА
50
Струм споживання від джерела живлення Ісс2, мА
130
Вихідна напруга високого рівня UOH, В
2,4
Вихідна напруга низького рівня UOL, В
0,4
Струм споживання від внутрішнього джерела живлення Ісс3, мА
7
Вхідний струм високого рівня Ioн, мА
0 – 0,1; 0 – 0,3
Вхідний струм низького рівня IOL, мА
0 – 3,2; 0 – 4
Напруга високого рівня по тактовому входуUIH3, B
-1 – -0,6; -1,1 – -0,5
Напруга низького рівня по тактовому входуUIL3, B
-2 – -1,57; -2 – -1,5
Виводи АЦП:
Таблиця 3.1.2.
1
цифровий вихід (СР)
2-9
цифрові виходи (MP)
10
цифровий вихід (MP)
11
готовність даних RAD
12
напруга джерела живлення Ucc2(цифрова частина)
13
скорочений цикл SE 10/8
14
загальний(цифрова земля)
15
напруга джерела живлення Ucc2(аналогова частина)
16
корекція FC1
17
аналоговий вхід Uirn
18
внутрішній UREF
19
корекція FC2
20
загальний(аналогова земля)
21
напруга джерела живлення Ucc1
22
запуск ST
23
такт CLK
24
дозвіл зчитування ERD
Рис. 3.1.1. Схема включення мікросхеми АЦП К1108ПВ1.
Рис. 3.1.2. Часова діаграма роботи АЦП К1108ПВ1
В часовій діаграмі роботи цикл перетворення в 10-розрядного АЦП складається із 12 тактів (десять робочих в процесі кодування і по одному допоміжному спочатку і вкінці циклу перетворення). Кожен цикл перетворення починається із першим від’ємним фронтом ТІ після того, як поступить команда на запуск ST. Під час першого допоміжного такту здійснюється скид регістрів і встановлення напруги на вході селектора опорних рівнів. Під час наступних десяти тактів кодується аналоговий сигнал при умові, що він зафіксований на вході АЦП. В дванадцятому такті код із регістра зберігання переписується у вихідний буфер, після чого формується сигнал готовності даних.
Поява на вході RAD сигналу низького сигналізує про зміну інформації у вихідному буфері і її збереження там протягом всього наступного циклу перетворення.
Оскільки використовуватиметься режим «0» роботи ППІ, то апаратно логічно помножимо сигнал від ППІ про дозвіл зчитування (він під’єднується до входу ERD на АЦП) із сигналом RAD, сформувавши таким чином запит на переривання.
Рис. 3.1.3 Схема підімкнення АЦП до МПП
3.2 Вибір ЦАП
Серед мікросхем ЦАП, які найбільш прийнятні за швидкістю перетворення інформації, виберемо мікросхему К1108ПА1.
Мікросхема 12-розрядного ЦАП типу К1108ПА1 призначена для складання блоків аналогового вводу – виводу з підвищеною швидкодією. Мікросхема К1108ПА1 конструктивно оформлена в 24-виводному герметичному металокерамічному корпусі типу 210Б.24-1 з вертикальним розміщенням виводів.
Нумерація і призначення виводів мікросхеми К1108ПА1:
1 – напруга джерела живлення Ucc1;
2 – напруга джерела живлення Ucc2;
3 – вихід ОУ компенсації;
4 – опорна напруга UREF;
5 – вивід резистора;
6 – загальний вивід матриці R-2R;
7 – вивід резистора;
8 – аналоговий вихід;
9 – вивід резистора зворотного зв’язку Ro.c1;
10 – вивід резистора зворотного зв’язку Ro.c2;
11 – вхід ОУ компенсації;
12 – загальний;
13 – цифровий вхід 1 (СР);
14-23 – цифрові входи 2-11;
24 – цифровий вхід 12 (МР);
Основні електричні параметри мікросхеми при температурі навколишнього середовища 25 ( 10 (С наведені в таблиці 3.2.1.
Таблиця 3.2.1. Основні електричні параметри IC К1108ПА1.
Основні електричні параметри
Мінімально доп. знач.
Макс. доп. знач.
Число розрядів b
12
-
Диференційна не лінійність δLD, %
0,024
0,024
Абсолютна похибка перетворення в кінцевій точці шкали δFS,МР
-30
30
Час встановлення вихідного струму ts1, мкс
-
400
Струм споживання Icc1, мA
15
15
Струм споживання Icc2, мA
46
46
Рис. 3.2.1. Принципова електрична схема підключення ЦАП K1108ПА1.
Рис. 3.2.2. Схема підключення ЦАП до МПП.
3.3. Структура представлення даних.
Структура даних, які входять в рівняння цифрового фільтра, визначається коефіцієнтами рівняння і заданою розрядністю АЦП.
Рівняння ЦФ має вигляд:
(3.3.1)
де коефіцієнти мають наступний вигляд:
Припустимо, що: (3.3.2)
, τ1 і τ2 – це величини постійні, є малою величиною. Підставимо заміни у рівняння і з результату видно, що ymax > xmax. Оскільки розрядність xn рівна 10, то розрядність yn повинна бути 12.
Отже, структура представлення даних набуде наступного вигляду:
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
а0
а1
a2
b0
xn
xn-1
xn-2
yn
yn-1
4.Структурна схема та алгоритм функціонування МПП
4.1 Опис структурної схеми МПП
Структурна схема реалізації проектованого МПП наведена на схемі 4.1.1.
Рис. 4.1.1 Структурна схема МПП
Розрядність та функції відповідних елементів мікросхем наведені в таблиці 4.1.1.
Таблиця 4.1.1
Позначення
Опис
Мікросхема
МП
мікропроцесор
КР580ВМ80
ГТІ
генератор тактових імпульсів
КР580ГФ24
СК
системний контролер
КР580ВК28
ШФ
шинний формувач
КР580ВА86
АЦП
аналогово-цифровий перетворювач, 12 розрядів
К1108ПВ2
ЦАП
цифро-аналоговий перетворювач, 12 розрядів
К1108ПА1
ППІ1
паралельний програмований інтерфейс 1
КР580ВВ55A
ППІ2
паралельний програмований інтерфейс 2
КР580ВВ55A
Для можливості функціонування мікропроцесорної системи необхідні такі елементи як МП, ГТІ, СК, ШФ. Для виконання даного завдання необхідно включити АЦП і ЦАП. Для того, щоб ефективно працювати з АЦП, потрібно застосувати ППІ для обміну з мікропроцесорною системою. Звичайно ж для забезпечення функціонування МПС треба включити пам’ять: ОЗП – для можливості запису необхідної буферної інформації, ПЗП – для забезпечення зберігання програмного забезпечення та можливості початкового старту. Також необхідні і адресні дешифратори: для пам’яті та вводу/виводу, щоб ідентифікувати запити до пристроїв.
МП в складі МПП виконує функції: формує адреси команд, видає команди з пам’яті, їх дешифрує, видає для команд потрібні адреси, виконує над ними операції – передбачені командами, при необхідності записує результат в пам’ять, формує керуючі сигнали для обміну, реагує на можливі зовнішні сигнали.
ТГ – призначений для формування синхроімпульсів F1, F2 для роботи МП і інших компонент, які входять до МПП. Синхроімпульси F1, F2 мають амплітуду 12B, але відрізняються один від одного щільністю і зсунуті в часі.
ПЗП – призначений постійного зберігання потрібних даних і програм. У випадку даного цифрового фільтру він зберігає програму, за якою працює цифровий фільтр, а також постійні коефіцієнти.
ОЗП – використовується як тимчасовий накопичувач інформації: кодів програми та даних які потрібні для розрахунків.
СК – призначений для формування сигналів керування, які формуються процесором при зверненні до ЗП ( MEMR, MEMW,I/OR, I/OW, INTA ).
ППІ – служить для обміну інформацією з зовнішніми пристроями АЦП і ЦАП.
АЦП отримує на вході МПП аналоговий сигнал та перетворює його в цифровий код.
ЦАП здійснює зворотне перетворення: двійковий код, який поступив на його вхід перетворюється у відповідний аналоговий сигнал.
В МПП використовуються також логічні елементи, шинний формувач, дешифратори адрес.
4.2 Розподіл адресного простору
В адресний простір МП КР580ВМ80 входить 64К адрес пам’яті (216), що визначається 16 - розрядною адресною шиною. Мікропроцесор КР580ВМ80 може здійснювати синхронний і асинхронний обмін інформацією за даними адресами з пам’яттю (ПЗП, ОЗП) та зовнішніми пристроями. При обробці інформації МП зчитує коди команд, операнди і записує одержаний вміст в регістри РЗК або виконує обмін інформації з пам’яттю та зовнішніми пристроями.
Можливі два підходи до організації звертання до пристроїв обміну інформації. Перший підхід використовує звертання до зовнішніх пристроїв, як до комірок пам’яті. Тобто, адресний простір, що відводиться для цих пристроїв включає 64К адрес. Однак, внаслідок повного вкладення адресного простору пристроїв вводу/виводу в простір адрес пам’яті, останнє пропорційно зменшується з збільшенням числа обслуговування зовнішніх пристроїв вводу/виводу. До переваг даного підходу можна віднести можливість використання різноманітних команд пересилання даних.
Інший підхід використовує роздільне керування пам’яттю і зовнішніми пристроями. Лиш тільки дві команди IN і OUT, в цьому випадку, призначені для обміну інформації з зовнішніми пристроями. Так, як для цих команд адрес для зовнішнього пристрою 8-ми розрядний, то МП КР580ВМ80 може звертатись до 256 пристроїв воду і 256 пристроїв виводу. При цьому адресний простір пам’яті буде максимальним (64К).
Розподіл простору адрес в МПП обробки аналогового сигналу
Розподіл адрес в ПЗП.
Таблиця 4.2.1
Адреса
Вміст пам’яті
Пояснення
0000h (RST0)
jmp Main
На початкову ініціалізацію в головній програмі
0020h (RST4)
jmp CONTROL
На підпрограму обробки переривання
0090h
MULD:
Підпрограма беззнакового множення
0100h
Main:
Головна програма
0120h
CONTROL:
Підпрограма обробки переривання
0149h
GGG:
Підпрограма цифрової обробки інформації
01FCh
a0
Коефіцієнт a0
01FDh
a1
Коефіцієнт a1
01FEh
a2
Коефіцієнт a2
01FFh
b1
Коефіцієнт b1
Розподіл адрес в ОЗП.
Таблиця 4.2.2
Адреса
Вміст пам’яті
Пояснення
1000h
xn
Вхідний сигнал
1002h
xn-1
Попередній вхідний сигнал
1004h
xn-2
Передпопередній вхідний сигнал
1006h
yn
Вихідний сигнал
1008h
yn-1
Попередній вихідний сигнал
3000h
SP
Вершина стеку
Для даного завдання здійснюється обмін з АЦП через переривання RST 4.
В двійковій формі команда RST N має вигляд:
1 1 1 1 1,
Для RST 4 код буде 11100111 .
Ця команда здійснює перехід на адресу 8*N.
Для RST 4 це дорівнює: 8*N=8*4=3210=20h=00010000b.
4.3 Алгоритм функціонування МПП.
Ввід інформації з АЦП здійснюється в режимі переривань. При готовності даних формується сигнал переривання, в результаті чого МП переходить на підпрограму обробки даного переривання. Далі відбувається ввід інформації з АЦП. Введена інформація обробляється у відповідності до заданого рівняння і виводиться у вигляді аналогового сигналу через ЦАП.
В процесі обробки запиту на переривання, яке здійснюється подачею на вхід ІNT мікропроцесора логічної одиниці, мікропроцесор сигналом INTE=0 забороняє всі можливі запити на переривання. Далі виконується машинний цикл переривання, в якому видається керуюче слово з одиницями в INTA що означає підтвердження переривання, М1 – початок машинного циклу, W0 – запис або вихід, а MEMR=0 – читання з пам”яті. При цьому сигнал DBIN=1 означає прийом інформації з шини даних. Тобто мікропроцесор читає з шини даних деяку інформацію, що вибирається з пама”яті чи портів. В цей момент на ШД повинен бути встановлений код команди RST 4.
Для цифрової обробки фільтра, що описується рівнянням:
1/(1*y(t)+1/(2*dy(t)/dt=1/(2 +(1(2dx(t)/dt+1/(2*d2x(t)/dt2+(1x(t) (1.1)
З вводом значень використовуючи RST4 можна запропонувати наступний алгоритм функціонування МП-пристрою.
Рис. 4.3.1Алгоритм функціонування МПП.
Рис. 4.3.2 Структура підпрограми обробки переривань.
Необхідність в команді EI (дозвіл переривання ) зумовлена тим, що вихід INTE в стан логічної 1 (дозвіл переривання) можна перенести лише програмним способом, а стан логічного 0(заборона переривання) – як програмною командою DI, так і апаратним способом.
5. Загальна структура програми роботи МПП.
Основна програма функціонує згідно алгоритму. Вона починається з ініціалізації мікросхеми КР580ВВ55 для обміну з ЦАП і АЦП. Після того АЦП встановлюється (після гашення) в режим перетворення вхідного сигналу. Далі викликається підпрограма цифрової обробки інформації.
Основна програма:
ORG 100h
7 MVI A,10011000b ; ініціалізація I-го ВВ55 для вводу
10 OUT 10110011b
7 MVI A,10000000b ; ініціалізація II-го ВВ55 для виводу
10 OUT 11110011b
7 MVI A,00000101b ; запуск АЦП
10 OUT 10110010b
7 MVI A,00001001b ; запуск буферних регістрів
10 OUT 10110010b
7 MVI A,0h
10 OUT 10110010b ; дозвіл на перетворення АЦП
17 CALL GGG ; розрахунок згідно виведеної формули
7 HLT
Загальна кількість тактів ,за які виконується основна програма: 92
5.1 Опис програм вводу/виводу
Зв'язок між АЦП і ЦАП з однієї сторони та МП з іншої здійснюється через ППІ. Для організації вводу/виводу треба задати режим роботи самої ІС КР580ВВ55.
Згідно завдання нам необхідно вводити 10 біт і виводити 12 біт даних . Для виконання цього використаємо ППІ, причому запрограмуємо його на 0-ий режим роботи.
РКС для першого ППІ:
Виберемо так, що для ВВ55 канал А працює на ввід даних, розряди С6-С7 каналу С теж на ввід, канал В та молодші розряди каналу С - на вивід.. Для запуску АЦП будемо використовувати розряд С2.
Отримуємо таке РКС для 1-го ППІ:
Рис. 5.1.1 РКС для 1-го ППІ
В другому ППІ використаємо канали А та В для виводу даних, а канал С залишимо незадіяним.
РКС для 2-го ППІ
Рис. 5.1.2 РКС для 2-го ППІ
Задамо адреси портів ППІ і запишемо їх в таблицю 5.1.1:
Адреси портів ППІ Таблиця 5.1.1
Адреса для ППІ1
Канал
Адреса для ППІ2
10110000b (0B0H)
10110001b (0B1H)
10110010b (0B2H)
10110011b (0B3H)
А
В
С
РКС
11110000b (0F0H)
11110001b (0F1H)
11110010b (0F2H)
11110011b (0F3H)
Таким чином, код програми, що ініціалізує ППІ, має такий вигляд:
MVI A,10011000b ; ініціалізація I-го ВВ55 для вводу
OUT 10110011b
MVI A,10000000b ; ініціалізація II-го ВВ55 для виводу
OUT 11110011b
Наступним кроком для зчитування інформації буде ініціалізація АЦП. Для цього необхідно на вхід «Гашення / перетворення» АЦП подати логічну 1 для скидання та логічний 0 для запуску перетворення. Як бачимо із схеми підключення АЦП, вихід «Гашення / перетворення» АЦП підключений до ППІ. Це є лінія каналу С – C2. Отже, щоб ініціалізувати АЦП необхідно виконати наступну послідовність команд:
MVI A,1h ; запуск АЦП
OUT 10110010b
MVI A,0h
OUT 10110010b ; дозвіл на перетворення АЦП
Після задання режиму роботи ППІ та ініціалізації АЦП можна приступити до зчитування значення xn з АЦП. Дані з виходу АЦП поступають в канал А і С .
IN 10110000b
LXI H,1000h
MOV M,A
INX H
IN 10110010b
RLC
RLC
MOV M,A
Після виконання цієї послідовності команд введене xn буде міститись в пам’яті зі адресою 1000h.
Вивід результату на ЦАП виконується через канали А та В і програмується так:
MOV A,L
OUT 11110000b
MOV A, H
OUT 11110001b
5.2 Опис програми обробки інформації
Програма цифрової обробки інформації повинна неодноразово виконувати операції множення двобайтових чисел на одно байтові.
Підпрограма множення.
Вхідні дані: регістр (D,E) – множене; акумулятор (C) – множник.
Результат: регістри D,E – добуток (D – старші розряди; E – молодші).
Підпрограма використовує регістр С.
MULD:
XRA A
5 MOV H,A
5 MOV L,A
4 ADD C
11 RZ
4 XRA A
4 ORA D
4 ORA E
11 RZ
5 MOV A,C
7 MVI B,8
JJC1:
10 DAD H
4 RAL
10 JNC JJC2
10 DAD D
7 ACI 0
JJC2:
5 DCR B
10 JNZ JJC1
10 RET
Загальна кількість тактів, за які виконується підпрограма, рівна 510.
Підпрограма обробки переривання і занесення елементів Хn , Хn-1 ,Хn-2 та Yn-1.
CONTROL:
4 DI ;заборонити переривання
11 PUSH PSW
16 LHLD 1002h ;занесення попереднього значення Xn-1 в комірку
16 SHLD 1004h ;для Xn-2
16 LHLD 1000h ;занесення попереднього значення Xn в комірку
16 SHLD 1002h ;для Xn-1
16 LHLD 1006h ;занесення попереднього значення Yn в комірку
16 SHLD 1008h ;для Yn-1
10 IN 10110000b
5 MOV L,A
10 IN 10110010b
4 RLC
4 RLC ;сформувати розряди в перших двох бітах
5 MOV H,A ;занести байт в Н
16 SHLD 1000h ;збереження в Xn
10 POP PSW
4 EI ;дозволити переривання
10 RET ;вихід з підпрограми
Загальна кількість тактів, за які виконується підпрограма, рівна 189.
Підпрограма цифрової обробки інформації
GGG:
16 LHLD 1000h ; XN в HL
4 XCHG ; XN в DE
13 LDA 01FCh ; A0 в A
5 MOV C,A ; A0 в C
17 CALL MULD ; результат в DE
4 XCHG ; результат в HL
16 SHLD 100Ah ; A0*XN по адресу 100Ah
;------------
16 LHLD 1002h ; XN-1 в HL
4 XCHG ; XN-1 в DE
13 LDA 01FDh ; A1 в A
5 MOV C,A ; A1 в C
17 CALL MULD ; результат в DE
4 XCHG ; результат в HL
16 SHLD 100Ch ; A1*XN-1 по адресу 100Ch
;------------
16 LHLD 1004h ; XN-2 в HL
4 XCHG ; XN-2 в DE
13 LDA 01FEh ; A2 в A
5 MOV C,A ; A2 в C
17 CALL MULD ; результат в DE
4 XCHG ; результат в HL
16 SHLD 100Eh ; A2*XN-2 по адресу 100Eh
;------------
16 LHLD 1008h ; YN-1 в HL
4 XCHG ; YN-1 в DE
13 LDA 01FFh ; B0 в A
5 MOV C,A ; B0 в C
17 CALL MULD ; результат в DE
16 LHLD 100Ch ; A1*XN-1 в HL
10 DAD D ; A1*XN-1 + В0*YN-1 = HL
4 XCHG ; A1*XN-1 + В0*YN-1 = DE
16 LHLD 100Ah ; A0*XN в HL
10 DAD D ; A0*XN + A1*XN-1 + В0*YN-1 = HL
4 XCHG ; A0