Система вимірювання значення змінної напруги

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

ВУЗ:
Інші
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Не вказано

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

Рік:
2024
Тип роботи:
Інші
Предмет:
Мікропроцесорні системи

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

Міністерство освіти і науки України Новороздільський політехнікум Система вимірювання значення змінної напруги. Пояснювальна записка до курсової роботи з дисципліни “Мікропроцесорні системи” 5.091504 Обслуговування комп’ютерних систем і мереж 2005р.  Зміст……………………………………………………………………………....2 Анотація……………………………………………………………………….....3 Вступ……………………………………………………………………………..4 Аналіз завдання………………………………………………………………….7 Розробка принципової схеми…………………………………………………....8 Розробка виконавчої програми………………………………………………....21 Висновки………………………………………………………………………...25 Список використаної літератури……………………………………….……...26   Викон Шалата В.М.    Лист   Перев Твердохліб Р.В,    2  Зм. Лист № докум Підпис Дата      В даній курсовій роботі розроблено схему системи вимірювання значення змінної напруги за 500мс. часу на базі мікропроцесора К1821ВМ85А. Система повинна записувати в пам’ять значення вхідної напруги через певний момент часу. Після натиснення кнопки старту (S) вміст пам’яті повинен обнулитись. Після заповнення об’єму пам’яті вона повинна стиратись циклічно. Оскільки для того, щоб отримувати інформацію про значення напруги потрібно, щоб весь об’єм пам’яті був заповнений, слід передбачити контрольну лампу (VD1), яка буде сигналізувати про те, що пам’ять заповнена. Після натиснення кнопки вибору система повина видати на індикатори значення напруги.   Викон Шалата В.М.    Лист   Перев Твердохліб Р.В,    3  Зм. Лист № докум Підпис Дата      У наш час важко уявити собі галузь народного господарства, в якій не можна було б використати мікропроцесор, мікроконтролер чи мікроЕОМ. Ці пристрої можуть вбудовуватись у контури керування технологічним процесом, верстати, різноманітні прилади та багато інших пристроїв і систем. З цих пір, як 1973 року американська фірма Intel вперше опублікувала матеріали про 4-розрядні мікрокомп'ютери, відбувся вельми відчутний прогрес як в області розширення їх функціональних можливостей, так і у сфері комерційного вживання в самих різних областях. Сьогодні важко знайти побутовий прилад без управляючого мікропроцесора. Представте тільки, один пристрій може містити близько 20 мікропроцесорів! Причому у розпорядженні кожної японської сім'ї може знаходитися більше сотні таких присроїв. Одним з основних показників досконалості мікрокомп'ютера є число розрядів даних, які він обробляє так, на зміну 4-розрядним процесорам прийшли 8-розрядні, що миттєво привело до розширення області практичного вживання мікрокомп'ютерів. Збільшення розрядності до 16, а потім до 32 сприймалося фахівцями як події виняткового значення. В даний час існують навіть 64-розрядні мікропроцесорні системи. Піонером у галузі розробки мікроконтролерів є корпорація Intel. У 1976 р. вона випустила перший універсальний 8-розрядний мікроконтролер 8048. Нині Intel виробляє кілька сімейств мікроконтролерів: MCS-51/151, MCS-251, MCS-96/196/296, які мають понад 100 моделей. Кількість мікроконтролерів, що випускаються на сьогодні, майже в 10 разів перевищує кількість традиційних мікропроцесорів. Так, за останні п'ять років їх випуск у світі збільшився приблизно в три рази і наблизився до рівня 2 млрд штук на рік. Завдання створення автоматизованих систем керування технологічними процесами з використанням мікроЕОМ постають практично у всіх галузях. Перед розробниками автоматизованих систем виникають, у першу чергу, питання, яким чином реалізувати вже відомі технічні системи на надійнішій   Викон Шалата В.М.    Лист   Перев Твердохліб Р.В,    4  Зм. Лист № докум Підпис Дата    елементній базі та з більшою ефективністю. При цьому вирішується питання взаємозв'язку показників надійності систем та економічної ефективності. Сучасна мікропроцесорна техніка використовується для програмного керування різними виробничими об'єктами регулювання параметрів технологічних процесів, керування споживанням паливно-енергетичних ресурсів, у машинобудуванні, металургії та інших галузях, керування якістю продукції, контролю і діагностування технічних та інших об'єктів. Широке застосування одержали промислові роботи з вбудованими мікропроцесорами та мікроЕОМ для керування технологічним обладнанням. Мікроконтолер — це складний програмнокерований пристрій, призначений для обробки цифрової інформації та керування процесом цієї обробки, виконаний у вигляді однієї чи кількох інтегральних мікросхем підвищеного ступеня інтеграції великої інтегральної схеми чи надвеликої інтегральної схеми. Мікроконтролери знайшли широке застосування в сучасних обчислювальних системах та радіоелектронних пристроях, технологічних системах контролю, гнучких автоматизованих та інших виробництвах. Мікроконтролери використовуються і в побутовій техніці. Вони входять до складу холодильників, пральних машин, сигналізацій, кухонних комбайнів, регуляторів температур, електросистем сучасних автомобілів і т. д. Використання мікроконтролерів сприяло значному підвищенню продуктивності праці, поліпшенню якості апаратури різного призначення. Завдяки застосуванню Мікроконтролерів і мікропроцесорів у технічних системах розширилися функціональні можливості апаратури, підвищились її надійність і стабільність функціонування, поліпшилась якість обробки інформації. До основних переваг використання мікроконтролерів також відноситься: мала маса і габарити, низьке енергоспоживання, висока швидкодія і обробка сигналів та ін.. Перспективи та можливості застосування Мікроконтролерів і мікропроцесорів в   Викон Шалата В.М.    Лист   Перев Твердохліб Р.В,    5  Зм. Лист № докум Підпис Дата     обчислювальних системах ще повністю не розкриті. Постійно вдосконалюються технологія та архітектура. Сучасний мікроконтролер є складною цифровою системою, розміщеною на кристалі, до складу якої входять 8-, 16-, 32, чи 64-розрядний процесор, внутрішня пам'ять програми (десятки кілобайтів), широкий набір інтерфейсних і периферійних пристроїв, зокрема портів вводу/виводу, таймерів, аналого-цифрових перетворювачів та ін. МПС може складатися з таких частин: 1)МП, який здійснює обробку інформації; 2) мікросхемна пам'ять, які відповідають за зберігання програм та даних; 3) пристрої І/0, які забезпечують зв'язок МПС із зовнішнім світом; 4) допоміжні мікросхеми, які забезпечують узгоджену роботу всієї системи, та обмін інформації між її компонентами (тактові генератори, шинні формувачі, регістри, АЦП та ЦАП). Перелік цих частин називається мікросхемними компонентами. Очевидно, що МПС може бути сформованим на базі тих самих процесорів, які використовуються в ПК. Але через їх складність та високу вартість вони практично не використовуються при побудові МПС. Як правило в реалізованій МПС використовують 8 або 16 розрядні МП, які мають невелику кількість виводів (20-30).   Викон Шалата В.М.    Лист   Перев Твердохліб Р.В,    6  Зм. Лист № докум Підпис Дата      Аналізуючи завдання мікропроцесорної системи можна сказати що вона має виконувати таку основну функцію: Вимірювання значення змінної напруги за певний момент часу.  Принцип роботи полягає у тому, що мікроконтролер постійно стежить за даними які надходять від АЦП. Система повинна записувати в пам’ять значення вхідної напруги через певний момент часу. Після натиснення кнопки старту вміст пам’яті повинен обнулитись. Після заповнення об’єму пам’яті вона повинна стиратись циклічно. Оскільки для того, щоб отримувати інформацію про значення напруги потрібно, щоб весь об’єм пам’яті був заповнений, слід передбачити контрольну лампу, яка буде сигналізувати про те, що пам’ять заповнена. Після натиснення кнопки вибору система повина видати на індикатори значення напруги.   Викон Шалата В.М.    Лист   Перев Твердохліб Р.В,    7  Зм. Лист № докум Підпис Дата      Принцип роботи полягає в тому, що процесор завжди знімає дані з АЦП. Це можна побачити в наступних рядках програми: mov D, H ;занести дані з АЦП в регістр D mov L, bizh_adr ;заносимо в регістр L біжучу адресу mov A, bank ;занести значення банк в акумулятор. В даному випадку ми використовуємо АЦП такого типу: К572ПВ3. АЦП має 2 однакові входи АІ1, АІ2, з’єднаних внутрішніми резисторами, з одним і тим же входом компаратора. На цей самий вхід компаратора подається вихідний струм внутрішнього ЦАП, керованого регістром початкового наближення. АЦП забезпечує перетворення в код суми напруги на входах АІ1, АІ2. При практичному використанні цього АЦП на вхід АІ1 подається вхідна напруга, а на АІ2-напруга з допомогою якої регулюється зміна нуля АЦП. Керування роботою АЦП реалізують за допомогою сигналів на СS, R0. Перехід з 0 на 1 на R0 запускає схему скиду АЦП, а поява 0 на CS запускає АЦП при умові, що скид вже відбувся. Якщо CS=0, перехід з 0 на1 на R0 виконує скид і запуск АЦП. Якщо на CS=1, то перехід з 0 на 1 на R0 зробить тільки скид АЦП, а запуск відбудеться тоді, коли CS=0. Вхід BU АЦП показує, коли АЦП зайнятий (0), тобто відбувається перетворення. Дані на виході існують коли CS=0, R0=0 і BU=1. В усіх інших випадках-третій стан.  Схему АЦП показано на малюнку 1.   Викон Шалата В.М.    Лист   Перев Твердохліб Р.В,    8  Зм. Лист № докум Підпис Дата     Світлодіод. Світлова індикація широко використовується для візуального визначення режимів і станів цифрових пристроїв, представлення даних вимірювань і інших цілей. Випускається велика номенклатура цифрових мікросхем, що здійснюють узгодження виходів цифрових пристроїв і входів елементів індикації. Елементи індикації використовують мініатюрні лампи розжарювання, електролюмінесценції, газорозрядні, рідкокристалічні, світлодіодні індикатори, для індикації великих об’ємів інформації - телевізійні індикатори. По характеру індикації розрізняють точкові, буквено-цифрові, символьні індикатори, лінійні шкали, растрові індикатори. Точкові індикатори в даний час використовують або мініатюрні лампи розжарювання, або світлодіоди. І ті, і інші можна безпосередньо включати на виходи мікросхем. Випускаються мікросхеми, що дозволяють комутувати ланцюги потужністю до 9 Вт (30 В, 300 мА): К155ЛА18, К155ЛИ5, К155ЛЛ2. Слід зазначити, що нитка розжарення лампи в холодному стані має малий опір, тому рекомендується послідовно з лампою встановлювати резистор для обмеження струму. По такій же схемі можна підключати елементи вакуумних люмінесцентних індикаторів, що працюють при напрузі анода до 30 В (ВЕРБ-6, ВЕРБ-7, ВЕРБ-8, ВЕРБ-11, ВЕРБ-17и ін.). Світлодіод засвічується під час вступу на входи а-g сигналу низького рівня (мал. 2), а на загальний анод - сигналу високого рівня. Використовування семисегментних індикаторів цього типу вимагає подачу інверсних семисегментних кодів. Індикатори гасяться при подачі коду бланкування 0FFH. Рис. 2 Семисегментний індикатор АЛС321Б: а — принципова схема; б — розміщення світлодіодів.   Викон Шалата В.М.    Лист   Перев Твердохліб Р.В,    9  Зм. Лист № докум Підпис Дата     Програма висновку символів на індикацію починається з гасіння дисплея записом коду 0FFH в ОЗУ індикації. Управляюче слово установки коду бланкування, сканування ОЗУ індикації і скидання байта стану (мал. 2) повинна містити значення CD = 1, ВС1 = ВС2 = 1. Тоді значення управляючого слова дорівнює 0DCH. Інформація на дисплей виводиться після завантаження управляючого слова запису в ОЗУ індикації (див. мал. 5.25), в якому АААА = 0000,І=1. Значення управляючого слова дорівнює 70Н. Програма має вигляд: MOV AL, 0DCH ; Формування управляючого слова ; установки коду бланкування, ; сканування ОЗУ індикації і ; скидання байта стану OUT 02, AL ; Висновок на інтерфейс CALL DELAY1 ; Затримка на час бланкування MOV AL, 7ОН ; Формування управляючого слова ; записи в ОЗУ індикації OUT 02, AL ; Висновок на інтерфейс MOV CX, 3 ; Завантаження лічильника байт МО: MOV AL, [SI] ; Прочитування з ОЗУ індикації OUT, AL 00 ; Висновок даних на інтерфейс INC SI ; Збільшення адреси на одиницю LOOP МО CALL DELAY2 ; Затримка на час сканування Оскільки нові значення на індикацію можна передавати лише після затримки на час сканування даних в ОЗУ дисплея (5,1 мс), то приведена програма містить підпрограму тимчасової затримки DELAY2.   Викон Шалата В.М.    Лист   Перев Твердохліб Р.В,    10  Зм. Лист № докум Підпис Дата     Програмований таймер Програмований таймер (ПТ) КР1810ВИ54 призначений для організації роботи МП систем і формування сигналів з різними тимчасовими і частотними характеристиками. Структурна схема БІС показана на мал. 3, а умовне позначення - на мал. 4. Схема таймера містить: блок управління читанням/записом RWCU з регістром управляючого слова RCW; трьох стабільний буфер даних BD; три канали на базі 16-розрядних негативних лічильників СТО-СТ2. Кожний канал містить лічильник, вхідні і вихідні буферні регістри. Лічильники можуть працювати в двійковому або двійково-десятковому коді. Максимальна частота лічильника складає 2 Мгц для КР580ВИ53 і 5 Мгц для КР1810ВИ54. Таблиця 1. Призначення висновків ВІС таймера KP580BU54 Позначення Помер висновку Призначення  1 2 3  D7-D0 1-8 Шина даних  CS 21 Вибірка кристала; при CS = 0 дозволена робота ВІС  RD 22 І Читання. Сигнал RD = 0 настроює вхідний буфер на висновок, при якому програмований таймер видає інформацію в МП  WR 23 Запис. Сигнал WR = 0 настроює вхідний буфер на введення, при якому програмований таймер приймає інформацію від МП  АТ, А1 19; 20 Адресні входи, по яких відбувається адресація до одного з трьох каналів таймера  CLK2CLK0 9; 15; 18 Вхід тактових сигналів для управління лічильним таймером. Зріз сиг нала на вході CLK приводить до зменшення вмісту лічильника таймера на одиницю  GATE2- -GATE0 II; 14; 16 Входи дозволу рахунку  OUT2 -OUT0 10; ІЗ; 17 Виходи лічильника/таймера     Викон Шалата В.М.    Лист   Перев Твердохліб Р.В,    11  Зм. Лист № докум Підпис Дата     Мал. 3 Структурна схема ВІС КР580ВИ54: CLK - входи тактових (рахункових) імпульсів; GATE - входи дозволу рахунку, дія яких залежить, від режиму роботи каналу; - виходи лічильників Мал. 4. Умовне позначення ВІС КР580ВИ54 Розряди А1, АТ (мал. 4.) вибирають звернення до лічильників або до регістра управляючого слова RCW: А1 АТ Запит  0 0 СТО  0 1 СT1  1 0 СТ2  1 1 RCW   Сигнали управління роботою ВІС WR, RD, CS подаються на блок RWCU і разом з адресними розрядами АТ, А1 задають вид виконуваної операції відповідно до табл. 2. Таблиця 2. Вид операції програмованого таймера залежно від сигналів управління і адресних розрядів   Викон Шалата В.М.    Лист   Перев Твердохліб Р.В,    12  Зм. Лист № докум Підпис Дата     Операція Сигнали управління   WR RD CS АТ А1  Запис управляючого слова в RCW 0 1 0 1 1  Завантаження СТО Завантаження СТ1 Завантаження СТ2 Читання СТО Читання СТ1 Читання СТ2 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 1 0 0 1 0  Від'єднання програмованого таймера від шини 1 1 0 X X   Примітка, х- будь-яке значення (0 або 1). Узагальнена схема під'єднання ПТ до шин мікропроцесора показана на мал. 5. Як приклад адресні лінії А1, АТ можна під'єднати до ліній А2, АІ шини адрес, на вхід CS подати сигнал з виходу дешифратора.  Мал. 5. Підключення програмованого таймера до шпильок мікропроцесора Установка режиму роботи кожного каналу програмованого таймера здійснюється програмно - записом управляючого слова (мал. 6.) і початкового вмісту лічильника.   Викон Шалата В.М.    Лист   Перев Твердохліб Р.В,    13  Зм. Лист № докум Підпис Дата     D7 D6 D5 D4 D3 D2 D1 D0 CNT1 CNT0 RW1 RW0 M2 M1 M0 K  Рис. 6. Формат управляючого слова програмованого таймера Значення розрядів D7 (CNT1) і D6 (CNT0) вибирають лічильник (табл. 7). Таблиця 7 Вибірка лічильника D7 D6 Лічильник  0 0 Лічильник (СТО)  0 1 Лічильник (СТ1)  1 0 Лічильник (СТ2)  1 1 Заборонена комбінація для КР580ВИ53 і команда читання слова стану для КРІ810ВИ54  Значення розрядів D5 (RW1) і D4 (RW2) вибирають спосіб читання/запису (табл. 8). Таблиця 8 Спосіб читання/запису D5 D4 Спосіб читання/запису  0 0 Читання вмісту лічильника  0 1 Запис тільки молодшого байта  1 0 Запис тільки старшого байта  1 1 Запис молодшого, а потім старшого байтів  Значення розрядів D3-Dl (M2-МО) вибирають один з 6 режимів роботи лічильника (табл. 9). Таблиця 9. Режими роботи програмованого таймера М2 M1 МО Режим  0 0 0 Режим 0  0 0 1 Режим 1  X 1 0 Режим 2  X 1 1 Режим 3  1 0 0 Режим 4  1 0 1 Режим 5     Викон Шалата В.М.    Лист   Перев Твердохліб Р.В,    14  Зм. Лист № докум Підпис Дата     Розряд DO (К) визначає спосіб кодування: ПРО DO = 0 - двійковий лічильник; ПРО DO = 1 –двійково-десятковий лічильник. У ВІС К1810ВИ54 можливо прочитати слова стану лічильника. Для цього необхідно записати управляюче слово (мал. 10). D7 D6 D5 D4 D3 D2 D1 D0 1 1 COUT STAT CT2 CT1 CT0 0  Мал. 10 Вид управляючого слова ВІС К1810ВИ54: СТ0, СТ1, CT2 - вибір лічильника Лічильник вибирається при записі одиниці у відповідний двійковий розряд СТ0, СТ1, СТ2. Значення STAT = 0 указує на те, що буде прочитано слово стану каналу, вказаного в розряді D3-D1. Значення COUNT = 0 указує на те, що буде записаний вміст лічильників, вказаних в D3-D1, у вихідних регістрах каналів. Слово стану каналу має вигляд, показаний на мал. 11. Під час запису управляючого слова в лічильник завантажується спочатку молодший, а потім старший байт коду передньої установки. Надалі робота таймера залежить від вибраного режиму роботи. Лічильники таймера можуть працювати в таких шести режимах: 0 - програмована затримка; 1 - програмований мультивібратор; 2 - програмований генератор тактових імпульсів; 3 - генератор прямокутних сигналів; 4 - програмно-управляючий строб; 5 - апаратно-керований строб. Вплив сигналу; GATE на відповідний лічильник залежить від режиму роботи. D7 D6 D5 D4 D3 D2 D1 D0 OUT FN RW1 RW0 M2 M1 M0 K  Мал. 11. Вид слова стану капала: OUT- стан виходу OUT (О, I); FN - прапор перевантаження (FN = 1, якщо було   Викон Шалата В.М.    Лист   Перев Твердохліб Р.В,    15  Зм. Лист № докум Підпис Дата     перезавантаження коду передустановки); розряди RWI, RWO, M2, M1, М0 і До (дублюють розряди управляючого слова (див. мал. 10)) Режим 3. Генератор прямокутних імпульсів. Вибраний канал формує прямокутні імпульси з програмно-управляючим періодом. Дія сигналу GATE аналогічне режиму 0. При парному значенні N на виході лічильника генерується сигнал Н-рівня впродовж першої половини періоду і L-рівня впродовж другої. При непарному N продовженні Н- рівня на один такт більше, ніж для L-рівень. В режимі 3 число N =3 не можна завантажувати в лічильник. Тимчасові діаграми для цього режиму приведені на мал. 11.  Мал. 11. Режим генератора прямокутних імпульсів. Дешифратор Дешифратор виконує зворотну операцію - перетворює двійковий код в позиційний. Звернемо увагу на ту ж таблицю - одиниця в якому-небудь розряді позиційного коду відповідає комбінації одиниць і нулів в двійковому коді. Отже, крім прямих значень двійкового коду потрібно мати і інверсні, тоді для побудови дешифратора на вісім позицій буде потрібно три інвертування і вісім трьохвходових елементів І, де на входах перебрані всі комбінації двійкових розрядів і їх інверсій. Зважаючи на велику важливість дешифраторів для вживань, їх номенклатура вельми обширна, наприклад, в мікросхемному виконанні випускаються дешифратор чотирьох двійкових розрядів в 16-позиційний код К155 І ДЗ, дешифратор трьох двійкових розрядів в 8-позиційний код К155ИД4, дешифратори для шкальних індикаторів К155ИД11, К155ИД13 і багато інших.   Викон Шалата В.М.    Лист   Перев Твердохліб Р.В,    16  Зм. Лист № докум Підпис Дата      мал.12. Розглянувши детально мікросхему можна побачити, що на малюнку відсутні виходи ножок 8 та 16. На ножку 8 подається земля (мінус), а на ножку 16 подається +5 В. Дана мікросхема є виготовлена в пластмасовому корпусі. Блок регістрів З внутрішньою шиною даних через мультиплексор зв'язаний з блоком регістрів частина яких спеціалізована, інша частина (регістри загального призначення, РОН) програмно доступна і може бути використана по розсуду програміста. Регістри позначені через W, Z, В, С, D, E, H, L, SP і PC регістри W і Z призначені тільки для тимчасового зберігання даних при вибірці команди з пам'яті і неприступні для програміста. Регістри В, С, D, E, H, L відносяться до регістрів загального призначення, оскільки можуть бути використані по розсуду програміста. Ці восьмирозрядні регістри можуть застосовуватися або по окремо, або у вигляді пар В-С, D-E, H-L. граючих роль 16-розрядних регістрів пари регістрів і мають по перших регістрах, як пари В, D, Н. Пара H-L, як правило, використовується для розміщення в ній адрес при непрямій регістровій адресації. В блоці регістрів є також 16-розрядні регістри SP і PC. Регістр SP (Stack Pointer) - покажчик стека.   Викон Шалата В.М.    Лист   Перев Твердохліб Р.В,    17  Зм. Лист № докум Підпис Дата     Стек (магазинна пам'ять) зручний для запам'ятовування масиву слів, оскільки при цьому не вимагається адресувати кожне слово окремо. Слова завантажуються в стек в певному порядку, при прочитуванні також наперед відомий порядок їх положення. Зокрема, стек зручний при запам'ятовуванні станів регістрів у момент переривання програми. Порядок введення слів в стек і їх прочитування його пристроєм. При організації типу LIFO (Last In - First) останнє записане в стек слово при причитуванні з’являється першим. Стек LIFO по порядку запису-прочитування подібний купі тарілок – для використання знімається верхня, тобто остання встановлена, потім друга і т.д. Цікаво відзначити, що сам термін "стек" відбувся саме від позначення такої купи. Стек має дно і верхівку, в напрямку зростання номерів осередків в ньому може бути різним (звичайним і перевернений стеки). Операції із стеком - Push (запис слова) і Pop (прочитування слова).  Оскільки ця схема є двадцятиконтактна, то на 10, і 20 ніжку подається джерело живлення 5В. Мікропроцесор серії 1821 (Intel 8085A) У всьому світі широко застосовуються мікропроцесори фірми Intel і їх аналоги. Ця фірма розробила перший МП, потім цілий рік їх сімейств і в даний час за різними оцінками проводиться 85...92% від загального об’єму випуску мікропроцесорів. При вивченні МП доцільно орієнтуватися на конкретні зразки.   Викон Шалата В.М.    Лист   Перев Твердохліб Р.В,    18  Зм. Лист № докум Підпис Дата     Тут вибраний МП К1821ВМ85А - аналог мікропроцесора Intel 8085A. Це простий для вивчення об'єкт, на якому легко прослідити основні принципи роботи МП. Не дивлячись на свій багаторічний вік, цей МП до тепер випускається промисловістю і зустрічається в каталогах фірм. Природно, що областю його вживання не є комп'ютери, в яких зараз застосовують набагато більш потужні і продуктивні МП. Такі МП, як К1821ВМ85А використовуються в системах управління різною апаратурою, де їх можливостей вистачає. Схема має вигляд:  Малюнок 13.   Викон Шалата В.М.    Лист   Перев Твердохліб Р.В,    19  Зм. Лист № докум Підпис Дата     Структура мікропроцесора К1821ВМ85А Структура мікропроцесора К1821ВМ85А показана на мал13. Мікропроцесор має восьмирозрядну шину даних (внутрішню), через яку його блоки обмінюються інформацією. На схемі прийняті наступні позначення: АС (Accumulator) - регістр-акумулятор, виконаний на двохступеневих тригерах і здатний зберігати одночасно два слова (один із операндів і результат операції); TR (Temporary Register) - регістр тимчасового зберігання одного з операндів; ALU (Arithmetic-Logic Unit) - арифметико-логічний пристрій, що виконує дії над двома словами-операндами, що подаються на його входи. Акумулятор служить джерелом і приймачем даних, TR - джерелом слів даних, збереженим на час виконання операції. АLU функціонує згідно співвідношенню А:= А * В, де В зберігається в TR, другий операнд поступає від акумулятор. RF (Register Flags) - регістр прапорців, тобто бітів, вказуючи на ознаки результатів арифметичних або логічних операцій, виконаних в ALU указують п'ять ознак: Z (Zero) - нульовий результат, з (Carry)- перенос, АС (Auxiliary Carry) – допоміжне перенесення, S (Sign) - знак, Р (Parity) - парність ваги слова. Ознака допоміжного перенесення (перенесення між молодшою і старшою тетрадами восьмирозрядного слова) потрібна при виконанні операцій в двійково-десятковому коді.   Викон Шалата В.М.    Лист   Перев Твердохліб Р.В,    20  Зм. Лист № докум Підпис Дата      Задання констант та змінних: bank 1 EQU 00000000b; дані константи дозволяють проводити вибір і переключання bank 2 EQU 00001000b; чесло між байтами регістрів контролера bizh_adr DB1; використовують для подання адреси на всі елементи схеми zapovn_pam DB1; вказує на те, що пам’ять заповнена min DB1; змінні з якими потрібно працювати max DB1: sdr_tmp DB1; тимчасова адреса, призначена для тимчасового зберігання адреси bank_tmp DB1; тимчасовий номер банку, призначений для зберігання інформації Процедура ініціалізації ORG2Ch; перехід на RST 5.5 Call zapus; запис інформації з АЦП ORG 3Hh; перехід на RST 6.5 ORG3h; перехід на RST 7.5 Call vuvid; вивід інформації на індикатори mov zapovn_pam, 0 mvi max, 00h mov H, FFh mvi M,0 Процедура запису з АЦП mvi a, 01011111 ANA 4; логічне множення mvi A, 01010000 ORA H;примусово встановлюємо 1в регістрі U mov D, M; заносимо в регістр D дані з АЦП mov L, bizh_adr; заносим в регістр L біжучу адресу mov A, bank; занести значення bank в акумулятор JNZ pershy; якщо ≠0 то перехід на pershy   Викон Шалата В.М.    Лист   Перев Твердохліб Р.В,    21  Зм. Лист № докум Підпис Дата     mvi h, 11110111; запис значення памяті в регістрі Н jmp zapus; безумовний перехід на запис pershiy: mvi h, 11111011; запис значення bank1 в акумулятор mov M, D; значення з регістру D записати в пам’ять INR bizh_adr; адресу збільшити на 1 jnc exit; якщо память пуста то рухаємося далі, якщо ні то перехід на exit mov bizh_adr, 0; обчислюєм bizh_adr INR bank; додаєм 1 до банку mov A, bank; значення банку записуюмо в акумулятор CPI 2; порівнюємо А з 2 jnz exit; якщо А ≠ 2 то виходимо з програми, якщо рівна 2 то рухаємося далі mov zapovn_pam, 1; запис 1 в zapovn_pam mov bank, 0; обчислюєм bank mov A,H ANI A, 00101111 ORI A, 00100000 mov H, A mov H,0 exit reti; вихід з підпрограми Програмування таймера mov D, 37h; занести 37h в регістр D mvi H, 01111111; пересиляєм безпосередні дані в регістр Н mov M, D; вміст регістру D записуєм в регістр М mov D, 3E80h; число 3Е80 записуєм в регістр D mov M, D; вміст регістру D записуєм в регістр М mov D, 80h; число 80 записуєм в регістр D mov M, D; вміст регістру D записуєм в регістр М Запис виводу інформації на дисплей mov A, zapovn_pam CPI 0; порівняння А з 0   Викон Шалата В.М.    Лист   Перев Твердохліб Р.В,    22  Зм. Лист № докум Підпис Дата     jz exit; якщо А ≠ 0 то перехід на exit mov adr_tmp, 0; обнулення змінних mov bank_tmp, 0; обнулення змінних cycle1: mov L, odr_tmp; запис adr_tmp в регістр L mov A, bank_tmp; запис в А вмісту bank_tmp CPI 0; порівняння А з 0 jnz pershy; якщо А ≠ 0 то перехід на pershy mvi H, 11110111; запис в Н значення bank jmp next; безумовний перехід на next pershy : mvi H, 11111011; запис в Н значення bank next: mov M,0; обчислюєм память mov D,M; запис памяті в регістр D mov A,D; запис вмісту регістру D в A SUB max; віднімаємо від a jp save; якщо в а менше число за max та записуємо max в регістр D jmp next 2; next 2: INR adr_tmp; збільшуєм адресу на 1 jnc cycle; якщо нема max значення то рухаємося далі INR bank_tmp; збільшуєм банк на 1 mov acl_tmp, 0 mov a, bank_tmp CPI A,2; порівнюємо А з 2 jnz cycle 1; якщо нема 2 то перехід на cycle 1, якщо є закінчення циклу. Вивід інформації на індикатори mov D, max; максимальне значення в регістр D MVI C, 0; запис нуля в регістр С cycle 2:  
Антиботан аватар за замовчуванням

31.03.2013 22:03-

Коментарі

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

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

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

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

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

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

Admin

26.02.2023 12:38

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