Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Работа порта без использования механизма прерываний




Регистр статуса линии (порта)

Dec dx

Mov al, 0

Mov al, 0

Dec dx

Mov al, 10000000b

out dx, al; 7-й бит регистра установим в состояние 1

dec dx;получили адрес регистра делителя скорости (старший)

out dx, al;записываем 0 в делитель скорости

dec dx; вычисляем адрес порта делителя скорости (младший байт)

mov al, 60h; загружаем в регистр

out dx, al;60h (скорость 1200 бит/с)

; установка регистра управления

or al, 10b; 7 бит

or al, 100b; 2 стоп-бита

or al, 1000b; бит контроля

or al, 10000b; четность

add dx, 3;вычисляем адрес регистра управления

out dx, al; загрузка параметров в регистр управления

; запрет прерываний

dec dx;вычисляем адрес регистра разрешения прерываний

mov al, 0; в al загружаем 0

out dx, al; установка запрета прерываний

Выполняет следующие функции:

· фиксирует аварийные ситуации в порту,

· момент прихода байта из линии связи,

· момент готовности передавать очередной байт

 

 
 

 


Бит 0 – байт данных получен; порт готов к приему

Бит 1 – предыдущий символ не был вовремя считан (переполнение)

Бит 2 – ошибка четности

Бит 3 – передача не синхронизирована (ошибка по стоп-биту)

Бит 4 – обрыв канала, получена длинная последовательность единиц

Бит 5 – регистр хранения передатчика пуст; порт готов к передаче

Бит 6 – регистр сдвига передатчика пуст (конец передачи)

Бит 7 – фиксация тайм-аута, устройство не связано с машиной

Биты 4, 3, 2, 1 несут функцию фиксации аварийной ситуации

 

 

Получение данных

Программа обязана постоянно следить и проверять регистр статуса порта (линии). Проверяется при этом нулевой бит.

Если он равен «1», программа должна немедленно читать байт из регистра приема (иначе он будет затерт следующей принимаемой информацией). Если бит равен «0», то байт не принят портом, и процессор должен выполнять следующую команду программы.




Поделиться с друзьями:


Дата добавления: 2013-12-12; Просмотров: 252; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.008 сек.