Міністерство освіти і науки України
Національний університет „Львівська політехніка”
Кафедра САПР
Курсова робота
з курсу “Комп’ютери та мікропроцесорні системи”
ПРИСТРІЙ МІКРОПРОЦЕСОРНОЇ ОБРОБКИ АНАЛОГОВОЇ ІНФОРМАЦІЇ
Керівник
Завдання до курсової роботи
Тема роботи: Мікропроцесорна обробка аналогової інформації
Термін здачі: 10.12.2005
Завдання:
Функціональна залежність: .
Розрядність АЦП: 10.
Полярність вхідного сигналу: Однополярний (невід’ємний).
Огранізація обміну МП з АЦП: через переривання контролера КР580ВН59 за адресою 007Ch; Використати режим роботи КР580ВВ55 – 1.
Об’єм ОЗП (байт): 2К; Використати МП з наступною організацією 1024х4.
Вид функціонального вузла: Шинні формувачі з використанням К589АП26.
Анотація
Храмцов О. С., “Пристрій мікропроцесорної обробки аналогової інформації”. Курсова робота. – НУ “Львівська політехніка”, каф. САПР, дисципліна “Комп’ютери і мікропроцесорні системи”, 2005.
Курсова робота складається з 34 сторінок, 1 додатку. В даній курсовій роботі розроблено компоненти апаратного і програмного забезпечення мікропроцесорного пристрою, який включає аналогово-цифровий і цифрово-аналоговий перетворювачі і виконує обробку за функціональною залежністю аналогового сигналу. Дана робота охоплює ввід і первинну обробку аналогової інформації, подальшу цифрову обробку інформації за програмою і вхідними даними, а також вивід обробленої інформації в аналоговій формі для подальшого використання.
Зміст
Перелік умовних скорочень………………………………………….……………...5
Вступ……………………………………………………………………..…………...6
Синтез аналогової схеми фільтру…………………………………….…..……..7
Синтез структурної схеми цифрового фільтру………………………………...9
Вибір і обгрунтування типу АЦП і ЦАП……………………………………...10
3.1 Вибір типу АЦП……………………………...……………………...…………10
3.2 Вибір типу ЦАП……………………………..………….……………...……....13
3.3 Структура представлення даних…………………………………….………..16
Структурна схема та алгоритм функціонування МПП…..…………………..18
4.1 Опис структурної схеми МПП……………………………...………………...18
4.2 Розподіл адресного простору………………………………..………………..19
4.3 Алгоритм функціонування МПП……………..…………….………………...22
Загальна структурна програми роботи МПП……………………………........24
5.1 Опис програм вводу, виводу.............................................................................25
5.2 Опис програми обробки інформації.................................................................27
5.3 Оцінка верхньої фінітної частоти вхідного аналогового сигналу.................29
Опис функціонального вузла..............................................................................30
Аналіз результатів та висновки...............................................................................33
Список використаної літератури..............................................................................34
Перелік умовних скорочень
МПП – мікропроцесорний пристрій
МПС – мікропроцесорна система
МП – мікропроцесор
ГТІ – генератор тактових імпульсів
ПЗП – постійний запамятовуючий пристрій
ОЗП – оперативний запамятовуючий пристрій
СК – системний контролер
ДШаП – дешифратор адрес памяті
ВІС – велика інтегральна схема
АЦП – аналогово-цифровий перетворювач
ЦАП – цифро-аналоговий перетворювач
СШ – системна шина
ШД – шина даних
ША – шина адрес
ШК – шина керування
ОП – операційний підсилювач
ППІ – паралельний програмований інтерфейс
ШФ – шинний формувач
РКС – регістр керуючого слова
БР – буферний регістр
КП – контролер переривань
Вступ
На сьогоднішній день мікропроцесорні системи займають головне місце в розвитку сучасної науки і техніки. Неможливо уявити собі життя сучасної людини без цифрових пристроїв. Вони всюди нас оточують і тому нам як майбутнім інженерам в галузі інформаційних технологій просто необхідно розуміти технічний бік цих пристроїв і розуміти їх функціонування а деколи й самим розробляти дані пристрої.
Прикладом однієї з таких задач може бути задача проектування звукових карт, а також задача, спрощенням якої є завдання на курсову роботу. В даній курсовій роботі пов’язано ЦАП і АЦП з обробкою вхідного сигналу та видачею вихідного за допомогою мікропроцесорної системи на базі процесора КР580ВМ80.
Швидкодія ЦАП і АЦП обмежується динамічними похибками, які виникають при квантуванні аналогової величини до часу. Динамічна похибка визначає час перетворення Tn. Для АЦП і ЦАП перетворення представляє собою часовий інтервал між моментом поступлення вхідного коду і моментом встановлення із заданою точністю вихідного сигналу. Час перетворення ЦАП в основному визначається частотними характеристиками ОП, включених на виході.
Для АЦП важливим параметром є апертурний час. Це параметр часової невизначеності фіксації моменту отримання результатів перетворення на протязі часу Тn. Іншим параметром, що визначає швидкодію, є період квантування Тк , який представляє собою інтервал часу між двома послідовними перетвореннями. В ЦАП максимальна швидкість вхідного коду визначається часом встановлення вихідного сигналу їз заданою точністю.
ЦАП поділяються на послідовні і паралельні. Більшість ЦАП, які випускаються на сьогоднішній час у вигляді інтегральних мікросхем,- паралельного типу. Принцип дії паралельних ЦАП базується на сумуванні еталонних струмів (напруг), що відповідають вагам розрядів. Для перетворення послідовного коду в аналоговий сигнал використовують ЦАП послідовного типу. Найбільш поширеними ЦАП послідовного типу є ЦАП, які побудовані на основі пристроїв вибірки і зберігання.
1. Синтез аналогової схеми фільтру
Кожний неперервний сигнал, що представляється змінною в часі напругою, характеризується своїм спектром частот. Будь-яка частота або полоса частот може бути посилена, послаблена, виключена або виділена фільтрацією. Фільтрація – це процес зміни спектра частот сигнала. Прикладом фільтрації сигналів може служити виключення шумів, визваних недосконалістю каналів передачі, розділення двох або більше сигналів, спеціально змішаних для збільшення пропускної здатності канала зв’язку, демодуляція сигналів.
Задано рівняння зв’язку між вхідним і вихідними сигналами:
,
де x(t) – вхідний аналоговий сигнал;
y(t) – вихідний аналоговий сигнал;
τ – стала величина.
Перетворивши вираз отримаємо:
Приймемо значення:
Для чого: , а
Використовуючи рівняння і формули перетворення Лапласа
,
,, маємо
Спростимо це рівняння і зведемо подібні доданки:
або
В отриманому виразі знаменник представляє набір послідовно з’єднаних у вхідному колі резистора (R=1), індуктивності (L=τp). Чисельник визначає набір елементів у вихідному колі, в даному випадку (R=1). Параметри елементів, для даного прикладу, визначаються виразами: R=1; L=(p.
Згідно з отриманим рівнянням побудуємо аналогову схему фільтру:
Схема 1. Функціональна аналогова схема фільтра на пасивних елементах
Складемо рівняння для цього чотириполюсника:
або , так як
, , тоді
.
Отже, значення сталої ( рівне, .
Технічні характеристики аналогових схем фільтрів на практиці обмежені та потребують схем корекції від температурного дрейфу та інших зовнішніх впливів. Цифрові методи обробки інформації оминають ці недоліки і знайшли широке застосування з появою мікропроцесорних пристроїв. Мікропроцесорна обробка характеризується збільшенням точності функціонального перетворення, швидкістю та гнучкістю, що забезпечується цифровим програмуванням та можливістю фільтрації більшого числа аналогових сигналів.
2. Синтез структурної схеми цифрового фільтру
Будь-який неперервний сигнал, спектр якого обмежений верхніми частотами, може бути представлений у вигляді послідовності своїх значень, що розділені один від одного проміжками часу Δt. Цифровий фільтр – пристрій, який дозволяє перетворити дискретизований сигнал x(t) у інший y(t). Це цифрова схема для зміни частотного спектра дискретних сигналів. Цифровий фільтр може бути реалізований як апаратно, так і програмно. При апаратній реалізації необхідними схемними елементами є перемножувачі, суматори і елементи затримки.
Для дискретизації рівняння використовуються наближені рівності:
.
Виразивши yn через інші параметри даного рівняння:
.
Замінюємо: , .
В результаті отримаємо рівняння: .
Побудова схеми цифрового фільтра.
Схема 2. Схема цифрового фільтра
В дану схему входять:
∑ – суматор;
DL – елемент затримки;
ХY – перемножував.
Константи a0, a1 при наближеному обчисленні рівні відповідно 4*105 і 1, що полегшує реалізацію їх обчислення.
3. Вибір і обгрунтування типу ЦАП і АЦП
У відповідності з умовами даної роботи для цифрового фільтру потрібно використати десятирозрядний АЦП, розрядність ЦАП повинна бути такою ж. Критеріями вибору мікросхеми ЦАП і АЦП, окрім розрядності, є наступні їх параметри: час перетворення, похибка перетворення, парність, поширеність.
3.1Вибір типу АЦП
Напівпровідникова ВІС функціонально закінченого АЦП типу К1113ПВ1 призначена для застосування в електронній апаратурі в складі блоку аналогового вводу. Мікросхема виконує функцію 10-розрядного аналого-цифрового перетворення однополярного або біполярного вхідного сигналу з представленням результатів перетворення двійкового коду.
Мікросхема К1113ПВ1 виготовлена в 18-вивідному герметичному мало керамічному корпусі типу 238.18-1 з вертикальним розміщенням виводів.
Характеристики АЦП К1113ПВ1:
Розрядність – 10.
Час перетворення, 30 мкс.
Похибка, зумовлена нелінійністю, (0,1%
К1113ПВ1 – АЦП послідовного наближення, що містить в своєму складі наступні вузли: внутрішнє джерело опорної напруги, тактовий генератор, компаратор напруг, формувач сигналу готовності даних. АЦП має вихідні пристрої з трьома стабільними станами, що спрощує його спряження з сигналами МПП.
Нижче подано схему даного АЦП:
D1(D10 – цифрові виходи
U2 – напруга живлення
U1 – друга напруга живлення
START – пуск АЦП
IN – аналоговий вхід
ZS – зсув нуля
READY – готовність даних
AGND – аналогова земля
DGND – цифрова земля
Рис. 1. Мікросхема К1113ПВ1
Включення АЦП в режим однополярного сигналу здійснюється під’єднанням виводу 15 (зсув нуля) до 16 (цифрова земля). Робота даного АЦП визначається відповідними керуючими сигналами. При встановленні на вході «гасіння перетворення» рівня 0, АЦП починає перетворювати вхідну інформацію. Через час потрібний для перетворення ((30мкс), на виході 17 з’являється сигнал з рівнем 0, на підставі якого дані з АЦП можуть бути введені мікропроцесором. Прийнявши дані МП встановлює на вході 11 гасіння перетворення рівень логічної одиниці. За цим сигналом гаситься інформація в регістрі послідовного наближення і АЦП знову готовий до обробки і прийому даних. Цей АЦП може обробляти однополярний сигнал напругою до 10,24В і двополярний ( 5,12В.
Встановлення АЦП у вихідний стан і запуск його в режим перетворення проводиться зовнішнім логічним сигналом «гашення перетворення». По закінченні перетворення АЦП виробляє сигнал «готовність даних», який означає, що на цифрові виходи поступила інформація.
Запуск АЦП в режимі переривання здійснюється видачею 0 в один з розрядів каналу С паралельного інтерфейсу. По закінченні перетворення на вході “готовність даних” з’являється сигнал логічного 0, який інвертується і подається на вхід синхронізації С тригера. При цьому на його вихід Q подається сигнал логічної одиниці, який поступає на вхід запиту переривання IRQ0 KП. Все це можливе тільки в тому випадку, коли INTE=1 (сигнал дозволу переривання). МП після запиту переривання встановлює INTE=0 (заборонене переривання) і видається слово стану з INTA=1 (підтвердження переривання, тобто виконується машинний цикл переривання. На МП формується сигнал DBIN=1. Це означає, що МП читає з ШД деяку інформацію, яка не вибирається з пам’яті. В цей час КП формує і видає код команди CALL з заданою адресою і там виконується обробник переривань. По цій команді МП переходить на підпрограму обробки переривань.
Нижче подана часова діаграма роботи ВІС К1113ПВ1:
Запуск АЦП здійснюється подачею сигналу START , після закінчення перетворення подається сигнал READY ,на МП, що призводить до переривання. Під час виконання переривання у програмі здійснюється зчитування даних з портів А та В ППІ.
Схема 3. Підлючення АЦП до МП
3.2 Вибір типу ЦАП
В якості мікросхеми ЦАП було вибрано мікросхему К1118ПА2. Її було вибрано за такими критеріями: вихідна розрядність дорівнює розрядності АЦП (10) і згідно завдання може опрацьовувати обробку інформації яку треба обробити, також серед аналогів дана мікросхема має найнижчий час перетворення (0,08 мікросекунд).
Табл.1 Основні технічні параметри ЦАП К1118ПА2
Параметер
Не менше
Не більше
Число розрядів
10
-
Нелінійність, %
-1/2
1/2
Диференційна нелінійність
-1
1
Абсолютна похибка перетворення
-
200
Напруга зміщення 0 на вході U10, мв
-10
Діапазон вихідної напруги
-1,024
0
Напруги живлення Icc1,мА
-
15
Напруги живлення Icc2,мА
-120
-
Діапазон вхідної напруги В вис. рівня
-150
-
Діапазон вхідної напруги В низ. рівня
-750
-
Напруга джерела живлення Ucc1
0
7
Напруга джерела живлення Ucc2
-7
0
Вх. напруга вис./низ. рів. U1h, U1l, В
-7
7
Нижче подано схему ЦАП К1118ПА2.
Схема 4. Мікросхема ЦАП К1118ПА2
Призначення виводів мікросхеми К1118ПА2:
2 – напруга джерела живлення Ucc1;
3 – компенсація характеристики операційного підсилювача ;
4 – опорна напруга UREF;
5,6,8 – загальні (аналогові);
7 – вихід;
9 – напруга джерела живлення Ucc2;
10 – загальний (цифровий);
11 – прямий вхід С;
12 – прямий вхід G;
13 – інверсний вхід ;
14 – інверсний вхід ;
15, 18, 22, 24, 26, 28, 30, 32, 34, 36, 38 – інверсні входи , , ;
16, 19, 23, 25, 27, 29, 31, 33, 35, 37, 39 – прямі входи D1-D9, D10A, D10B;
17 – вхід 2С;
20 – вхід Н;
21 – вхід L.
Схема 5. Структурна схема підключення мікросхеми ЦАП до ППІ
Принцип такого підключення 10-розрядного ЦАП до ППІ полягає в наступному:
1) З’єднання 8-розрядів PA і двох молодших розрядів PB з 10-розрядани ЦАП.
2) Встановлення нульового режиму стану цифрових входів і напруг на виході ЦАП К1118ПА2 згідно з вище сказаним.
3) З’єднання PC1 з виводом 11 (С) ППІ. Дане підключення забезпечить одночасну передачу даних з порта PA та двох молодших розрядів порту PB.
Таким чином, якщо інформація буде міститись в буфері PA та PB, то ЦАП буде повідомлений про можливість прийом даних з ППІ. Перетворивши інформацію, на виході 7 U встановлюється певне значення напруги.
3.3Структура представлення даних
Оскільки для обчислення рівняння наш АЦП є 10 розрядним то Х буде також мати 10 розрядів але для представлення в пам’яті, яка має мінімальну комірку в 8 розрядів, ми використовуємо дві комірки памяті, частина бітів яких залишається незадіяними
X
D16
D15
D14
D13
D12
D11
D10
D9
D8
D7
D6
D5
D4
D3
D2
D1
При наближеному обчисленні констант a0, а1 виявилось що вони рівні відповідно 4*105 і 1, тому для їх представлення беремо по 1 біту, а на виході в ЦАП будемо робити поправку на 105 (на виході поставити усілок на 10 в 5).
a0, a1 – 8 біт
a0
D8
D7
D6
D5
D4
D3
D2
D1
a1
D8
D7
D6
D5
D4
D3
D2
D1
Y – 10 розрядів , виходячи з умови задачі
Y
D16
D15
D14
D13
D12
D11
D10
D9
D8
D7
D6
D5
D4
D3
D2
D1
Структурна схема та алгоритм функціонування МПП
ША
ШД
ШК
Схема 6. Структурна схема МПП
4.1 Опис структурної схеми МПП
Табл. 2 Опис структурної схеми МПП
Позначення
Опис
Мікросхема
МП
Мікропроцесор
КР580ВМ80
ГТІ
Генератор тактових імпульсів
КР580ГФ24
СК
Системний контролер
КР580ВК28
ШФ
Формувач шини адрес
КР580АП26
АЦП
Аналогово-цифровий перетворювач, 10 розрядів
К1113ПВ1
ЦАП
Цифро-аналоговий перетворювач, 10 розрядів
К1118ПА2
ППІ
Паралельний програмований інтерфейс
КР580ВВ55
КП
Контролер переривань
КР580ВН59
Опис пристроїв МПП.
Для функціонування мікропроцесорної системи необхідні такі елементи як: МП, ГТІ, СК, ШФ. Також необхідно включити АЦП і ЦАП. Відповідно до завдання, щоб працювати з АЦП, потрібно застосувати ППІ для обміну з мікропроцесорною системою, у нашому випадку краще використати дві мікросхеми, для того щоб збільшити швидкодію перетворення сигналу. Для функціонування МПС треба включити пам’ять: ОЗП – для можливості запису необхідної буферної інформації, ПЗП – для забезпечення зберігання програмного забезпечення та можливості початкового старту. Також необхідні і адресні дешифратори: для пам’яті та вводу і виводу, щоб ідентифікувати запити до пристроїв.
4.2Розподіл адресного простору
В адресний простір МП КР580ВМ80A входить 64К адрес пам'яті (216), що визначається 16 - розрядною адресною шиною. Мікропроцесор КР580ВМ80A може здійснювати синхронний і асинхронний обмін інформацією за даними адресами з пам'ятю (ПЗП, ОЗП) та зовнішніми пристроями. При обробці інформації МП зчитує коди команд, операнди і записує одержаний вміст в регістри РЗК або виконує обмін інформації з пам'ятю та зовнішніми пристроями. Можливі два підходи до організації звертання до пристроїв обміну інформації.
Перший підхід використовує звертання до зовнішніх пристроїв, як до комірок пам'яті. Тобто, адресний простір, що відводиться для цих пристроїв включає 64Кб адрес. Однак, внаслідок повного вкладення адресного простору пристроїв вводу-виводу в простір адрес пам'яті, останнє пропорційно зменшується з збільшенням числа обслуговування зовнішніх пристроїв вводу-виводу. До переваг даного підходу можна віднести можливість використання різноманітних команд пересилання даних.
Інший підхід використовує роздільне керування пам'яттю і зовнішніми пристроями. Лише тільки дві команди IN і OUT, в цьому випадку, призначені для обміну інформації з зовнішніми пристроями. Так, як для цих команд адрес для зовнішнього пристрою 8-ми розрядний, то МП КР580ВМ80 може звертатись до 256 пристроїв вводу і 256 пристроїв виводу. При цьому адресний простір пам'яті буде максимальним (64Кб).
Розмістимо в адресному просторі МП КР580ВМ80А, що становить 64Кб адреси ПЗП та ОЗП. Відповідно в ПЗП будуть входити:
коефіцієнти a0, а1;
головна програма;
підпрограма переривання, та підпрограма обробки даних.
В ОЗП розмістимо x(n), y(n), х(n-1).
Табл. 3 Розподіл ПЗП
Адреса (h)
Пояснення
0000
jmp Main (RST 0)
…….
…….
0021
a
0022
b
0023
Mul4
……..
0032
0033
DAC
……..
0055
……..
007C
IntF
……..
0096
0097
Main
……..
00BF
Табл. 4 Розподіл ОЗУ
Адреса (h)
Пояснення
F800
x(n)
F801
F802
y(n)
F803
F804
х(n-1)
F805
……..
........
F900
Stack_pointer
……..
FFFF
Так, як в курсовій роботі використовується два паралельних інтерфейси, то для того, щоб забезпечити їхню коректну роботу потрібно надати адреси портів кожному із ППІ, а також розробити дешифратори під дані адреси для кожного із них.
Табл. 5 Адреси портів вводу-виводу
Адреса (h)
Пояснення
Адреси портів КР580ВВ55(1), що призначений для вводу
0040
Канал A
0041
Канал B
0042
Канал C
0043
РКС
Адреси портів КР580ВВ55(2), що призначений для виводу
0050
Канал A
0051
Канал B
0052
Канал C
0053
РКС
Нижче приводиться схема дешифраторів для ППІ, де CS1 іде на ППІ з АЦП, а CS2 на ППІ з ЦАП
Схема 7. Схема дешифраторів для ППІ
Також в курсовій роботі використовується КП.
Табл. 6 Адреси контролера переривань
Адреса (h)
Пояснення
Адреси портів КР580ВВ55(1), що призначений для вводу
0060
КСІ 1
0061
КСІ 2
Нижче приводиться схема дешифратора для КП, де CS3 іде на КП
Схема 8. Схема дешифратора для КП
4.3 Алгоритм функціонування МПП
Для всіх пристроїв існує режим початкового пуску. При одночасному включенні живлення мікросхем (або послідовно у вказаному порядку) і поступленні тактових імпульсів на мікропроцесор з генератора тактових інтервалів всі регістри і прапорці МП встановлюються в довільні стани. Після цього подається з ГТІ на вхід RESET МП сигнал високого рівня тривалістю не менше 3 тактів. Лічильник команд (PC), тригер дозволу переривання (вихід INTE), а також тригер підтвердження захоплення (вихід HLDA) скидається, і мікропроцесор починає вибірку з пам'яті команд, розміщених з нульової адреси.
В залежності від виконуваних команд МП проходить через послідовність різноманітних машинних циклів, які мають відповідну кількість тактів. Так, в результаті виконання команди HLT відбувається програмний перехід в стан "зупинка". Стан роботи МП "очікування" призначений для узгодження його роботи з повільно діючою пам’яттю або зовнішніми пристроями і визначається рівнем вхідного сигналу READY на вході МП і виході WAIT. По сигналу високого рівня на вході HOLD МП переходить в стан "захоплення". Тоді сигнали керування на виводах МП не змінюються, однак виводи шин даних і адресної шини переходять у високоімпедансний стан. Цей стан призначений для того, щоб зовнішній пристрій міг записувати або зчитувати інформацію безпосередньо в пам’ять системи, обходячи мікропроцесор. Режим "захоплення" істотно підвищує швидкість обміну інформації, що визначається за ініціативою зовнішнього пристрою. В стані "переривання" МП опиняється при поступленні на вхід INT сигналу високого рівня, які періодично перевіряються МП в останньому такті виконання команди. Запит на переривання може бути виконаний, якщо тригер переривання МП (вихід INTE) встановлений в "1". На початку цей тригер за сигналом RESET скидається в "О". Для переходу на підпрограму обробки переривань можна застосовувати команди RST N або CALL.
Функціонування МПС відбувається за дискретизованим рівнянням . За умовою даного варіанту курсової роботи обмін даними відбувається за допомогою переривання. Тому принцип роботи МПС полягає в наступному:
1. Після отримання МП запиту на переривання він повинен дозволити переривання сигналом виходу INTE.
2.Якщо дані готові для обробки, то формується сигнал переривання, в результаті чого МП переходить на підпрограму обробки даного переривання.
3. Наступним кроком є введення інформації з АЦП. Введена інформація обробляється у відповідності до рівняння і виводиться у вигляді аналогового сигналу через ЦАП.
Процес обробки запиту на переривання відбувається таким чином: на вхід ІNT0 КП подається логічна одиниця. Далі КП формує виклик переривання в МП і видає на СШ код команди CALL з адресою заданою йому при ініціалізації.
Отже, алгоритмом функціонування МПП згідно заданого рівняння подано нижче у вигляді блок схеми:
Рис. 3 Блок-схема алгоритму функціонування МПП
Загальна структура програми роботи МПП
Загальна структура обробки МПС полягає в наступному:
1) З комірки пам’яті 0000h відбувається перехід на головну програму.
2) В головній програмі ініціалізується АЦП, ЦАП, встановлюється stack_pointer на адресу 8300h та відбувається перехід в підпрограму обробки даних DAC. В якій відбувається перевірка на виклик підпрограми переривання.
3) Якщо ж виклик був, то викликається підпрограма обчислення рівняння цифрового фільтра.
4) Обчисливши значення рівняння цифрового фільтру, МПП виводить його в ЦАП, що в свою чергу перетворює дане в аналоговий сигнал.
Код головної програми виглядає наступним чином:
Мнемоміка
Кількість байт
Кількість тактів
Main:
lxi h,0
3b
10t
lxi sp,F806h
3b
10t
push h
1b
11t
push h
1b
11t
push h
1b
11t
push h
1b
11t
lxi sp,F900h
3b
10t
mvi a,10110110b ; ініціалізація
2b
7t
out 43h; ППІ(1) призначеного для АЦП.
2b
10t
mvi a,10100100b ; ініціалізація
2b
7t
out 53h ;ППІ(2) призначеного для ЦАП.
2b
10t
mvi a,00000001b ;на вхід
;“гашення/перетворення”-C0
2b
7t
out 41h ; подається лог. “1”.
2b
10t
xra a ; онулення акумулятора
2b
7t
out 41h ; на вхід
;“гашення/перетворення”-C0
; подається лог. “0”.
2b
10t
mvi a,11110110b ;КСІ1
2b
7t
out 60h ;
2b
10t
mvi a,00000000b ;КСІ2
2b
7t
out 61h ;
2b
10t
call DAC ; процедура обробки інформації
3b
17t
Головна програма виконується за 193 тактів і займає в па’мяті 40b.
5.1Опис програм вводу-виводу
В даній курсовій роботі використовується два паралельних програмованих інтерфейси. Перший ППІ КР580ВВ55(1) ми використовуємо для вводу інформації з 10-розрядного АЦП, а другий для виводу інформації через 10-розрядний ЦАП.
Відповідно ППІ(1) у випадку коли порти PA і PB використовуються для одночасного введення інформації запрограмований наступним чином:
7
6
5
4
3
2
1
0
1
0
1
1
0
1
1
0
Група А:
Розряд – (7): ознака РКС.
Розряди – (6-5): вибір 1 режиму роботи каналу PA.
Розряд – (4): канал PA запрограмований на ввід інформації.
Розряд – (3): розряди C4-C7 програмуємо на вивід інформації.
Група B:
Розряд – (2): вибір 1 режиму роботи каналу PВ.
Розряд – (1): канал PВ запрограмований на ввід інформації.
Розряд – (0): розряди C0-C3 програмуємо на вивід інформації.
Використовуючи асемблер МП КР580ВМ80А код програми, що ініціалізує ППІ має наступний вигляд:
mvi a, 10110110b
out 43h
де 43h – адреса керуючого слова.
ППІ(2) у випадку коли порти PA і PB використовуються для одночасного виведення інформації запрограмований наступним чином:
7
6
5
4
3
2
1
0
1
0
1
0
0
1
0
0
Група А:
Розряд – (7): ознака РКС.
Розряди – (6-5): вибір 1 режиму роботи каналу PA.
Розряд – (4): канал PA запрограмований на вивід інформації.
Розряд – (3): розряди C4-C7 програмуємо на вивід інформації.
Група B:
Розряд – (2): вибір 1 режиму роботи каналу PВ.
Розряд – (1): канал PВ запрограмований на вивід інформації.
Розряд – (0): розряди C0-C3 програмуємо на вивід інформації.
Використовуючи асемблер МП КР580ВМ80А код програми, що ініціалізує ППІ має наступний вигляд:
mvi a,10100100b
out 53h
де 53h – адреса керуючого слова.
Для того, щоб зчитати інформацію з АЦП і записати в ППІ(1), його потрібно запустити, а саме на вхід “гашення/перетворення” подати логічну одиницю, яку потім скинути в 0. Таким чином відбудеться запуск АЦП на якому виробиться сигнал , що сповістить ППІ(1) про готовність на прийом даних. Даний алгоритм реалізовується наступним чином:
mvi a,00000001b ; на вхід “гашення/перетворення”-C0
out 42h ; подається лог. “1”
xra a ; онулення акамулятора
out 42h ; на вхід “гашення/перетворення”-C0
; подається лог. “0”
Введення даних, а саме x(n) будемо проводити наступним чином:
in 40h ; введення 8 молодших бітів
mov l,a ; в буфер каналу PA.
in 41h ; введення в буфер каналу PB
ani 00000011b ; старших 2 бітів числа з АЦП
mov h,a ; та онулення 6 бітів, що не використовуються
Результат: прочитане число x(n) з АЦП міститься в регістровій парі HL.
Для виводу даних в ЦАП в курсовій роботі використовується наступний код:
mov a,h ; a <- h
out 51h ; виведення 2 старших розрядів числа в ЦАП
mov a,l ; a <- l.
out 50h ; виведення 8 молодших розрядів числа в ЦАП
Спочатку заносяться старші розряди, а потім молодші. Десять розрядів розбиваються так: D10, D9 – на порт B, а решта D8-D1 заносяться в порт А.
Підпрограма обробки переривання:
Мнемоміка
Кількість байт
Кількість тактів
IntF:
DI ; заборона переривання
1b
4t
push psw ; запис psw в стек
1b
11t
lhld F800h ; загрузка x(n-1) в HL
3b
16t
shld F804h ;запис x(n-1) за адресою F804h
3b
16t
in 40h
2b
10t
mov l,a
1b
5t
in 41h
2b
10t
ani 00000011b
2b
7t
mov h,a
1b
5t
shld F800h ;запис x(n) за адресою F800h
3b
16t
mvi a,1 ; a <- 1
2b
7t
mvi l,11
2b
7t
pop psw ; виштовхування psw із стека
1b
11t
EI ; дозвіл переривання
1b
4t
ret ; повернення з підпрограми
1b
10t
Дана підпрограма займає 26 байт і виконується за 139 тактів.
5.2Опис програми обробки інформації
Підпрограма DAC обробки інформації виконує обчислення рівняння цифрового фільтра виду: . Для обрахунку y(n) DAC в свою чергу використовує підпрограму множення числа на 4
Мнемоміка
Кількість байт
Кількість тактів
DAC:
@001:
mov a,l ; перевірка виклику
1b
7t
cpi 1h ; процедури
2b
4t
jz @001 ; було переривання.
3b
10t
xra a ; онулення а
2b
7t
lhld 8000h ; загрузка x(n) в HL
3b
16t
call MUL4 ; виклик процедури множення на 4
; рез. в l
3b
17t
mvi d,0
2b
7t
mov e,l ;de <-x*a
1b
5t
lhld 8004h ; загрузка x(n-1) в HL
3b
16t
dad d ;hl<- y(n)
1b
10t
mov a,h ; a <- h.
1b
5t
out 51h ; виведення 2 старших розрядів
; числа в ЦАП.
2b
10t
mov a,l ; a <- l
1b
5t
out 50h ; виведення 8 молодших розрядів
; числа в ЦАП.
2b
10t
mvi a,00000001b ; на вхід
; гашення/перетворення”-C0
2b
7t
out 52h
2b
10t
jmp dac ; повернення на початок
; підпрограми dac
3b
16t
Дана підпрограма займає 34 байти і виконується за 162 тактів.
Підпрограма Mul4 ділення числа на 4:
Мнемоніка
Кількість байт
Кількість тактів
Mul4:
mov a,l ; a <- l
1b
5t
rrl ;ділення на 2
1b
4t
rrl ;ділення на 2
1b
4t
mov l,a
1b
5t
mov a,h
1b
5t
rlc ;оскільки дані є лише
1b
1t
rlc ;в двох молоших бітах
1b
1t
rlc
1b
1t
rlc ; то зсуваємо
1b
1t
rlc
1b
1t
rlc ;на 6 вліво
1b
1t
ora l ;і додаємо
1b
4t
mvi h,0
1b
7t
mov l,a ;результат в l
1b
5t
ret ; повернення з підпрограми
1b
10t
Підпрограма Mul4 виконується за 55 такти і займає 15 байт.
5.3 Оцінка верхньої фінітної частоти вхідного аналогового сигналу
За попередніми даними знаходимо кількість циклів, за які виконуються програми вводу, виводу, обробки і основної.
Табл. 7 Загальна кількість тактів
Частина програми
Кількість тактів
Число виконань за основний цикл
Кількість тактів
main
193
1
193
IntF
139
1
139
DAC
162
1
162
Mul4
55
1
55
Загальна кількість тактів 549
Кількості тактів виконання підпрограм та основної програми.
Отже, загальний цикл роботи програми складає 549 такти. Час виконання цієї програми складає:
Тобр=549/2500000=0,0002196 с (врахувавши частоту роботи МПП КР580ВМ80 2,5 МГц).
За теоремою про вибірки фінітна частота вхідного аналогового сигналу дорівнюватиме:
Fmax=1/2 Тобр=4553 Гц=4,553 кГц
Опис функціонального вузла
Буферний регістр серії К589АП26 призначений для фіксації інформації і може використовуватись в системах, побудованих на мікропроцесорах різних серій в тому числі і на КР580ИК80А. В системах на основі мікропроцесора КР580ИК80А даний буферний регістр може використовуватися для збереження слова стану процесора.
Даний буферний регістр має наступні характеристики.
К589АП26 – шинний інвертуючий формувач.
Табл. 8 Характеристики буферного регістра К589АП26
Технологія
ТТЛШ
Напруга джерела живлення
5В ± 5%
Діапазон робочих температур
-10…+70°С
Рис. 4 Буферний регістр К589АП26
Призначення виводів буферного регістра К589АП26
1 – вхід вибірки мікросхеми, CS
2 – вихід інформації, DO0
3 – вхід-вихід інформації, DI0
4 – вхід інформації, DB0
5 – вихід інформації, DO1
6 – вхід-вихід інформації, DI1
7 – вхід інформації, DB1
8 – загальний, GND
9 – вхід інформації, DB2
10 – вхід-вихід інформації, DI2
11 – вихід інформації, DO2
12 – вхід інформації, DB3
13 – вхід-вихід інформації, DI3
14 – вихід інформації, DO3
15 – вхід вибірки шини ( напрям передачі ) інформації, BS
16 – живлення, UCC
Табл. 9
Логічний стан по входах логіки управління
Напрям передачі інформації
CS
BS
0
0
Передача від входів DB на виходи DI
0
1
Передача від входів DI на виходи DO
1
1
Відсутність передачі
1
0
Електричні параметри К589АП26 приведені в таблиці 10:
Табл. 10
Параметри
К589АП26
Режим вимірювання
Iпот, мА, не більше
130
1 – 3
U0вих, В, не більше
0,7 ( виходи 3, 6, 10, 13 )
0,5 (виходи 2, 5, 11, 14 )
1, 4, 5
6, 7
U1вих, В, не менше
2,4 ( виходи 3, 6, 10, 13 )
36,5 (виходи 2, 5, 11, 14 )
1, 4, 6
8, 9
I0вх, мА, не менше
-0,5 (виходи 1, 15 )
-0,25 ( виходи 3, 6, 10, 12, 13 )
1, 3, 6
11, 12
I1вх, мкА, не більше
40 ( виходи 4, 7, 9, 12 )
80 ( виходи 1, 15 )
1, 3
6, 13
Iвикл, мкА, не більше
100 ( виходи 3, 6, 10, 13 )
20 (виходи 2, 5, 11, 14 )
1, 3
10, 15
Iвикл, мкА, не менше
-100 ( виходи 3, 6, 10, 13 )
-20 (виходи 2, 5, 11, 14 )
1, 3, 10
16, 17
t1,0зд р, t0,1зд р , нс, не більше
30 1)
25 2)
18, 19
1) для режиму прямої передачі.
2) для режиму зворотної передачі.
Примітки:
1. T=+25°С. 2. U1, 3, 4, 6, 7, 9, 10, 12, 13, 15=4,5B. 3. UІ П=5,25B. 4. UІП= =4,75B. 5. I0вих= =50мА. 6. T=-10…+75°С. 7. I0вих=15мА. 8. I1вих=-10мА. 9. I1вих=-1мА. 10. T=-10…+
+70°С. 11. Uвх=4,5B. 12. Uвх=0,45B. 13. Uвх=5,25B. 14. U3, 6, 10, 13=5,25B. 15. U2, 5, 11, 14= =5,25B. 16. U3, 6, 10, 13=0,45B. 17. U2, 5, 11, 14=0,45B. 18. T= =125°С. 19. UІ П=5B.
Гранично допустимі електричні режими експлуатації К589
Гранична напруга джерела живлення ( короткочасне протягом 5 мс ), не більш…..7В
Гранична напруга джерела живлення, не більш………………………………………6В
Гранична напруга на виході ( закритої ІС ), не більш…………………………….5,25В
Гранична вхідна напруга, не більш…………………………………………………..5,5В
Граничний струм на вході, не менше………………………………………………-5 мА
Ця мікросхема має три чотирьох розрядних групи входів-виходів: DB0÷DB3; DI0÷DI3; DO0÷DO3 та два керуючих сигнали: CS – виклик мікросхем; BS – завдання виклику напрямку передачі.
Кожна лінія ШФ має дві логічні схеми “і” з трьома вихідними станами. З однієї сторони ШФ входи і виходи схеми “і” об’єднання ( DO0÷DO3 ). Ці лінії використовуються, як під’єднання до шин МПС, з другої сторони – входи DB0÷DB3 та виходи DI0÷DI3 розділені з метою отримання максимальної гнучкості для використання даних схеми. Вхід CS керує глибокими виводами кристала, BS визначає напрямок сигналу мікросхем.
В даній курсовій роботі буферний регістр використовується для формування номера переривання RST4. Даний сигнал виникає коли дані з АЦП готові до обробки. БР використовує сигнал INTA як сигнал вибору мікросхеми, в той же час в вхідний регістр попередньо заноситься номер переривання.
Аналіз результатів та висновоки
В процесі виконання курсового проекту були розроблені компоненти технічного і програмного забезпечення мікропроцесорного пристрою, який включає аналогово-цифровий і цифро-аналоговий перетворювачі і виконує функцію лінійної системи автоматизованого регулювання. Система описується наступним пропорційно-інтегро-диференціальним рівнянням:
яке зв’язує аналогові сигнали х(t) на вході і y(t) на виході системи. МПП побудований на МП КР580ВМ80.
При заданих умовах: розрядність АЦП – 10, сигнал – однополярний (невід’ємний), організація обміну з АЦП – через переривання контролера КР580ВН59 за адресою 0070h, вид функціонального вузла – шинні формувачі з використанням К589АП26, було здійснено:
Часткову дискретизацію для заданого рівняння системи регулювання і отримато відповідне рівняння цифрового фільтра (ЦФ). Побудувано аналогову схему, яка описується заданим рівнянням.
Складено і описано структурну схему МПП.
Вибрано структуру представлення даних при заданій розрядності АЦП, який здійснює дискретизацію і квантування вхідного сигналу.
Вибрано типи АЦП і ЦАП. Складено принципові схеми підключення АЦП і ЦАП до МПП. Приведено часову діаграму роботи АЦП.
Складено на мові асемблеру мікропроцесора КР580ВМ80 програму вводу інформації через АЦП і виводу через ЦАП.
Складено програму відповідної цифрової обробки інформації. Оцінено верхню граничну частоту ЦФ.
Складено фрагмент принципової схеми реалізації функціонального вузла, вказаного в індивідуальному завданні.
Список використаної літератури
1. Федорков Б.Г.,Телец В.А. Микросхемы ЦАП и АЦП: функционирование, параметры, применение –М.: Енергоатомиздат, 1990.
2. Проектирование микропроцессорной електронно-вычислительной аппаратуры: Справочник /В.Г.Артюхов, А.А.Будняк, В.Ю.Лапий и др. –К.: Техника, 1988.
3. Интегральные микросхемы: Справочник/ Тарабин Б.В., Лунин Л.Ф. и др. –М.: Радио и связь , 1985
4. Методичка до курсової роботи.
5. Конспект лекцій з курсу “ МПС”.