Функціональний генератор інфранизької частоти на базі МП системи

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Інститут телекомунікацій, радіоелектроніки та електронної техніки
Факультет:
РТ
Кафедра:
Кафедра радіоелектронних пристроїв та систем (РЕПС)

Інформація про роботу

Рік:
2013
Тип роботи:
Курсова робота
Предмет:
Цифрові пристрої та мікропроцесори в радіотехнічних системах
Група:
РТ 3

Частина тексту файла (без зображень, графіків і формул):

Міністерство освіти і науки України Національний університет „Львівська політехніка” КУРСОВА РОБОТА з дисципліни  Цифрові пристрої та мікропроцесори на тему:  Функціональний генератор інфранизької частоти на базі МП системи Львів 2013 Вступ Мікропроцесорна система представляє собою систему обробки інформації й керування, реалізовану на основі сучасної елементної бази і принципу програмного керування. Для побудови мікропроцесорної системи потрібен обмежений набір апаратних ресурсів, а реалізація функцій системи покладається на програмне забезпечення. Таким чином, мікропроцесорні системи - це цифрові системи обробки інформації й керування, функціональні можливості яких визначаються програмним забезпеченням, а взаємозв'язок із зовнішнім середовищем забезпечується зовнішніми пристроями. Мікропроцесорна система складається з наступних пристроїв: процесора (П), що виконує основні функції керування й обробки інформації; запам'ятовуючого пристрою (ЗП), призначеного для зберігання даних і програм, і пристроїв вводу/виводу (ПВВ), що забезпечують взаємозв'язок із зовнішнім середовищем. Пристрої мікропроцесорної системи об'єднані між собою внутрішньо системним інтерфейсом і взаємодіють по адресному принципу - всі підпорядковані пристрої і їхні складові частини мають неповторювані адреси, по яких до них звертаються пристрої, що виконують функції керування. Процесор мікро-ЕОМ обробляє інформацію трьох типів – дані, адреси й команди програми. Над даними виконуються арифметичні й логічні операції, реалізовані процесором. Обробка адрес визначається способом зберігання й доступу до даних і команд і також базується на виконанні арифметичних операцій. Обробка команд полягає в перетворенні коду команди в послідовність керуючих впливів (мікрооперацій) відповідно до алгоритму виконання команди. Кожна мікрооперація (або їхня сукупність - мікрокоманда) виконується у фіксовані інтервали часу (такти), а вся сукупність виконання команди протягом повного циклу (командного циклу) утворить мікропрограму. Під управлінням мікропрограми виконується обробка даних й адрес і керування іншими пристроями мікропроцесорної системи через внутрішньо системний інтерфейс. Для виконання перерахованих функцій процесор містить засоби обробки даних, обробки адрес, зберігання даних й адрес – зверх оперативний запам'ятовуючий пристрій, засоби мікропрограмного керування, засоби синхронізації й керування режимами роботи процесора. Для обробки даних використовується універсальний арифметично-логічний пристрій (АЛП), запам'ятовуючі регістри для зберігання вихідних даних, результатів (акумулятори) і ознак результату (прапорці). Розрядність пристрою обробки даних характеризує розрядність процесора. Обробка адрес і даних у процесорі частково або повністю може виконуватися загальним арифметичним пристроєм. Часто для обробки адрес використовують окремі спеціалізовані засоби, що дозволяють сполучити в часі обробку адрес і даних у послідовності команд і тим самим підвищити продуктивність процесора. До спеціалізованих засобів відносять програмний лічильник, здійснюючий безпосередню адресацію команд програми, адресні регістри даних, суматори адрес. Розрядність пристроїв обробки даних характеризує розрядність процесора. РОЗДІЛ 1. Постановка задачі Технічне завдання. Реалізувати генератор інфранизької частоти, розробити апаратну частину та написати програму на мові асемблера для МП системи, на основі комплекту КР580, яка реалізує такі функції: Формує за допомогою ЦАП вихідну напругу, що описується виразом:  де Т=0.5 с – період зміни напруги, А=5 В – амплітуда напруги, а =1. 2) Опитує дво-клавішну клавіатуру, перша з яких вибирає період повторення функції з ряду T, 2T, 4T відповідно, а інша задає амплітуду вихідної напруги з ряду A, A/2, A/4; 3) Виводить на один семи-сегментний індикатор інформацію про період повторення: цифри 1, 2, 4- відповідають T, 2T, 4T, а на інший індикатор інформацію про амплітуду A, A/2 чи A/4. Ескізний малюнок пристрою наведений на рис.1  Рис.1. Ескізний малюнок зовнішнього вигляду генератора На семи-сегментному індикаторі відображається, інформація про амплітуду і період сигналу. Так, якщо кнопка Т натиснута 1 раз то період збільшиться в 2 рази (2Т), і на індикаторі висвітлиться цифра «2» .Якщо кнопку Т натиснути ще раз,то період стане рівним 4Т і на індикаторі побачимо цифру «4». При натисненні цієї кнопки 3-й раз період стане рівним Т, а на індикаторі засвітиться «1». Кнопка А працює аналогічно і призначена для зміни амплітуди. Часову залежність заданого сигналу наведено на рис.2.  Рис.2. Часова залежність заданого сигналу Формування відліків вихідної напруги та відповідних кодів ЦАП Варіант 1 А = 5 В, Т = 0,5 с а = 1 Таблиця 1 Відліки n ∆t·n U(∆t·n), B Код ЦАП Код ЦАП у 16-ій системі  0 0 0 128 080  1 0,01 0,626 144 090  2 0,02 1,243 159 09F  3 0,03 1,84 175 0AF  4 0,04 2,408 189 0BD  5 0,05 2,938 203 0CB  6 0,06 3,421 215 0D7  7 0,07 3,851 226 0E2  8 0,08 4,22 236 0EC  9 0,09 4,523 243 0F3  10 0,1 4,754 249 0F9  11 0,11 4,911 253 0FD  12 0,12 4,99 255 0FF  13 0,13 4,99 255 0FF  14 0,14 4,912 253 0FD  15 0,15 4,758 249 0F9  16 0,16 4,526 243 0F3  17 0,17 4,224 236 0EC  18 0,18 3,856 226 0E2  19 0,19 3,427 215 0D7  20 0,2 2,944 203 0CB  21 0,21 2,415 189 0BD  22 0,22 1,847 175 0AF  23 0,23 1,251 160 0A0  24 0,24 0,634 144 090  25 0,25 0,008 128 080  26 0,26 -0,619 112 070  27 0,27 -1,235 96 060  28 0,28 -1,832 81 051  29 0,29 -2,4 66 042  30 0,3 -2,931 52 034  31 0,31 -3,416 40 028  32 0,32 -3,846 29 01D  33 0,33 -4,216 20 014  34 0,34 -4,52 12 00C  35 0,35 -4,752 6 006  36 0,36 -4,909 2 002  37 0,37 -4,989 0 000  38 0,38 -4,991 0 000  39 0,39 -4,914 2 002  40 0,4 -4,759 6 006  41 0,41 -4,529 12 00C  42 0,42 -4,229 19 013  43 0,43 -3,861 29 01D  44 0,44 -3,433 40 028  45 0,45 -2,951 52 034  46 0,46 -2,426 66 042  47 0,47 -1,855 80 050  48 0,48 -1,258 95 05F  49 0,49 -0,642 111 06F    Рис.2. Залежність коду ЦАП від номера відліку  Рис.3. Залежність напруги від номера відліку·∆t Таким чином ми бачимо , що програмна реалізація функції часу буде полягати у послідовному записі з періодом Δt, значень Сn в порт виводу, до якого підключений ЦАП. РОЗДІЛ 2. Апаратне забезпечення Опис основних компонентів МПС КР580. Розглядати даний мікропроцесорний комплект КР580 почнемо з мікропроцесора (МП) КР580ВМ80А (ИК80А), який зображений на рис.4.  Рис.4. Мікропроцесор КР580ВМ80А Функціональне призначення виводів: А0 - А15 – адресна шина, забезпечує адресацію до довільної 16-розрядної комірки пам'яті або зовнішнього пристрою; D0 - D7 – двонапрямлена шина даних (ШД), для обміну інформацією із зовнішніми пристроями; F1, F2 – входи тактових сигналів; INT – запит на переривання; HOLD – запит на ПДП; SYNC – сигнал синхронізації на початку кожного машинного циклу; DBIN – готовність МП до приймання даних; WR – сигнал на виході МП, що дані видані й встановлені на ШД для їх запису у зовнішні пристрої; READY – підтвердження про готовність даних на ШД та їх введення у МП; RESET – на цьому виводі формується сигнал на початкову установку МП, при цьому обнулюється його програмований лічильник, а також тригери, які формують сигнали; WAIT – сигнал на підтвердження про те, що МП знаходиться в стані очікування; INTE – дозвіл на переривання; HLDA – підтвердження ПДП. В даному мікропроцесорному комплекті системним генератором є мікросхема КР580ГФ24 (рис.5) виконана по біполярній технології, споживаний струм 15 і 12 мА від джерел +5, +12 В відповідно. Сигнали синхронізації формуються задаючим генератором, стабілізованим кварцом з резонансною частотою до 27 МГц, дільником частоти з коефіцієнтом 9.  Рис.5. Мікросхема КР580ГФ24 Для роботи генератора тактових імпульсів (ГТІ) передбачено увімкнення зовнішнього кварцового резонатора, а також LC- коливальної системи, яка задає часову постійну. Функціональне призначення виводів: F1 – сигнал високого рівня тривалістю у два періоди коливань опорного генератора (для керування МОН входами); F2 – сигнал високого рівня тривалістю у п'ять періодів коливань опорного генератора (для керування МОН входами); XTAL1, XTAL2 – входи для вмикання КР; RDYIN – вхідний сигнал від МП який ініціює формування сигналу готовності системи; RESIN – вхідний сигнал, який ініціює формування сигналу "скид системи"; READY – вихідний сигнал; який формується мікросхемою для керування МПС; SYNC – вхід тактової послідовності; RESET – на цьому виводі ГП формується сигнал "скиду" МП у початковий стан; STSTB – вихідний імпульс строба стану низького рівня тривалістю один період коливань опорного генератора; TANK – вивід для підключення LC- коливальної системи. Мікросхема КР580ВА86/87 (рис.6) являє собою двонаправлений шинний формувач з трьохстановими виходами, виконаних по біполярній технології, живляться від джерела +5 В і споживають струми 169 та 130 мА відповідно.  Рис.6. Мікросхема КР580ВА86А Канал А забезпечує струм навантаження 15 мА, Канал ВA забезпечує струм навантаження 32 мА. Напрям передачі вибирається сигналом на вході Т. Мікросхема КР580ВА86 виконує передачу без інверсії, мікросхема КР580ВА87 – з інверсією. Для буферизації шини даних та для формування сигналів керування використовують системний контролер КР580ВК28. Графічне позначення ВІС типу КР580ВК28 (рис. 7) системного контролера.  Рис.7. Системний контролер КР580ВК28 Призначення виводів системного контролера: D0-D7 – виводи, які увімкнено до відповідних вихідних ліній МП; BD0-BD7 – виводи, які увімкнено до шини даних; DBIN – сигнал про готовність МП до приймання даних; STSTB - сигнал строю стану системного контролера; HLDA – сигнал підтвердження захвату шин; WR – інформаційна шина КР580ИК80; MEMR – читання даних із пам'яті; MEMW – запис даних у пам'ять; IOR - читання з лінії ввід/ вивід; IOW- запис у лінію ввід/вивід. Структура мікропроцесора на мікропроцесорному комплекті КР580 приведена на рисунку 8.  Рис. 8. Структура мікропроцесора на мікропроцесорному комплекті КР580 Запам’ятовуючі пристрої МП системи Є декілька видів запам’ятовуючих пристроїв: оперативний запам’ятовуючий пристрій (ОЗП) , постійний запам’ятовуючий пристрій (ПЗП), КЕШ – пам’ять, також стек може виступати як окремий пристрій. Вибираємо ПЗП для запам’ятовування коду програми, ОЗП – для використання мікропроцесором, як область для зберігання проміжних даних. ПЗП – працює лише у режимі читання. Він використовується для збереження програм і даних, які потребують для роботи системи і не підлягають зміні. ОЗП – працює у двох режимах і зберігає поточну інформацію, яка введена у МПС. Цей пристрій працює у двох режимах, які залежать від виконання програм і уведених даних. За допомогою цього пристрою змінюються необхідні параметри даних, записуються поточні результати, для їх виводу або подальшої обробки і таке інше. Вибираємо об’єм пам’яті: ПЗП – 2 Кб ; ОЗП – 2 Кб. В якості ЗП пристроїв беремо мікросхеми типу К573РФ2 для ПЗП (час вибірки становить 450 нс; потужність 580 мВт при напрузі +5В) і К537РУ10 (час доступу 220 нс; споживана потужність 6 мВт при напрузі живлення 5В) (рис. 8) для ОЗП. А0-А10 – вхідні адреси комірок пам'яті, з'єднані із шиною адреси МПС; D0-D7 – вихідні виводи, на які виставляються дані, що зберігались у запам'ятовуючому пристрої, з'єднуються з шиною даних МПС: CS – вхідний вивід, за яким визначається звертання до ПЗП чи ОЗП: ОЕ – вхідний вивід, який визначає режим роботи запам'ятовуючого пристрою (читання або запис).  Рис. 9 Мікросхеми К573РФ2 – ПЗП і К537РУ10 – ОЗП. Таблиця 2 Сімейство Технологія Тип ВІС Організація  К537 КМОП К537РУ10 2К(8  К573 nМОП К573РФ2 2К(8  Розподіл пам'яті проводимо з урахуванням того, що основна програма, записана у ПЗП, а тому перше звертання МП здійснюється до нульової комірки ПЗП. Оскільки, кожен пристрій пам’яті згідно нашого вибору має 2 Кб, це означає, що кожен пристрій буде займати 2048 адрес. Ці пристрої підключаються до шини адрес паралельно. Даний адресний простір можна забезпечити за допомогою одинадцяти ліній ( А0 – А10 ). Першу частину адрес ми відвели для ПЗП а не для ОЗП, оскільки в перший момент роботи мікропроцесора відбувається ініціалізація процесора, в ході якої усі регістри обнулюються, в тому числі й програмний лічильник, у зв’язку з чим мікропроцесор звертається до першої команди за адресою 0000H. Таблиця 3 Адреси Пам’ять Тип  0000-07FFH 0800-0FFFH 1000-FFFFH ПЗП ОЗП – К573РФ2 К537РУ10 вільна область  Дешифрація схем пам’яті. Як бачимо, ні режим роботи, ні вибір комірки не визначають вид ЗП. Тому у цих пристроях передбачений вивід, який визначає активний стан ОЗП або ПЗП. Для визначення виду ЗП потрібно вибрати лінію старших розрядів, наприклад, А11. Якщо стан лінії А11 відповідає логічний "0", то звертання відбувається до ПЗП, і для стану лінії А11 — логічній "1", звертання відбувається до ОЗП. Оскільки для вибору ЗП використовується одна лінія, то між ОЗП і ПЗП ставимо інвертор (рис. 10). У випадку, коли б у нас було більше двох пристроїв, ми використали б дешифратор потрібної розрядності або схему дешифрації на логічних елементах.  Рис. 10. Підключення мікросхеми КР573РФ2 – ПЗП і КР537РУ10 – ОЗП. Проектування системи вводу-виводу МПС За допомогою пристрою вводу/виводу у МПС засилається інформація, а також виводиться на контрольні пристрої. Для проектованої МПС, згідно технічного завдання, зовнішніми пристроями є: сегментні індикатори; клавіші; ЦАП. Узгодженість зовнішніх пристроїв із внутрішніми визначається, як навантажувальною здатністю пристрою ввід/вивід, так і числом вихідних ліній МПС із числом вхідних ліній зовнішніх пристроїв. Для запалювання сегмента індикатора на нього треба подати рівень логічного нуля, що відповідає індикаторам типів АЛС32Б , АЛС342Б. На індикаторах буде виводитись одна з трьох цифр: 1, 2, 4. На основі цього нижче в таблиці наведений стан рівнів на виходах a-g в залежності від цифри.  рис.11. 7-сегментний індикатор типу АЛС32Б (АЛС342Б) Таблиця 4 Цифра a b c d e f g Число  1 1 0 0 1 1 1 1 4FH  2 0 0 1 0 0 1 0 12H  4 1 0 0 1 1 0 0 4CH  З даної таблиці видно, що сегмент “b” запалений завжди, тому його можна закоротити на землю. Сегменти “а” , “d” і “e” завжди мають один рівень, тому їх можна об‘єднати і керувати ними одним сигналом. Тому для управління одним індикатором потрібно 4 лінії. Для управління двома індикаторами в динамічному режимі – 6. Для управління ЦАПом потрібно 8 ліній . Тому загальна кількість ліній виводу при динамічній індикації буде 14 ліній. 3.1 Реалізація паралельного інтерфейсу Складовими частинами інтерфейсу можуть бути багато режимні буферні регістри (ББР) або програмований периферійний адаптер (ППА) типу КР580ВВ55 (рис. 12). Призначення виводів ППА типу КР580ВВ55 : D0-D7 – вхідні виводи ППА, які увімкнені до ШД МП системи (D0 - молодший розряд); PА0-PА7 – вихідна шина даних каналу А; PB0-PB7 – вихідна шина даних каналу В; PС0-PС3 – вихідна шина даних каналу С (молодші розряди): PС4-PС7 – вихідна шина даних каналу С (старші розряди); CS – вибір пристрою; А0, А1 – молодші розряди ША, за якими проводиться вибір каналу; RD – сигнал, за яким проводиться встановлення даних внутрішнього регістра ВІС, на ШД; WR – вхідний сигнал, який дає дозвіл на запис даних у ППА; R – сигнал, по якому ВІС переходить у початковій стан.  Рис.12. Програмований периферійний адаптер (ППА) типу КР580ВВ55. Коли на вході CS є сигнал низького рівня, в залежності від того, який з сигналів IORD чи IOWR є активним, відбудеться запис в ППА чи зчитування з нього. Комбінація сигналів на входах A0 та A1 визначає канал, з яким відбудеться обмін інформацією. Перед початком роботи, ППА треба запрограмувати, тобто задати режими роботи кожного каналу. Програмування відбувається шляхом одноразового запису в регістр керуючого слова відповідного байта. Вибраний тип ППА має три основних режими роботи: режим "0" - звичайний ввід/ вивід; режим '1" - стробований ввід/ вивід; режим "2" - двонапрямлена магістраль. Для цілей поставлених технічному завданні найбільш зручною є робота ППА в режимі 0, в режимі вводу сигналів, які поволі міняються. При виводі в цьому режимі на лініях каналів можна програмно формувати різні сигнали, тобто керувати роботою індикаторів. В даній роботі канали A, B та молодший підканал програмуються на вивід в режимі 0, старший підканал С- на ввід. Оскільки максимальна навантажувальна здатність виходів КР580ВВ55 становить 2мА, а струм сегментів знаходиться в межах 10-15 мА, між виходами ППА і виходами індикаторів необхідно включати буферні елементи з відкритими колектором – інвертори 155ЛН2, 155ЛН3 або повторювачі 155ЛП9. Опори між виходами інверторів і входами індикаторів обмежують середній струм через сегмент на рівні 10 мА. Лінії каналу C, які працюють на клавіатуру, під‘єднані через опори 10кОм до шини +5В. Таким чином при розімкнених клавішах відповідні розряди каналу C мають стан лог. "1". При натисненій клавіші лінія переходить в стан лог. "0". Невизначеність станів лінії, яка виникає в моменти натискання та відпускання клавіш ліквідується програмним шляхом. Через канал A на ЦАП подається код, який відповідає вихідній напрузі. ЦАП вибраний з розрядністю 8. Для роботи ЦАП до його виходів необхідно підключити операційний підсилювач з коректуючими елементами. Коли на вході CS є сигнал низького рівня , в залежності від того , який з сигналів IORD чи IOWR є активним , відбувається запис в ППА чи зчитування з нього . Комбінація сигналів на входах А0 та А1 визначає канал , з яким відбувається обмін інформацією ( табл.3.4 ). CS = 0 Таблиця 5 IORD IOWR А1 А0 Робота з каналом  0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 зчитування канала А зчитування канала В зчитування канала С зчитування канала РКС запис в канал А запис в канал В запис в канал С запис в канал РКС   4.2. Двоклавішна клавіатура. Основними елементами будь-якої клавіатури являються перемикачі. Вони використовуються для комутації електронних кіл постійного та змінного струму. Для побудови двоклавішної клавіатури використаємо два мікроперемикачі типу МП12. Основні характеристики цього перемикача: - струм комутації – 10-6…0,5 А; - напруга комутації – 0,5…36 В; - число комутацій – 104. Слід зауважити, що перед встановленням мікроперемикачів у клавіатуру після тривалого зберігання необхідно виконати їх тренування (15 перемикань). Лінії каналу C (PC4, PC5) ППА, що працюють на клавіатуру, під’єднані через опори 10 кОм до шини +5 В. Таким чином при розімкнених клавішах відповідні розряди каналу С мають стан лог.1. Невизначеність станів лінії, яка виникає в момент натискання та відпускання клавіш, ліквідується програмним шляхом. Вважаємо, що клавіша, котра підключена до лінії PC4, відповідає за зміну амплітуди сигналу, а та, котра підключена до лінії PC5 – за його тривалість. 4.3. Система індикації В даній системі використано динамічну індикацію. Індикатори, які відображають значення амплітуди та періоду, працюють у динамічному режимі. 4.4. Цифро-аналоговий перетворювач Основне призначення цифро-аналогових перетворювачів – автоматичне перетворення (декодування) двійкових кодів на еквівалентні їм значення будь-якої фізичної величини (напруги або струму). Кількісний зв'язок між вхідним числом, переважно двійковим, кодом N2 і його аналоговим еквівалентом, наприклад напругою UВИХ, для довільного моменту часу t1 визначається співвідношенням  (5.4.1)  де (U – крок квантування за рівнем напруги, тобто “вага” одного дискрету напруги, якій відповідає один двійковий розряд; (Ui – похибка перетворення. Основними параметрами ЦАП є динамічний діапазон зміни вхідних та вихідних значень, швидкодія і похибка перетворення. Динамічні діапазони за входом (Umax/Umin) і виходом (N2max/N2min) при лінійному цифро-аналоговому перетворенні мають одне і те саме значення, яке виражають або числом розрядів цифрового коду, або в децибелах; при Umin=0, Nmin=0 динамічний діапазон D=Umax/(U=Nmax/(N, де (U, (N – допустимі абсолютні похибки відхилення значень статичної характеристики UВИХ=f(N2) від лінійного закону. Швидкодію цифро-аналогового перетворення визначають такі часові параметри: – час перетворення – інтервал часу, протягом якого відбувся акт однозначного перетворення із цифрового коду в аналоговий сигнал; – частота квантування – величина, що обернена періоду квантування, тобто інтервалу часу між сусідніми послідовними перетвореннями. Схеми ЦАП виготовляють в інтегральному виконанні з метою їх використання у мікропроцесорній техніці. Для реалізації цифро-аналогового перетворення переважно використовують два типи матриці резисторів: – складеної із двійково-зважених резисторів; – постійного імпедансу типу R-2R. Вибраний ЦАП типу К572ПА2А. Даний ЦАП має наступні параметри: – розрядність – 12 біт; – час перетворення – 15 мкс; – інтерфейс – паралельний; – напруга живлення – +5 В; – диференційна нелінійність – ±0,025%; – похибка перетворення – ±0,1%; – споживаний струм – 1,5 мА. Повна принципова схема пристрою зображена нижче.  РОЗДІЛ 3. Програмне забезпечення Асемблер використовується для написання системних та прикладних програм, що працюють в реальному масштабі часу. Формат стрічки програми на мові Асемблер має вигляд: мітка: команда операнди; коментар. Стрічка програми складається з шести полів. Перших два поля генеруються транслятором. Колонка коментарів завжди починається символом ";" і є необов'язковою. Мітка є унікальна послідовність символів, довжиною не більше шести, яка починається з букви або знаків "@","!". Мітка ― це ідентифікатор першого байту команди, біля якої вона з'являється. Наявність мітки в команді необов'язкова, але якщо вона є, тоді мітка стає символічним ім'ям, яке застосовується в командах переходів для передачі управління відміченій команді. Мітками не можуть бути назви команд або регістрів та псевдокоманди ORG,EQU,DB,DW,DS,END. Мітка обмежується справа символом ":" В полі команд поміщають мнемонічну назву однієї з команд процесора або одну з наведених вище псевдокоманд. Команди бувають без oперандів або з одним чи двома операндами. Перший операнд є результат, а другий ― джерело. Операндами є назви регістрів, регістрових пар, мітки, а також ідентифікатори, числа та вирази. Числа можуть бути представлені в двійковому, вісімковому, десятковому та шістнадцятковому вигляді. Відповідно до системи числення в кінці числа має бути одна з букв: В, С, D, Н. Число без букви в кінці інтерпретується як десяткове або як шістнадцяткове, якщо в складі числа є одна з букв А-F. Шістнадцяткове число, що, починається з букви необхідно доповнити зліва нулем. Ідентифікатори мають відповідати тим самим умовам, що й мітки. Ідентифікатори ― це назви констант та змінних. Для надання константам та змінним початкових значень використовується псевдокоманда EQU. Текст програми на мові Асемблер повинен починатись псевдокомандою ORG з oперандом, яка задає початкову адресу області трансляції. Останньою стрічкою програми є псевдокоманда END. 1.Алгоритм. Загальний алгоритм до програми зображений на рис.14. Програма складається з 5 основних блоків: блку ініціалізації, блоку індикації, блоку виводу вибірок на ЦАП, блоку опитування кнопок та затримки. Деякі з них розписані детальніше. (рис 13-15).  рис.12. Загальний алгоритм рис.13. Алгоритм опитування кнопок роботи пристрою  рис.14. Алгоритм виводу цифр на індикатор  рис.15. Алгоритм виводу вибірок на ЦАП 2. Повний текст програми WaitSample: DS 1 ; ІНІЦІАЛІЗАЦІЯ SampleNum: DS 1 ; T: DS 1 ; Am: DS 1 ; ButT: DS 1 ; кнопка Т ButA: DS 1 ; Am Trigger: DS 1 ; перемикач індикаторів N: DS 1 ; кількість відліків ORG 0000h ; JMP START ; ORG 0100h ; START: LXI H,SAMPLES ; занес. в HL значення відліків MVI A,8Ah ; OUT 03h ; програмуємо РКС MVI A,50 ; STA N ; N=50 MVI A,1 ; STA Trigger ; STA ButA ; кнопки спочатку STA ButT ; не натиснуті STA WaitSample ; WS=1 MVI A,0 ; STA Am ; STA T ; STA SampleNum ; SN=0 JMP show ; перехід на ; БЛОК ІНДИКАЦІЇ show: LDA Trigger ; OUT 02h ; включаємо 1 з індикаторів XRI 03h ; змінюємо STA Trigger ; значення Trigger CPI 01h ; при 1 значенні Trigger JNZ S2 ; виводимо амплітуду S1: LDA T ; а при іншому - період CPI 00h ; визначаємо значення Т JZ TTT1 ; TTT0: MVI A,02h ; Т=0, тоді виводиться "1" (T) OUT 01h ; JMP output ; TTT1: CPI 01h ; JZ TTT2 ; MVI A,09h ; т=1, тоді виводиться "2" (2T) OUT 01h ; JMP output ; TTT2: MVI A,0Eh ; Т=2, тоді виводиться "4" (4T) OUT 01h ; JMP output ; S2: LDA Am ; CPI 00h ; визначаємо значення Am JZ AAA1 ; AAA0: MVI A,02h ; Am=0, тоді виводиться "1" (A) OUT 01h ; JMP output ; AAA1: CPI 01h ; JZ AAA2 ; MVI A,09h ; Am=1, тоді виводиться "2" (A/2) OUT 01h ; JMP output ; AAA2: MVI A,0Eh ; Am=2, тоді виводиться "4" (A/4) OUT 01h ; JMP output ; перехід на ; БЛОК ВИВОДУ ВИБІРОК НА ЦАП output: LDA WaitSample ; DCR A ; зменшуємо WS на 1 STA WaitSample ; CPI 00h ; WS=0? JZ keybrd ; ні - перехід в наст блок WS0: LDA T ; CPI 00h ; визначаємо т JZ T1 ; T0: MVI A,2 ; т=0, тоді WS=2 STA WaitSample ; JMP A1 ; T1: LDA T ; CPI 01h ; JZ T2 ; MVI A,4 ; T=1, тоді WS=4 STA WaitSample ; JMP A1 ; T2: MVI A,8 ; T=2, тоді WS=8 STA WaitSample ; A1: LDA Am ; CPI 00h ; визначаємо Am JZ A2 ; MOV A,M ; JMP A4 ; A2: LDA Am ; CPI 01h ; JZ A3 ; MOV A,M ; при Am=1 ділимо RRC ; значення вибірок на 2 JMP A4 ; A3: MOV A,M
Антиботан аватар за замовчуванням

29.05.2014 19:05-

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!