рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Периферійні пристрої

Периферійні пристрої - раздел Образование, Міністерство Освіти І Науки, Молоді Та Спорту України Національний Т...

МІНІСТЕРСТВО ОСВІТИ І НАУКИ, МОЛОДІ ТА СПОРТУ УКРАЇНИ

НАЦІОНАЛЬНИЙ ТЕХНІЧНИЙ УНІВЕРСИТЕТ УКРАЇНИ «КИЇВСЬКИЙ ПОЛІТЕХНІЧНИЙ ІНСТИТУТ»

Кафедра системного програмування та спеціалізованих ком’ютерних систем

 

 

Периферійні пристрої

 

Методичні вказівки до виконання лабораторних робіт

 

 

Київ-2013

Міністерство освіти і науки, молоді та спорту України

Національний технічний університет України

«Київський політехнічний інститут»

 

 

Периферійні пристрої

 

 

МЕТОДИЧНІ ВКАЗІВКИ
до виконання лабораторних робіт
з дисципліни «Периферійні пристрої» для студентів
напряму підготовки 6.050102 «Комп
`ютерна інженерія»

 

Рекомендовано

Вченою радою ФПМ НТУУ «КПІ»

(25.02.2013 р., протокол № 7)

 

 

Київ

НТУУ «КПІ»

Периферійні пристрої: Метод. вказівки до викон. Лаборатор. Робіт / Уклад.: - К.: НТУУ «КПІ», 2013. - 111 c.

 

Гриф надано Методичною радою НТУУ «КПІ»

(Протокол №_ від __.__.2013р.

 

 

Навчально-методичне видання

 

Периферійні пристрої

Методичні вказівки

до виконання лабораторних робіт з дисципліни «Периферійні пристрої» для студентів напряму підготовки 6.050102 «Комп’ютерна інженерія»

 

Методичні вказівки розроблено для ознайомлення студентів з теоретичними відомостями та практичними прийомами розробки та моделювання систем управління об’єктом (периферійним пристроєм). Навчальне видання призначене для студентів, які навчаються за напрямом 6.050102 «Комп’ютерна інженерія» факультету прикладної математики НТУУ «КПІ».

 

Укладачі: Плахотний Микола Вікторович, канд. техн. наук, доц.

Наливайчук Микола Васильович, старший викладач.

 

Відповідальний

За випуск Орлова Марія Миколаївна, канд. техн. наук, доц.

 

Рецензент Марковський Олександр Петрович, канд. техн. наук, доц.

 

 

 

 

ЗМІСТ

ЗМІСТ.. 4

ВСТУП.. 6

Структура дисципліни «Периферійні пристрої». 7

Загальні вказівки до виконання лабораторних робіт. 8

Вимоги до виконання лабораторних робіт. 9

Вимоги до оформлення лабораторних робіт. 9

Перелік лабораторних робіт: 9

Вимоги до виконання залікових робіт. 10

Вимоги до оформлення залікових робіт. 12

Приклади тем заліковиих робіт. 12

Приклади виконання та оформлення лабораторних робіт. 15

Лабораторна робота №1. Приклад МПСУ.. 15

Питання до лабораторної роботи №1. 57

Лабораторна робота №2. Мікропроцесорна система управління вкл./викл. об'єкта 59

Питання до лабораторної роботи №2. 62

Лабораторна робота №3. Мікропроцесорна система управління на I8255 і I8253 63

Питання до лабораторної роботи №3. 67

Лабораторна робота №4. Мікропроцесорна система управління на I8255 і I8253 68

Питання до лабораторної роботи №4. 73

Лабораторна робота №5. Паралельна передача даних в режимі 1 74

Питання до лабораторної роботи №5. 78

Лабораторна робота №6. Паралельна передача даних в режимі 0 79

Питання до лабораторної роботи №6. 84

Лабораторна робота №7. Мікропроцесорна система управління з управлінням по послідовному каналу (базовий алгоритм). ПЗО побудований на ВІС, SPI, РРІ, РТ 85

Питання до лабораторної роботи №7. 89

Лабораторна робота №8. Мікропроцесорна система управління з складною логікою об’єкта 91

Питання до лабораторної роботи №8. 98

Приклади виконання залікової робіи. 100

Імітація роботи з/д вокзалу. 100

Список рекомендованої літератури. 111

 

 

ВСТУП

Дисципліна «Периферійні пристрої » – це напрямок у загальній схемі апаратно - програмної підготовки студентів. Периферійні пристрої є аналогом об’єкта в мікропроцесорних системах керування. Дана дисципліна призначена для формування знань з питань з’єднання промислових вимірювальних та інших пристроїв в системах автомавтизації на основі мікропроцесорних засобів.

Для вивченна цієї дисципліни необхідні знання з слідуючих дисциплін: Інформатики, програмування на мовах ассемблер Мпі8086, Pascal, Delphi, С, С++, а також з основ цифрової схемотехніки та електроніки.

 

Структура дисципліни «Периферійні пристрої»

Теоретична частина дисципліни «Периферійні пристрої» включає в себе лекції з вивчення наступних тем:

Вступ

Розробка мікропроцесорних систем управління

Периферійний програмувальний інтерфейс PPI I8255

Програмувальний таймер PT I8253

Паралельна передача даних

Послідовна передача даних

Контролер прямого доступу до пам’яті DMA I8257

Програмувальний контролер переривань PIC I8259A

Стандартні інтерфейси RS232C, RS422/485 Centronics

Практична частина дисципліни представлена циклом лабораторних робіт моделювання комп’ютерних систем управління на базі мікросхем фірми INTEL, де периферійні пристрої є об’єкт управління. Частина робіт присвячена вивченню передачі данних по паралельному та послідовному каналам. Також до практичної частини курсу належить залікова робота.

При вивченні дисципліни "Периферійні пристрої" студенти самостійно готують демонстраційні програми різних мікропроцесорних систем на базі контролерів І8255, І8253, І8251, І8259, І8257, І8279 та інших фірм.

Загальні вказівки до виконання лабораторних робіт

Виконання лабораторних робіт з дисципліни «Периферійні пристрої» виконуються студентами спеціальностеі 6.050102 “Комп`ютерні інженерія” і дозволяє закріпити теоретичні знання, оволодіти методикою моделювання та побудови комп’ютерних систем управління на елементній базі фірми IBM та інших.

Кожній лабораторній роботі має передувати самостійна підготовка студентів, під час якої вони вивчають теоретичні відомості, що стосуються виконуваної роботи, та відповідну літературу. Під час підготовки до роботи студент зобов’язаний скласти протокол лабораторної роботи, в якому мають знайти відображення всі пункти завдання (схеми, тексти мікропрограм тощо).

Студент, який не має протоколу, до виконання лабораторної роботи не допускається. Перед початком лабораторної роботи студент повинен сформулювати мету і порядок виконання роботи і віповісти на контрольні запитання викладача.

Під час виконання роботи студент зобов'язаний неухильно дотримуватись правил техніки безпеки.

Перед початком наступного заняття в лабораторії студент зобов'язаний подати викладачеві повністю оформлений звіт з попередньої роботи. Звіт повинен містити всі необхідні схеми, формули, таблиці, розрахунки, відлагоджені тексти программ, одержані у процесі виконання лабораторної роботи, а також підсумкові висновки.

Студент, який не подав звіту, до виконання наступної лабораторної роботи не допускається.

 

Вимоги до виконання лабораторних робіт

Метою виконання кожної лабораторної роботи є наступне:

· Побудова схеми електричної функціональної комп’ютерної системи управління.

· Розробка алгоритму системи управління.

· Розробка програми управління на мові асемблер.

· Розробка програмного забезпечення моделювання функціонування системи управління периферійним пристроєм на мові високого рівня.

· Демонстрація динаміки функціонування системи на моніторі комп’ютера.

Вимоги до оформлення лабораторних робіт

Звіт про виконання лабораторної роботи повинен включати:

· Постановку задачї.

· Опис об’єкта управління.

· Схему електричну функціональну системи управління.

· Визначення портів вводу виводу.

· Алгоритм програми управління системи.

· Лістінг програми управління на мові асемблер.

Перелік лабораторних робіт:

1. Лабораторна робота №1. Побудова та відображення динаміки фунціонування системи на структурному рівні.

2. Лабораторна робота №2. Мікропроцесорна система управління вкл./викл. об'єкта на базі МС INTEL 8255 з программною витримкою.

3. Лабораторна робота №3. Мікропроцесорна система управління вкл./викл. об'єкта на базі МС INTEL 8255 з апаратною витримкою на МС INTEL 8253.

4. Лабораторна робота №4. Мікропроцесорна система управління вкл./викл. об'єкта на базі МС INTEL 8255, INTEL 8253. Лічильник LT0 включає об’єкт та витримує цей стан, а лічильник LT1 виключає об’єкт та витримує цей стан.

5. Лабораторна робота №5. Паралельна передача даних на базі МС INTEL 8255 в режимі 1 з апаратним підрахунком кількості поданих байтів.

6. Лабораторна робота №6. Паралельна передача даних на базі МС INTEL 8255 в режимі 0 з апаратним підрахунком кількості поданих байтів.

7. Лабораторна робота №7. Мікропроцесорна система управління на базі МС INTEL 8251 по послідовному каналу, з апаратою витримкою включеного і виключеного стану об'єкта.

8. Лабораторна робота №8. Мікропроцесорна система управління об'єктом на базі МС INTEL 8255 з логічною обробкою вхідних сигналів об'єкта та апаратною витримкою включеного і виключеного стану об'єкта.

Вимоги до виконання залікових робіт

Метою виконання залікової роботи є наступне:

· Побудова схеми електричної функціональної комп’ютерної системи управління.

· Розробка алгоритму системи управління.

· Розробка програми управління на мові асемблер.

· Розробка програмного забезпечення моделювання функціювання системи управління на мові високого рівня.

· Демонстрація динаміки функціювання системи на моніторі комп’ютера.

Вимоги до оформлення залікових робіт

Звіт про виконання залікової роботи повинен включати:

· Постановку задачї.

· Опис об’єкта управління.

· Схему електричну функціональну системи управління.

· Визначення портів вводу виводу.

· Алгоритм програми управління системи.

· Лістінг програми управління на мові асемблер.

Приклади тем заліковиих робіт

  1. Модель системи безпеки приміщення
  2. Модель автоматичного гаража з додатковими функціями
  3. Програмна модель роботи гірлянди
  4. Моделювання роботи сигналізації офісного приміщення
  5. Система керування мобільним телефоном
  6. Модель радіокерованого автомобіля
  7. Модель пристрою для перекладання дисків
  8. Програмна модель радарної установки
  9. Система контролю доступу в приміщенні за допомогою відбитків пальців
  10. Автоматизована система поливу квітів
  11. Розробка багатофункціонального лічильника
  12. Макет турнікета
  13. Система управління світлофорами на «х-подібному» перехресті
  14. Система кодовий замок
  15. Система очистки води (динамічна схема)
  16. Створення і управління зовнішніми пристроями комп’ютера
  17. Розробка магнітоконтактної охоронної сигналізації
  18. Модель системи управлення ліфтом
  19. Кавовий автомат
  20. Модель автоматичної системи контролю і пропуску для автомобільної стоянки
  21. Світлодіодне мікротабло
  22. Комп’ютерна модель двохкамерного холодильника
  23. Розробка системи виведення повідомлень
  24. Інтелектуальна ванна кімната
  25. Керування вентилятором з комп’ютера
  26. Моделювання систем керування. Модель стоянки.
  27. Моделювання систем керування. Модель робота-пилососа.
  28. Моделювання систем керування. Модель контролера принтера.
  29. Модель кондиціонера
  30. Моделювання руху автомобілів та пішоходів на регульованому перехресті
  31. Моделювання роботи сигналізації офісного приміщення
  32. Моделювання кімнати
  33. Програмний емулятор 3D-сканера
  34. Надземний бункер
  35. Система керування музичним автоматом
  36. Модель відео проектора
  37. Програма управління жалюзі для регулювання освітленості
  38. Прототип робота пожарника
  39. Моделювання роботи мікрохвильової печі
  40. Програмна модель роботи вентилятора
  41. Імітація роботи з/д вокзалу
  42. Програматор для мікроконтролерів AVR на базі програматора PonyProg

Приклади виконання та оформлення лабораторних робіт.

Лабораторна робота №1. Приклад МПСУ

Схема електрична структурна

 

Рис. 1 Приклад МПСУ

 

Умова

1. Побудувати схему електричну структурну мікропроцесорної системи управління.

2. Записати алгоритм управління з врахуванням схемотехніки МПСУ(алгоритм орієнтований на асемблерну реалізацію).

3. Реалізувати систему на екрані комп'ютера за допомогою мови програмування Delphi. Високий і низький рівні функціонування системи показати за допомогою переключення кольорiв на лініях об'єкта.

Опис об'єкта

Об'єкт має один елемент індикації, що відображає включений або виключений стан лінії "Керування". Кнопка Start відповідає запуску системи, тобто при натисканні Start на лінії "Готовність" з'являється високий рівень по якому система починає функціонувати. При натисканні кнопки Stop на лінії "Готовність" з'являється низький рівень і система вимикається.

Алгоритм функціонування системи

1. Перевірка наявності сигналу "Готовність" (чекання)

2. Включити об'єкт - лінію "Керування"

3. Витримка включеного стану

4. Виключити об'єкт – лінію керування

5. Витримка виключеного стану

6. Перевірка " чи не виключена система ?" якщо ні,

то відбувається перехід до пункту №2, інакше - до пункту №7

7. Кінець

Керівництво по виконанню лабораторної роботи № 1

ТЕОРЕТИЧНА ЧАСТИНА

Знайомство з середовищем DELPHI

Запустіть Delphi - і ви побачите щось, схоже на Рис.2 (на рисунку показані вікна версії Delphi 6; для інших версій вікна можуть мати незначні… Щоб упорядкувати вікна так, як вони показані на малюнку, вам доведеться вручну… Зауважу, що при першому запуску Delphi поверх всіх вікон з'явиться вікно, показане на Рис. 3.

Interface

Uses

Windows, Messages, SysUtils, Classes, Graphics, Controls, Frms, Dialogs;

Type

TFormI = class(TForm) private

{ Private declarations } public

{ Public declarations } end;

var

Form1: TForm1;

Implementation

end. Ці рядки Delphi автоматично вставляє в вікно коду для нової форми. Як вже… unit Unit1;

End.

в нижній частині вікна.

Щоб вставити у вікно новий рядок (рядки) потрібно спочатку, за допомогою клавіш курсору, або клацнувши по вікну мишею, поставити текстовий курсор (миготливу вертикальну риску) на потрібне місце, а потім за допомогою клавіатури ввести текст. Зазвичай текст коду програми розташовується в декількох рядках. Для переходу на новий рядок використовуйте клавішу Enter. Якщо в процесі введення ви помилилися і зразу помітили свою помилку, видаліть помилковий символ клавішею Backspace (довгаста сіра клавіша в правому верхньому куті зони алфавітно-цифрових клавіш, або розташована там же клавіша з лівою стрілкою). Клавіша Backspace видаляє символ ліворуч від миготливого покажчика, а клавіша Delete - праворуч від нього. Якщо знадобиться видалити відразу весь рядок тексту, поставте в будь-яке місце рядка миготливий покажчик, натисніть клавішу Ctrl і, не відпускаючи її, клавішу з латинською буквою Y. Таке спільне натиснення клавіш надалі будемо позначати символом Ctrl Y. Щоб скасувати останню зміну тексту, натисніть Ctrl Z.

ОСНОВИ ВІЗУАЛЬНОГО ПРОГРАМУВАННЯ

Програмування в Delphi будується на тісній взаємодії двох процесів: процесу конструювання візуального прояву програми і процесу написання коду, що додає елементам цього вікна і програмі в цілому необхідну функціональність. Для написання коду використовується вікно коду, для конструювання програми - інші вікна Delphi і перш за все - вікно форми.

Між вмістом вікон форми та коду існує нерозривний зв'язок, який строго відстежується Delphi. Це означає, що розміщення на формі компонента приводить до автоматичної зміни коду програми і навпаки - видалення тих чи інших автоматично вставлених фрагментів коду може призвести до видалення відповідних компонентів. Пам'ятаючи про це, програмісти спочатку конструюють форму, розміщуючи на ній черговий компонент, а вже тільки після цього переходять, якщо це необхідно, до писання фрагмента коду, що забезпечує необхідну поведінку компонента в працюючій програмі. Ось чому знайомство з Delphi програмуванням починається з вікна форми.

ПОРОЖНЯ ФОРМА ТА ЇЇ МОДИФІКАЦІЯ

Як Вже говорилося, вікно форми містіть проект Windows - вікна програми. Важливо пам'ятати, що з самого початку роботи над новою программою Delphi створює мінімально необхідній код, що забезпечує її нормальне функціонування в Windows. Таким чином, найпростіша програма готова відразу після вибору опції File | New | Application, і залішається просто запустити програму. Однак до цього необхідно виконати дві важліві речі: створити власний робочий каталог (папку) i потрібнім чином налаштувати Delphi.

НАЛАШТУВАННЯ DELPHI

Друге, що нам належить зробити, - це внести зміни в стандартну настройку середовища Delphi. Це необхідно для того, щоб середовище автоматично… Тепер все готово для прогону першої програми. Клацніть мишею по кнопці в… За замовчуванням Delphi пропонує розмістити файл модулі та проекту в системній папці BIN. Оскільки ця пайка містить…

ЗНАЙОМСТВО З КОМПОНЕНТАМИ

Бібліотеки компонентів для різних версій Delphi будуються за принципом розширення: у першій версії було близько 70 компонентів, в той час як до… Навіть просте перерахування 373 компонентів версії 6 зайняло б багато місця і… СТОРІНКА STANDARD

Умова

1.Побудувати функціональну електричну схему мікропроцесорної системи керування ПЗО якої реалізовано на ВІСА I8255. Витримку реалізувати за допомогою підпрограми PROCDELAY.

2.Записати алгоритм керування з обліком схемотехніки МПСУ (алгоритм орієнтований на асемблерну реалізацію). Порти - РУС 1Fh.

3. Записати програму керування на асемблері

4.Реалізувати систему на екрані комп'ютера за допомогою мови програмування Delphi. Високий і низький рівні функціонування системи показати за допомогою переключення кольорiв на лініях об'єкта.

Опис об'єкта

Об'єкт має один елемент індикації, що відображає включений або виключений стан лінії "Керування". Кнопка Start відповідає запускові системи, тобто при натисканні Start на лінії "Готовності " з'являється високий рівень по якiй система починає функціонувати. При натисканні кнопки Stop на лінії "Готовності" з'являється низький рівень і система виключається.

Алгоритм функціонування системи

1.ІніціалізаціяI8255. Мол. тетрада КС - на введення, Ст. тетрада КС - на висновок.

2.Перевірка наявності сигналу "Готовність" (чекання).

3.Включити об'єкт - лінію "Керування".

4.Витримка включеного стану.

5.Виключити об'єкт.

6.Витримка виключеного стану.

7.Перевірка " чи не виключена система ?" якщо ні, те відбувається перехід до пункту №2, інакше - до пункту №8.

8.Кінець.

Програма керування на ассемблері

;процедура витримки вкл. і викл. стану

Proc ProcDelay

Push cx

Mov cx,500

@c1:

Loop c1

Pop cx

Ret

ProcDelay end

; установка режиму роботи схемиI8255 (установка ВУС-I)

Mov al, 10000001b ; 81h

Out 1Fh, al

system_on:

In al,1Eh

Test al,01h

Jz system_on

; включення лінії:

M1:mov al, 00001001b ;09h

Out 1Fh,al

;процедура витримки

Call ProcDelay

; вимикання лінії:

Mov al, 00001000b ;08h

Out 1Fh,al

;процедура витримки

Call ProcDelay

In al, 1EH

Test al, 01H

Jnz m1

End

Питання до лабораторної роботи №2

  1. Базовий алгоритм системи управління
  2. Характеристика об’єкту управління з точки зору інтерфейсу користувача
  3. Характеристика об’єкту з точки зору типу управління
  4. Функції адресної шини в даній системі управління
  5. Активний / пасивний стан ПЗО в системі управління
  6. Адресне поле ПЗО в системі управління
  7. Програмування ПЗО. Керуюче слово
  8. Програмна витримка стану лінії “Управління”
  9. Поведінка об’єкту від стану кнопки Start / Stop
  10. Схемотехніка об’єкту управління

Лабораторна робота №3. Мікропроцесорна система управління на I8255 і I8253

Функціональна схема

Рис. 8 МПСУ на I8255 і I8253

 

Умова

1. Побудувати функціональну електричну схему мікропроцесорної системи керування ПЗО якої реалізовано на МС I8255.

2. Записати алгоритм керування з урахуванням схемотехніки МПСУ (алгоритм орієнтований на асемблерну реалізацію). Порти I8255 - РУС 1Fh, I8253 - РУС 1Bh, витримка апаратна на МСІ8253, константа витримки – СВ70Н.

3. Записати програму керування на асемблері

4. Реалізувати систему на екрані комп'ютера за допомогою мови програмуванняDelphi. Високий і низький рівні функціонування системи показати за допомогою переключення кольорів на лініях об'єкта.

Опис об'єкта

Об'єкт має один елемент індикації, що відображає включений або виключений стан лінії "Керування". Кнопка Start відповідає запуску системи, тобто при натисканні Start на лінії "Готовності " з'являється високий рівень по якому система починає функціонувати. При натисканні кнопки Stop на лінії "Готовності" з'являється низький рівень і система виключається.

Алгоритм функціонування системи

1.Ініціалізація I8255. Мол. тетрада КС - на введення,

ст. тетрада КС - на виведення.

2.ІніціалізаціяI8253 Лічильника 0.

3.Запис константи в Сч0 - CB70h.

4.Перевірка наявності сигналу "Готове" (чекання).

5.Формуємо сигнал Gate Сч0.

6.Включити об'єкт - лінію "Керування".

7.Перезапуск Лічильника 0.

8.Чекання сигналу Out Сч0 (PC(1)=1).

9.Виключити лінію (розряд PC(4) у 0).

10.Перезапуск Лічильника0.

11.Чекання сигналу Out Сч0.

12.Перевірка " чи не виключена система ?" якщо ні,

то відбувається перехід до пункту №6, інакше - до пункту №13.

13.Кінець.

Програма керування на ассемблері

; установка режиму роботи схеми I8255

Mov al, 10000001b ; 81h

Out 1Fh, al

; установка режиму роботи схеми I8253

Mov al, 00110000b ; 30h

Out 1Bh, al

; запис константи в Сч0

Mov al, 70h

Out 18h, al

Mov al, CBh

Out 18h,al

; перевірка сигналу “готовності”

label1:

In al,1Eh

Test al, 01Hx

Jz label1

label2:

; формуємо сигнал Gate Ст0

Mov al, 00001011b ;0Bh

Out 1Fh, al

; включення лінії

label6:mov al, 00001001b ;09h

Out 1Fh,al

; перезапуск Ст0

Mov al, 00110000b ; 30h

Out 1Bh, al

; чекання сигналу Out Сч0 (PC(1)=1)

label3:

In al, 1Eh

Test al, 02h

Jz label3

label4:

; виключити лінію

Mov al, 00001000b ; 08h

Out 1Fh,al

; перезапуск Ст0

Mov al, 00110000b ; 30h

Out 1Bh, al

; чекання сигналу Out Ст0 (перевірка РС(1) )

label5:

In al, 1Eh

Test al, 02h

Jz label5

; Перевірка " чи не виключена система ?"

In al, Eh

Test al, 01h

Jnz label6

End

Питання до лабораторної роботи №3

  1. Архітектура системи управління
  2. Призначення МС І8253 з точки зору інтерфейсу
  3. Вибір портів МС І8255, МС І8253
  4. Програмування МС І8255. Керуюче слово
  5. Програмування МС І8253. Керуюче слово
  6. Запис константи витримки в лічильник
  7. Динаміка ліній інтерфейсу
  8. Динаміка ліній Out Ст0, Gate Ст0 в автоматичному режимі роботи
  9. Динаміка ліній Out Ст0 в залежності від кнопок Start, Stop
  10. Поведінка системи в автоматичному режимі роботи при маніпулюванням сигналом Gate Ст0

Лабораторна робота №4. Мікропроцесорна система управління на I8255 і I8253

Функціональна схема

Рис. 9 МПСУ на I8255 і I8253

Умова

1.Побудувати функціональну електричну схему мікропроцесорної системи керування ПЗО якої реалізовано на ВІСА I8255 і ВІС I8253.

2.Записати алгоритм керування з урахуванням схемотехніки МПСУ(алгоритм орієнтований на асемблерну реалізацію). Порти I8255 - РУС 1Fh, I8253 - РУС 1Bh. Витримка апаратна МС I8253.

3.Записати програму керування на асемблері.

4.Реалізувати систему на екрані комп'ютера за допомогою мови програмування Delphi. Високий і низький рівні функціонування системи показати за допомогою переключення кольорів на лініях об'єкта.

Опис об'єкта

Об'єкт має один елемент індикації, що відображає включений або виключений стан лінії "Керування". Кнопка Start відповідає запуску системи, тобто при натисканні Start на лінії "Готовності " з'являється високий рівень по який система починає функціонувати. При натисканні кнопки Stop на лінії "Готовності" з'являється низький рівень і система виключається. Лічильник 0 включає лінію «Управління», лічильник 1 виключає лінію «Управління».

Алгоритм функціонування системи

1.ІніціалізаціяI8255. Мол. тетрада КС - на введення,

ст. тетрада КС - на висновок.

2.Ініціалізація I8253. Установка режиму Лічильника 0.

3.Ініціалізація I8253. Установка режиму Лічильника 1.

4.Запис константи в Сч0 - СВ70h.

5.Запис константи в Сч1 - СВ70h.

6.Перевірка наявності сигналу "Готовності" (контроль PC(4)).

7.Запуск Лічильника 0 (формування сигналу високого рівня на лінії РС(0)).

8.Чекання сигналу Out Ст0 (контроль РС(6)=1).

9.Запуск Ст1(формування РС(1)=1). ; формування Gate1

10.Чекання сигналу Out Сч1 (контроль РС(5)=1).

11.Перезапуск Ст0 (запис керуючого слова режиму Ст0).

12.Чекання сигналу Out Ст0 (контроль РС(6)=1).

13.Перезапуск Ст1 (запис керуючого слова режиму Ст1).

14.Чекання сигналу Out Ст1 (контроль РС(5)=1).

15.Перевірка " чи не виключена система?" якщо ні, то відбувається перехід до пункту №11, інакше - до пункту №16.

16.Кінець

Програма керування на ассемблері

; установка режиму роботи схеми I8255

Mov al, 10001000b ; 88h

Out 1Fh, al

; установка режиму роботи схеми I8253 Сч0

Mov al, 00110000b ; 30h

Out 1Bh, al

; установка режиму роботи схеми I8253 Сч1

Mov al, 01110000b ; 70h

Out 1Bh, al

; запис константи в Сч0 – CB70h

Mov al, 70h

Out 18h, al

Mov al, CBh

Out 18h, al

; запис константи в Сч1

Mov al, 70h

Out 19h, al

Mov al, 0CBh

Out 19h, al

; перевірка сигналу “готовності”(РС(4))

label1:

In al, 1Eh

Test al,10h

Jz label1

; включити Gate0(РС(0))

Mov al, 00000001b ;01H

Out 1Fh, al

; чекання сигналу Out Сч0 (РС(6))

label2:

In al, 1Eh

Test al,01000000b ;40H

Jz label2

; включити Gate1(РС(1))

Mov al, 00000011b ;03H

Out 1Fh, al

; чекання сигналу Out Сч1 (перевірка РС(5))

label3:

In al, 1Eh

And al, 00100000b ;20H

Jz label3

; перезапуск Сч0

label5:

Mov al, 00110000b ; 30h

Out 1Bh, al

; чекання сигналу Out Сч0 (перевірка PC(6))

Label4

In al, 1Eh

Test al, 01000000b ;40H

Jz label4

; перезапуск Сч1

Mov al, 01110000b ; 70h

Out 1Bh, al

; чекання сигналу Out Сч1 (перевірка РС(5))

label6:

In al, 1Eh

Test al, 00100000b ;20H

Jz label6

End

Питання до лабораторної роботи №4

  1. Архітектура системи управління, особливості
  2. Внутрішній та зовнішній інтерфейс системи управління
  3. Оптимізація схемотехніки системи управління
  4. Призначення допоміжної схемотехніки ПЗО
  5. Програмування МС І8255. Керуюче слово
  6. Програмування МС І8253. Керуюче слово
  7. Вибір портів ПЗО та стану об’єкту управління
  8. Особливості запису констант витримки вкл./викл. стану лінії “Управління”
  9. Характерна динаміка стану ліній Out Ст0, Out Ст1, “Управління”
  10. Призначення інвертора в колі лінії Out Ст0

 

Лабораторна робота №5. Паралельна передача даних в режимі 1

Функціональна схема

Рис. 10 Функціональна схема МПСУ

Умова

1.Побудувати функціональну схему системи передачі – прийому 100байт інформації. З апаратним їх підрахунком. Вивід і ввід виконати через буфер ОЗУ.

2.Записати алгоритм управління з урахуванням схемотехніки МПСУ (алгоритм орієнтований на асемблерну реалізацію). Порти I8255 – РУС 1Fh, I8253 – РУС 1Bh

3.Записати програму управління на асемблері.

4.Реалізувати систему на екрані комп’ютера за допомогою мови програмування Delphi. Високий та низький рівні функціонування системи передачі – прийому інформації показати за допомогою переключення кольорів на лініях об’єкту.

Алгоритм функціонування системи

1. Ініціалізація I8255: УС1 - в порт 1Fh. Ст. тетрада КС – на ввід, КА - на вивід, режим 1. КВ – на вивід, режим 1.

2. Ініціалізація I8253.

3. Запис константа в Ст0.

4. Очікування сигналу "Готовність" : PC(5) = 1.

5.Видача байта на канал РА.

6.Очікування сигналу підтвердження : АСКА (РС(6) = 1).

7.Перевірка, якщо кількість переданих байт дорівнює 100,

то перехід до пункту8, інакше - до пункту 5.

8. Перезапуск Ст

9. Очікування сигналу стробу для каналу РВ : PC(2) = 1.

10. Зчитування байта с каналу РВ.

11. Перевірка, якщо кількість прийнятих байт дорівнює 100,

то перехід к пункту 12, інакше - к пункту 9.

12. Перевірка, чи не вимкнена система : якщо ні PC(5) = 1 , - очікування, інакше - до пункту 9.

13.Кінець.

Програма управління на асемблері

SI - адреса байта, що передається

DI - адреса пам’яті, куди вміщується отриманий байт

start : ;ініціалізація І8255

MOV AL , 10101110 ;АЕН

OUT 1Fh , AL

a1 : ;ініціалізація І8253

MOV al, 00010000 ;10H

OUT 1BH, al

;запис конст 100 (64Н)

MOV al, 64H

OUT 18H, al

;очікування «Готов»

M1: IN al, 1EH

TEST al, 20H

JZ m1

;видача байта DA

MOV EX, 64H

m3: MOV AL, [SI]

INC SI

OUT 1CH, AL

;очікування сигналу АСКА (РС(6)=1)

M2: IN AL, 1EH

TEST AL, 40H

JZ m2

;перевірка Out0 (PC(4)=0)

IN AL, 1EH

TEST AL, 10H

JZ m3

;перезапуск СТ0

MOV AL, 10H

OUT 1BH, AL

MOV EX, 64H

;очікування STBB (PC(2)=1)

M4: IN AL, 1EH

TEST AL, 04H

JZ m4

;зчитування байта з PB

IN AL, 1DH

MOV AL, [DI]

INC DI

;перевірка Out0

IN AL, 1EH

TEST AL, 10H

JZ m4

;перевірка чи не вимкнена система

M5: IN AL, 1EH

TEST AL, 20H

JNZ m5

END

Питання до лабораторної роботи №5

  1. Архітектура системи. Особливості схемотехніки
  2. Внутрішній та зовнішній інтерфейси
  3. Відображення прийнятих та переданих даних
  4. Програмування МС І8255. Керуюче слово
  5. Програмування МС І8253. Керуюче слово
  6. Запис константи в лічильник
  7. Особливості формування апаратно програмних методів сигналу Gate Ст0
  8. Синхронізація процедур виведення – введення інформації
  9. Ідентифікація сигналів управління STB, ACK
  10. Динаміка лінії Out Ст0

 

Лабораторна робота №6. Паралельна передача даних в режимі 0

Функціональна схема

Рис. 11 Схема електричноа функціональна МПСУ

Умова

1. Побудувати МПСУ, паралельної передачі 100 байт даних (введення-виведення) по класичній схемі сигналів управління з апаратним підрахунком переданих даних.

2. Записати алгоритм управління з урахуванням схемотехніки МПСУ (алгоритм орієнтований на асемблерну реалізацію).

3. Записати програму управління на асемблері.

4. Реалізувати модель систему на екрані комп’ютера за допомогою мови програмування високого рівня або інших. Високий та низький рівні функціонування каналів системи. Показати за допомогою переключення кольорів на лініях моделі.

Опис об’єкта

Сигнал ГП-П відповідає за запуск системи (кнопка «Пуск» натиснута)

Сигнал ГП-І відповідає виключенню системи.

Алгоритм функціонування системи

1.Ініціалізація І8255-1.

2.Ініціалізація І8255-2.

3.Ініціалізація І8253 Сч0.

4.Запис константи в лічильник 0 (64h).

5.Очікування сигналу ГП-П.=1

6.Формування сигналу ГІ-П = 1.

7. Очікування сигналу ЗП-П.=1

8.Видача байта на канал РА(І8255-1).

9.Формування сигналу СТР-П =1.

10.Чекання скидання сигналу ЗП-П=0

11.Скидання сигналу СТР-П=0

12.Перевірка виходу Out Сч0, якщо Out Сч0 = 0, то перехід до пункту 7, інакше до п.13.

13.Перезапуск Сч0.

14.Скидання сигналу ГИ-П.

15.Чекання сигналу ГІ-І=1

16.Формування сигналу ГП- І = 1.

17.Формування сигналу ЗП- І = 1.

18.Чекання сигналу СТР- І =1

19.Зчитування байта з каналу РВ (18255-2).

20.Скидання сигналу ЗП- І =0

21.Чекання скидання сигналу СТР- І =0

22.Перевірка виходу Out Сч0, якщо Out Сч0 = 0, то перехід до пункту 17, інакше – п.23.

23 Перевірка чи не виключена система, якщо ні – то чекання, інакше – перехід до п. 24.

24. Кінець.

 

Програма управління на асемблері

Базові адреси:

МС I18255-1 РУС-1FH

МС I18255-2 РУС-1ВН

МС I18253 - РУС-17Н

DI - указатель адреса пам'яті, куди міститься отриманий байт start: MOV OUT   AL , 81h ;Ініціалізація І8255-1. lFh, AL … MOV AL, 09h;Формування сигналу ГІ-П = 1

OUT lFh, AL

a2:

IN AL , lEh;Очікування сигналу ЗП-П=1

TEST AL, 08h

JZ a2

MOV AL, [SI];Видача байта на канал РА(І8255-1).

INC SI

OUT lCh,AL

MOV AL , 0Fh;Формування сигналу СТР-П =1.

OUT lFh, AL

Лабораторна робота №7. Мікропроцесорна система управління з об’єктом по послідовному каналу (базовий алгоритм). ПЗО побудований на МС, SPI, РРІ,… Функціональна схема  

Умова

1. Побудувати МПСУ з управлінням об’єктом по послідовному каналу (базовий алгоритм). ПЗО побудований на МС, SPI, РРІ, РТ

2. Записати алгоритм управління з урахуванням схемотехніки МПСУ (алгоритм орієнтований на асемблерну реалізацію). Порти МС I8255РУС 1Fh,МСI8253 – РУС 1Bh, МС 8251 – ЗУС 11Н.

3. Записати програму управління на асемблері.

4. Реалізувати модель системи на екрані комп’ютера за допомогою мови програмування високого рівня або інших. Високий та низький рівні функціонування системи. Показати за допомогою переключення кольорів на лініях моделі.

Опис об'єкта

Включений стан об'єкту (лінія «Управління») моделюється передаванням байта FFh (8 інформаційних одиниць), а виключений стан - передаванням байта 00h (8 інформаційних нулів). Витримка реалізовується апаратно на МС І8253 за допомогою константи 10 (0Ah), яка записується в лічильник СТ0. Кнопка «Пуск» формує сигнал «Готовність», а кнопка «Стоп» - збрасує сигнал «Готовність».

Алгоритм функціонування системи

1 .Ініціалізація РРІ (молодша тетрада регістра С на вивід, старша - на ввідь, режим 0).

2.Ініціалізація РТ (лічильник 0, використання молодшого байта, режим 0, двійковий код).

3.Запис константи 10h в лічильник.

4.Програмне скидання SPI.

5.Встановлення режиму SPI.

6.Запис команди «передача дозволена», програмне скидання тригерів помилок, формування сигналу DTR.

Формування (низький рівень) DTR.

7.Формування сигналу Gate Ст.0.

8.Очікування готовності об'єкта.

9.Вивід коду 0FFh, включики лінію «Управління».

10. Перевірка сигналу Оut Ст0. Якщо Оut Ст0 = 0 то перехід до п.9, інакше до п.11.

11. Перезапуск лічильника 0.

12. Вивід коду 00h, виключити лінію «Управління».

13. Перевірка сигналу Оut Ст0. Якщо Оut Ст0= 0 то перехід до п.12, інакше до п.14.

14. Перезапуск лічильника 0.

15. Перевірка, чи не виключена система. Якщо сигнал «Готовність» є, то перехід до п.9, інакше п.16.

16. Кінець.

Програма управління на ассемблері:

Mov al,88H ; ініціалізація РРІ

Out lFH,al

Mov al,30H ; ініціалізація РТ Ст0

Out lBH,al

Mov al, 0AН ;запис константи в Ст0

Out 18H,al

Mov al,40h ;програмне скидання SPI

Out 11H, al

Mov al, 01001101B ;4DH Встановлення режиму

Out 11H, al

Mov al, 00010011B ;13H Запис команди

Out 11H, al

Mov al,01H ; формування сигналу Gate Ст0

Out lFH,al

Ml:

in аl,11Н ;очікування сигнала «Готовність»

Test al,80H

Jz ml

M2:

Mov al, FFH ; вивід байта FFH в порт передатчика SPI

Out 10H, al

In al,1EH ;перевірка сигналу Out Сч0

Test al, 10H

Jz M2

Mov al,10H ;перезапуск лічильника 0

Out 1BН,аl

М3:

Mov al, 00H ;вивід байта 00H в порт передатчика SPI

Out 10H, al

In al, 1EH ;перевірка сигналу Out Сч0

Test al, 10H

Jz M3

Mov al, 10H ;перезапуск лічильника 0

Out 1BH, al

In al, 11H ;перевірка сигналу «Готовність»

Test al, 80H

Jnz M2

End

Питання до лабораторної роботи №7

  1. Архітектура системи. Особливості схемотехніки
  2. Базовий алгоритм управління
  3. Імітаційний метод управління
  4. Імітація витримки вкл./викл. стану лінії “Управління”
  5. Програмування МС І8251. Послідовність процедур
  6. Режими роботи SPI. Асинхронний, синхронний режими
  7. Особливості адресації портів управління, стану, передавача, приймача
  8. Управляюче слово ініціалізації МС І8251
  9. Динаміка ліній TxRDY і Out Ст0
  10. Алгоритм використання МС І8255 для послідовної передачі байтів в асинхронному режимі

 

Лабораторна робота №8. Мікропроцесорна система управління з складною логікою об’єкта

Функціональна схема

Рис. 13 Схема електричної функціональної МПСУ

 

Умова

Побудувати схему електричну функціональну МПСУ

Записати алгоритм управління з врахуванням схемотехніки МПСУ

Написати програму управління на асемблері. Порти: РУС I8255 – 1FH іI8253 – 1BH

Змоделювати функціонування системи на моніторі комп'ютера

Відобразити алгоритм функціонування

Опис об'єкта

Сигнал готовності формують датчики об'єкта: Д1 самостійно запускає систему (датчик являється ведучим), при відсутності сигналу Д1 систему запускають сумісно датчики Д2, Д3

Час очікування сигналу готовності задається Ст.1 I8253 (константа 0АН). По закінченню вказаного часу система вимикається (перехід на кінець).

Управління лінією Control виконується по мажоритарному принципу інформаційними сигналами ІД1, ІД2, ІД3 (2 з 3 вмикають лінію управління).

Час очікування ІД1, ІД2, ІД3 задається Ст.2 I8253 (константа 0АН). По закінченню вказаного часу система вимикається (перехід на кінець).

Витримка вмк./вимкн. стану лінії Control задається Ст.0 I8253 (константа 64Н)

Алгоритм функціонування системи

1. Ініціалізація I8255. режим 0.

2. Ініціалізація I8253. Установка режиму Ст 0.

3. Запис константи в Сч0 – 64h

4. Ініціалізація I8253. Установка режиму Ст 1.

5. Запис константи в Ст1 – 0Аh

6. Ініціалізація I8253. Установка режиму Ст 2.

7. Запис константи в Сч2 – 0Аh

8. Формування Gate0

9. Перевірка наявності сигналу готовності D1(якщо так – п. 14.1, інакше – п.10)

10. Перевірка наявності сигналу готовності D2 и D3 (якщо так – п. 14, інакше – п.11)

11. Декремент Ст1.

12. Перевірка Out1 Якщо Out1=0, то перехід до п.9, інакше п.13

13. Перехід на кінець (п.25)

14. Виділення Коду ІД1, ІД2, ІД3

14.1 . Порівняння з кодом 03Н (якщо так – п.18, інакше – п.14.2)

14.2. Порівняння з кодом 05Н (якщо так – п.18, інакше – п.14.3)

14.3 . Порівняння з кодом 06Н (якщо так – п.18, інакше – п.14.4)

14.4. Порівняння з кодом 07Н (якщо так – п.18, інакше – п.15.)

15. Декремент Ст.2

16. Перевірка Out2 (Out2 = 0 – п.14.1, інакше – п.17)

17. Перехід на кінець (п.25)

18. Включення лінії «Control»

19. Перезапуск Ст.0.

20. Очікування Out0 = 1

21. Виключення лінії «Control»

22. Перезапуск Ст.0

23. Очікування Out0 = 1

24. Перехід на п. 9

25. Кінець

Програма управління на асемблері

; установка режиму роботи МСI8255 (установка УС-I)

begin:

Mov al, 9АН ;10011010B

Out 1Fh, al

; установка режиму роботи МС I8253 Ст0

Mov al, 10Н

Out 1Bh, al

; запис константи в Ст0

Mov al, 64Н

Out 18h, al

; установка режиму роботи МС I8253 Ст1

Mov al, 50Н ;01010000B

Out 1Bh, al

; запис константи в Ст1

Mov al, 0AН

Out 19h, al

; Установка режиму роботи МС І8253 Ст2

Mov al, 90Н ;10010000B

Out 1Bh, al

; Запис константи в Сч2 – 0Аh

Mov al, 0AН

Out 1Аh, al

; Формування Gate0

Mov al, 03Н

Out 1Fh, al

; Перевірка наявності сигналу готовності D1 (якщо так – п. 14.1, інакше – п.10)

m1:

In al,1DH

Test al, 01H

Jnz m2

; Перевірка наявності сигналу готовності D2 и D3 (якщо так – п. 14.1, інакше – п.11)

In al, 1DH

Test al , 06H

Jnz m2

; Декремент Ст1.

Mov al, 05H 00000101B

Out 1FH, al

; Перевірка Out1 (Якщо Out1=0, то перехід п.9, інакше п.13)

In al,1EH

Test al 20H

Jz m1

; Перехід на кінець

Jmp exit

; Виділення Коду ІД1, ІД2,ІД3

; Порівняння з кодом 03Н (якщо так – п.18, інакше – п.14.2)

m2:

In al,1CH

Test al,03H

Jnz m3

; Порівняння з кодом 05Н (якщо так – п.18, інакше – п.14.3)

In al, 1ch

Test al,05H

Jnz m3

; Порівняння з кодом 06Н (якщо так – п.18, інакше – п.14.4)

In al, 1ch

Test al,06H

Jnz m3

; Порівняння з кодом 07Н (якщо так – п.18, інакше – п.15)

In al, 1ch

Test al,07H

Jnz m3

; Декремент Ст.2.

Mov al, 07H

Out 1FH, al

; Перевірка Out2 (Out2 = 0 – перехід до п.14.1, іначе 17)

In al,1EH

Test al,40H

Jz m2

; Перехід на кінець.

Jmp exit

; Включення лінії «Control»

Mov al, 01H

Out 1FH, al

; Перезапуск Ст.0.

Mov al ,10H

Out 1BH, al

; Очікування Out0 = 1

m4:

In al ,1EH

Test al, 10H

Jz m4

; Виключення лінії «Control»

Mov al, 00H

Out 1FH, al

; Перезапуск Ст.0.

Mov al ,10H

Out 1BH, al

; Очікування Out0 = 1

m5:

In al ,1EH

Test al, 10H

Jz m5

; Перехід на п. 9

Jmp begin

exit:   Питання до лабораторної роботи №8 Архітектура системи. Особливості схемотехніки Мажоритарний принцип контролю…

Завдання

Розробити програму , яка моделює з/д вокзал.

План

Коли приходить поїзд виводиться інформація про його маршрут, кількість пасажирів,кількість вагонів, тривалість маршруту. Вокзал має дві колії (в два напрямки) тому одночасно завантажуватися можуть лише два потяги , інші чекають своєї черги на додаткових тупикових коліях(по 3 штуки на кожну колію). Семафори(10 штуки): два - на в’їзді до вокзалу , два - на виїзді, шість – на додаткових коліях. В програмі існує 4 потяги , які курсують різними маршрутами і зупиняються на вокзалі , семафори повинні просигналізувати їм, коли треба зупинитися , поїхати або стати на додаткову колію. Також у потягів існують пріоритети , які можуть змінюватися. Залежно від них потяги допускають на вокзал. На пріоритет певним чином впливають: середня швидкість потяга, кількість пасажирів, кількість вантажу, пріоритет маршруту, час потрібний на завантаження, надійність.

Кружечки - семафори

Рис.4.3 Схема розташування колій

Сигнал прибулих потягів формується так:

PC(7)- 1-якщо ліва колія

PC(4)- 1-якщо права колія

Рис. 4.4 Схема електрична функціональна

Опис функціонування

Програма імітує роботу з/д вокзалу. Програма використовує бібліотеку тривимірної графіки OpenGL для графічної реалізації алгоритму. Тому координати об’єктів мають вигляд дробових чисел. Для анімації використовується таймер form5.timer1 , який приймає значення від 1 до 551 мілісекунд , відповідно прискорюючись чи сповільнюючись, шаг таймера 50 мілісекунд. В прграмі рухаються 4 потяги. Кожен потяг може мати від 1-го до 10-ти вагонів.

Структура потяга:

tr=record //поїзд

coun:byte; // кількість вагонів

vagon:array [1..10] of va; // масив вагонів

name:string; // ім’я

num:byte; // номер

cond:byte; // стан

prio:integer; // пріоритет

timez:integer; // час на завантаження

track:byte; // доп. Трек який відповідає потягу

trk:boolean; // лівий/правий напрямок руху

speed:byte; // швидкість (середня)

pas:integer; // кількість пасажирів

timemar:string; // час маршруту (середній)

goods:integer; // кількість товарів

mail:integer; // кількість пошти

end;

Структура вагона:

va=record // вагон

nametxt:string; // ім’я вагона

num:byte; // номер

xa,xb,xc,xd:real; // коорд

ya,yb,yc,yd:real; // коорд

typev:byte; // тип вагона

vert:boolean; // вертикальний

end;

Існують такі типи вагонів:

1-локомотив

2-поштовий

3-пасажирський

4-товарний (вантажний)

Відповідно до типу вагон приймає колір:

Пасажирський – зелений

Поштовий – фіолетовий

Товарний - сірий

Локомотив - червоний

Також вагон має пріоритет чим він більший тим швидше потяг допустять на вокзал:

Локомотив-0

Пасажирський-2

Поштовий-3

Товарний-1

На кожній лінії розташовані по три доп. Треки , на яких чекають потяги.

Структура треку:

track=record // доп. трек

xa,xb:real; // коорд

ya,yb:real; // коорд

ok:byte; // наявність поїзда

end;

Якщо потяга на доп. Треку немає тоді змінна ok має значення 0, інакше від 1 до 4.

Рис. 4.5 Інтерфейс програми

На малюнку семафори відмічені цифрами.

Семафори присутні на кожній лінії ( по 5 штук) загалом їх 10.

Структура семафора:

sem=record // семафор

x:real; // коорд

y:real; // коорд

l:boolean; // вкл/викл

end;

Якщо l=true тоді семафор зелений , інакше червоний.

 

Рухаються потяги завдяки системі станів , стан потяга знаходиться у полі cond .

Відповідно до стану змінюються координати вагонів, потяг стоїть чи рухається.

Для кожної лінії існують свої номери станів: для верхньої(лівої) та нижньої(правої).

Стани змінюються послідовно, виконавши певні умови потяг приймає наступний з можливих станів. Таким чином , змінюючи стани, потяг рухається зліво-направо для верхньої(лівої) колії , чи зправа-наліво для нижньої(правої) колії.

Рух потяга можно зобразити послідовною зміною станів:

0->15->3->5->6->9->11->13->1 –для нижньої(правої) колії

1->14->2->4->7->8->10->12->0 –для верхньої(лівої) колії

Опис станів:

0 – лівий досяг кінця

1 – правий досяг кінця

2 – лівий перед семафором 1

3 – правий прерд семафором 6

4 – лівий їде на доп. трек

5 – правий їде на доп. трек

6 – правий стоїть на дор. треку

7 – лівий стоїть на дор. треку

8 – лівий їде на вокзал

9 – правий їде на вокзал

10 – лівий на вокзалі

11 – правий на вокзвлі

12 – лівий їде

13 – правий їде

14 – лівий піїзджає до семафора 1

15 – правий піїзджає до семафора 6

 

Опис системних змінних:

st,rst:real; // краї вокзалу

trackL:array [1..3] of track; // доп. треки

trackR:array [1..3] of track; // доп. треки

texturew,textureh:integer; // параметри текстури 1

texturew2,textureh2:integer;// параметри текстури 2

texture:^tex; // текстура 1

texture2:^tex; // текстура 2

im,im2:tbitmap; // рисунки

sema:array [1..10] of sem; // семафори

olg,org:byte; // поїзд їде на доп. трек

vlg,vrg:byte; // поїзд їде на вокзал

vlt,vrt:byte; // таймер находження поїзда на вокзале

slp,srp:byte; // таймер проїзду поїзда через семафор

vlp,vrp:byte; // таймер від’їзду поїзда з вокзалу

tabp:boolean; // змінна таблиці

vbn:boolean; // змінна кольору фону

Змінні olg(ліва),org(права) приймають значення більше 0 , якщо якийсь потяг їде на свії доп. Трек.Ця змінна існує для того щоб потяги не зіштовхувались. Тобто потяг не поїде на свій доп. Трек поки попередні робить це.

Змінні vlg(ліва),vrg(права) приймають значення більше 0, якщо якийсь потяг їде на вокзал.Ці змінні снують для того щоб потяги не зіштовхувались. Тобто для того ж що і olg,org.

Змінні vlt(ліва),vrt(права) це таймери , вони затримують потяг на вокзалі , вони імітують розвантаження/завантаження. Вони приймають значення поля time потяга. Time заповнюється відповідно до типу вагонів:

Локомотив -0

Пасажирський -2

Поштовий -3

Товарний -5

Потім сума часу всіх вагонів множиться на 4.

Змінні slp(ліва),srp(права) теж таймери. Ці таймери тримають семафори 1(slp) та 6(srp) ввімкненими відповідну кількість часу , вона вираховується за формулою:

Slp(srp):=(d+2*p)*coun;

d- довжина вагону(0,08)

p- щілини між вагонами(0,01)

coun- кількість вагонів

За один такт таймера потяг проходить 0,01 тому помноживши довжину вагона на кількість вагонів отримаємо час необхідний на проходження потяга повз семафор.

Змінні vlp(ліва),vrp(права) –таймери вони затримують ввімкненим семафори 10() та 5().

Їх розмір формується таким чином як і slp,srp.

 

Тепер можна описати алгоритм проходження потяга по верхній(лівій) колії:

14->2->4->7->8->10->12->0

Потяг має стан 14 і рухається до семафору 1.

Досягши семафору 1 Стан потягу стає 2.

Стан 2: перевіряється стан olg ,vlg якщо обидві 0 потяг отримує доп. Трек ,olg стає не 0 і стан потягу стає 4.

Стан 4: потяг рухається на свій доп трек,загорається семафор 1 (slp<>0), досягши його він отримує стан 7.Якщо vlg та olg рівні 0 тоді вибирається потяг з найбільшим пріоритетом , йому присвоюється 8 ,vlg стає не 0 і він рухається на вокзал, інакше чекає черги.

Приїхавши на вокзал розвантажується/завантажується , чекає vlp<>0 , а потім отримує стан 12 і їде.

Досягши певної точки за екраном отримає стан 0.

Доїхавши до кінця нижньої(правої) колії потяг отримує відповідні координати та стан і починає рухатися по верхній(лівій) колії і навпаки.

 

Рис. 4.6 Алгоритм для верхньої (лівої) колії

Рис. 4.7 Алгоритм для нижньої (правої) колії

Список рекомендованої літератури

 

1. С. Т. Хвощ, Н. Н. Варлінский, Е. А Попов – 1987р. Мікропроцесоры і мікроеом в системах автоматичного управління

2. В. Л. Шило - 1989г. Популярні мікросхеми ТТЛ

3. С. В. Якубовський Аналогові та цифрові інтегральні мікросхеми. – 1990р.

4. О. С. Козлов, Е. А. Метлицький, А. В. Екало – 1981р. Архітектура багатопроцесорних обчислювальних систем.

5. В. Д. Байков, В. Б. Смолов Спеціалізовані процесори: интераціонні алгоритми і структури. – М. 1985р.

6. А. І. Березенко, Л. Н. Корогин, А. Р. Назарьян Мікропроцесорні комплекси підвищеної швидкодії. М., -1981г.

7. В.І. Юров Асемблер - 2004 р.

8. Б.В. Тарабрін Інтегральні мікросхеми - 1983р.

9. Д.С. Гурлев Довідник з електронних пристроїв - 1974р.

10. Пей Ан Сполучення ПК із зовнішніми пристроями – 2001р.

 

– Конец работы –

Используемые теги: Периферійні, строї0.048

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Периферійні пристрої

Что будем делать с полученным материалом:

Если этот материал оказался полезным для Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Еще рефераты, курсовые, дипломные работы на эту тему:

До виконання самостійної роботи з дисципліни Елементи і пристрої автоматики та систем управління
МОЛОДІ ТА СПОРТУ УКРАЇНИ... СУМСЬКИЙ ДЕРЖАВНИЙ УНІВЕРСИТЕТ... МЕТОДИЧНІ ВКАЗІВКИ...

До вивчення дисципліни 7.090702 Радіоелектронні пристрої, системи та комплекси
Національний технічний університет України... Київський політехнічний інститут... Англійська мова професійного спрямування...

Конспект лекцій з дисципліни Пристрої надвисокої частоти та антени
Криворізький коледж... національного авіаційного університету... Конспект лекцій з дисципліни Пристрої надвисокої частоти та антени...

КОНСПЕКТ ЛЕКЦІЙ З КУРСУ ЕЛЕКТРОТЕХНОЛОГІЧНІ УСТАНОВКИ ТА ПРИСТРОЇ. ВАКУУМНА ТЕХНІКА
ХАРКІВСЬКА НАЦІОНАЛЬНА АКАДЕМІЯ МІСЬКОГО ГОСПОДАРСТВА... Є В ШЕПІЛКО... КОНСПЕКТ ЛЕКЦІЙ З КУРСУ ЕЛЕКТРОТЕХНОЛОГІЧНІ УСТАНОВКИ...

Функціональні пристрої на ОП
На сайте allrefs.net читайте: "Функціональні пристрої на ОП"

0.025
Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • По категориям
  • По работам