DevioLabавтоматичне керування капіталом
ПРАЦЮЄ 24/7
КРИПТОВАЛЮТИ · АКЦІЇ · 10 БІРЖ

Портфель, який керується автоматично

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

10підключених біржCrypto + Stocksв одному портфелі24/7автоматичний контроль

Програмування портів клавіатури мікропроцесора Intel 8086 (80286)

Оригінальна назва роботи

Програмування портів клавіатури мікро¬процесора Intel 8086 (80286).

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

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Інститут комп’ютерних наук та інформаційних технологій
Факультет:
Комп’ютерні науки
Кафедра:
Системи автоматизованого проектуваня

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

Рік:
2003
Тип роботи:
Лабораторна робота
Предмет:
Комп’ютери і мікропроцесорні системи
Група:
КН
Коротко про документ

Про що ця робота

У звіті розглядається програмування портів клавіатури для мікропроцесора Intel 8086. Наведено теоретичні відомості про роботу контролера клавіатури та переривання BIOS.

У роботі розглядаються

  • Програмування портів
  • Клавіатура IBM PC
  • Мікропроцесор Intel 8086
  • Контролер клавіатури
  • Апаратні переривання
  • Функції BIOS
  • Буфер клавіатури

Зміст і розділи

  1. Мета роботи
  2. Теоретичні відомості
  3. Завдання
  4. Код програми
Для кого:Студенти технічних спеціальностей та викладачі комп'ютерних дисциплін
Викладачі:Герус В. А.

Ключові поняття

портклавіатураскан-кодперериванняASCII-кодBIOS

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

МІНІСТЕРСТВО ОСВІТИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА” Кафедра САПР  Звіт з лабораторної роботи № 10 “Програмування портів клавіатури мікропроцесора Intel 8086 (80286)” Львів 2003 МІНІСТЕРСТВО ОСВІТИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА” Кафедра САПР  Звіт з лабораторної роботи № 10 “Програмування портів клавіатури мікропроцесора Intel 8086 (80286)” Данчук Є.С. Перевірив: Герус В.А. Львів 2003 МЕТА РОБОТИ Вивчити основні шляхи програмування портів клавіатури на ЕОМ з мікропроцесором Intel 8086(80286). ТЕОРЕТИЧНІ ВІДОМОСТІ Одним з найважливіших пристроїв персонального комп'ютера є клавіатура, яка призначена для інтерфейсу між користувачем та комп'ютером. На даний час існує три основні типи клавіатур. Це - клавіатура для комп'ютерів ШМ PC/XT, яка містить 84 клавіші та 101-клавішна клавіатура для IBM PC/AT. Деякі клавіатури містять перемикач режиму роботи (XT/AT). Як контролер виступає процесор Intel 8042, який призначений для обміну між клавіатурою та CPU. Усі горизонтальні лінії матриці підключені через резистор до джерела живлення +5В. Контролер клавіатури містить два порти - вхідний і вихідний. Вхідний порт підключений до горизонтальних ліній матриці (ХО-Х4), а вихідний - до вертикальних (YO-Y4) Принцип роботи даного пристрою полягає в тому, що контролер почергово на вертикальних лініях встановлює значення логічного нуля. Потім він почергово опитує горизонтальні лінії. У випадку, коли натиснутих клавіш не має, рівень напруги на всіх горизонтальних лініях буде відповідати логічній 1 (всі ці лінії підключені до джерела живлення +5V через резистори). У випадку, коли натиснута клавіша - на відповідній горизонтальній лінії буде логічний нуль. На наступному кроці визначається ASCII- код натиснутої клавіші. Для роботи з клавіатурою використовують порти з адресами 60Н та 61Н. Порт 60Н при читанні містить скан-код останньої натисненої клавіші. IN AL, 60Н Для встановлення характеристик автоповтору в порт 60Н необхідно записати код команди, а потім байт, що визначає характеристики режиму. Період автоповтору визначає кількість посилок скан-коду, генерованих процесором клавіатури за одну секунду. Можна використовувати не лише ті значення, які наведені в таблиці, але й проміжні (наприклад, 9 або 16Н). При керуванні світлодіодама використовують команду OEDH. Потім в порт 60Н необхідно записати байт, що має наступний формат: Використання портів при роботі з клавіатурою є дуже громіздкою роботою для програміста, тому зручніше використати вже готові процедури і функції BIOS(Basic Input/Output System – Базова Система Вводу/Виводу), які розміщені в постійному запам'ятовуючому пристрої комп'ютера. Для вводу з клавіатури використовують переривання BIOS INT 16Н та переривання DOS INT 21Н. MOV AH, номер функції int 16h Функція 00h - означає чекати до того часу, поки користувач не натисне клавішу. В результаті, у регістрі AL, отримаємо код ASCII символу, а якщо в AL нуль, то в АН - розширений код ASCII. Функція 0lh - перевіряє готовність символу на ввід та виводить його, якщо він готовий. Контроль організований по значенню прапорця нуля, якщо клавішу натиснули, то ZF=0. В іншому випадку - ZF=1, тобто клавішу не натискали і черга порожня (ця функція не забирає символ з черги, а тільки перевіряє наявність) Функція 02h - читає статус Shift – клавіш. У результаті, в регістрі АL міститься статус клавіатури. Коли користувач натискає на клавішу, то автоматично викликається апаратне переривання BIOS. Далі клавіша розпізнається і її код записується в так звану чергу (буфер клавіатури). Буфер клавіатури - спеціальна ділянка пам'яті відведена під збереження кодів натиснених клавіш. Саме з буфера клавіатури (по черзі) зчитуються ASCII- коди клавіш, коли ми викликаємо функцію BIOS INT 16h (AH=00h). Прочитаний символ з буфера стирається. ЗАВДАННЯ КОД ПРОГРАМИ
Допоможи студентському архіву

Ми допомогли тобі — допоможи наступному студенту

Файл ще не обрано

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

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

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

Admin

26.02.2023 12:38

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