Раздел: Документация
0 ... 34 35 36 37 38 39 40 ... 105 («Управляющее слово = b6h = 10110110b: 10= выбор счетчика 2; 11= сначала чтение/запись младшего байта, 011 = режим 3; 0 = шестнадцатибитовый двоичный счет.*) затем старшего; port($43 port($42 port($43 port($61 port($43 =$Ь6;(«Запись в управляющий регистр 8253.*) =255;(«Загрузка младшего байта.*) =255;(*3агрузка старшего байта.*) =port($61)or 1; («Выключение внутреннего динамика.*) =$80;(*80h - команда фиксации для счетчика 3.*) end; Function read 8253:integer; («Считывание младшего и старшего байтов счетчика.*) var low byte,high byte:byte; begin low byte:=port($42); high byte:=port($43); read 8253:=low byte+256*high byte; end; var i: integer; begin init 8253; for i:=1 to 10 do i:=i; i:=0; dummy:=bit weight(x); port($201):=0; time1:=read 8253; repeat i:=i+1 until (port($201) and dummy=0) or (i>=5000); time2:=readJ253; interval game port:=time2-time1; if i>=10000 then interval game port;=0; end; exports
begin end. 4. РАСШИРЕНИЕ ВОЗМОЖНОСТЕЙ ПАРАЛЛЕЛЬНОГО, ПОСЛЕДОВАТЕЛЬНОГО И ИГРОВОГО ПОРТОВ Для многих приложений недостаточно того количества линий ввода/вывода, которое обеспечивают стандартные порты, и требуется увеличение их числа. 4.1. Расширение возможностей параллельного порта Одним из самых простых и экономичных способов увеличения количества линий ввода/вывода является использование цифровых микросхем ТТЛ и КМОП серий 74LS и 4000 с малой степенью интеграции. Если же вы хотите изменять конфигурацию устройств, потребуются специализированные программируемые микросхемы повышенной степени интеграции - 8255, 8155 и др. Например, микросхема 8255 позволяет формировать 24-канальный ввод/вывод, который разделен на три группы: А, В и С. Каждая группа имеет восемь линий ввода/вывода и может быть настроена как на ввод, так и на вывод. 4.1.1. Увеличение количества линий ввода/вывода при помощи микросхем с малой степенью интеграции В разделе приводятся принципиальные схемы для ввода/вывода данных с использованием цифровых микросхем с малой степенью интеграции, а также программы управления к ним. Чтение восьмибитовых данных На рис. 4.1 изображены микросхема 74LS241 и принципиальная схема, позволяющая считывать восьмибитовые данные через параллельный порт компьютера. Когда на контакт 1 подается низкий уровень, открываются четыре левых буфера, а когда на контакт 19 поступает высокий уровень - четыре правых. Если контакты 1 и 19 соединены, то, последовательно подавая на них высокий и низкий уровни, можно считать четыре бита в буферы слева, затем четыре бита в буферы справа и наоборот, то есть восемь бит считываются при помощи только четырех линий. Соединенные таким образом контакты 1 и 19 образуют линию выборки данных (DSL), которая управляется одним из битов регистра данных. На рис. 4.1 также показано соединение микросхемы с экспериментальной платой параллельного порта. Контакты Dl, SI - S4 находятся на плате. Восьмибитовые входные данные считываются в компьютер за два последовательных обращения к порту. Когда на линии DSL низкий уровень, считываются биты 0-3, а когда высокий - биты 4-7. Чтобы получить исходный байт (биты 0-7), необходимо Линия быборо донных
Контакты но экспериментальной плате параллельного порта Рис. 4.1. Схема для чтения байта данных через четырехбитовый цифровой вход при помощи микросхемы 74LS241 0 ... 34 35 36 37 38 39 40 ... 105
|