Реферат: Використання інтерфейсу Centronics для керування зовнішніми пристроями
Після світло діода сигнал з напругою (0, +5В ) і струмом 10мА можна подати на підсилювач напруги та струму і далі на виконавчий пристрій. Для безпосереднього керування виконавчими пристроями використовують тиристори, оптопари, реле.
Рис.9.2. Під’єднання до комп’ютера зовнішнього пристрою через Centronics
Для збільшення розрядності вхідних даних використовують мультиплекс ори (вхід – 16 біт, вихід – 4 ), а для збільшення розрядності вихідних даних – демультиплексори (вхід – 4 біт, вихід – 16 біт). Для побудови мультиплексорів використовують буфери з трьома станами (0В, 5В, відключено), наприклад К155ЛП8.
Для формування команд – дешифратори (напр.. К155ИД3 : на вхід біти D0-D3, на виході команди K0-K15).
Рис. 2. Разъем интерфейсного адаптера Cetronics DB-25S
5. Програмування паралельного порта під Windows NT/2000/XP
Windows працює з портами як з файлами і вимагає точного дотримання протоколу обміну даними. Наприклад при передачі навіть одного біту на паралельний порт система вимагає також відпрацювання сигналів Strobe і Ask (відповідь – підтвердження).
Спочатку порт потрібно відкрити як файл функцією CreateFile, що надається Win32 API i прототип якої:
HANDLE CreateFile(
LPCTSTR lpFileName,
DWORD dwDesiredAccess,
DWORD dwSharedMode,
LPSECURITY_ATTRIBUTES lpSecurityAttributes,
DWORD dwCreationDistribution,
DWORD dwFlagAndAttributes,
HANDLE hTemplateFile ); де:
lpFileName - назва порта: COM1, COM2, ..., LPT1, LPT2, ..
вказівник на рядок з нульовим символом у кінці (PCHAR) , яка визначає назву об’єкту, що створюється (файл, канал, почтовый слот, ресурс связи (в данном случае порты), дисковое устройство, приставка, или каталог)
dwDesiredAccess - тип доступу до файлу: GENETIC_READ - файл для зчитування, GENETIC_WRITE - файл для запису, GENETIC_READ | GENETIC_WRITE - файл для зчитування / запису.
dwSharedMode - параметр спільного доступу до файлу (=0 – монопольний режим)
lpSecurityAttributes - атрибут захисту файлу (=Null)
dwCreationDistribution
Определяет поведение функции если объект уже существует и как он будет открыт в этом случае Принимает одно из следующих значений :
CREATE_NEW
Создает новый объект (файл) Выдает ошибку если указанный объект (файл) уже существует.
CREATE_ALWAYS
Создает новый объект (файл) Функция перезаписывает существующий объект (файл)
OPEN_EXISTING