Реферат: Використання інтерфейсу Centronics для керування зовнішніми пристроями

OPEN_ALWAYS

Открывает объект (файл), если он существует. Если объект (файл) не существует, функция создает его, как будто dwCreationDistribution были CREATE_NEW.

TRUNCATE_EXISTING

Открывает объект (файл). После этого объект (файл) будет усечен до нулевого размера.Выдает ошибку если указанный объект (файл) не существует

DwFlagsAndAttributes

Атрибуты объекта (файла), атрибуты могут комбинироваться

· FILE_ATTRIBUTE_ARCHIVE

· FILE_ATTRIBUTE_COMPRESSED

· FILE_ATTRIBUTE_HIDDEN

· FILE_ATTRIBUTE_NORMAL

· FILE_ATTRIBUTE_OFFLINE

· FILE_ATTRIBUTE_READONLY

· FILE_ATTRIBUTE_SYSTEM

· FILE_ATTRIBUTE_TEMPORARY

HTemplateFile

Определяет дескриптор с GENERIC_READ доступом к временному объекту(файлу). Временный объект(файл)поставляет атрибуты файла и расширенные атрибуты для создаваемого объекта (файла) ИСПОЛЬЗУЕТСЯ ТОЛЬКО В WINDOWS NT Windows 95: Это значение должно быть установлено в Nil.

LPTPort := 'LPT1'; hCommFile := CreateFile(Pchar(LPTPort), GENERIC_WRITE, 0, nil, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);

6. Використання бібліотеки IO . DLL для доступу до портів у Windows 95/98/NT /2000/ XP

При використанні DOSі Windows 95/98 доступ до портів вводу/виводу (I/Oports) комп’ютера був відносно простим. Проте у WindowsNT /2000/ XP (захищена операційна система) доступ до портів вв/вив значно ускладнився за рахунок віртуалізації апаратного забезпечення (virtualizehardware). Віртуалізація означає, що програма вже не може звертатися безпосередньо до фізичного пристрою, а звертається тільки до драйвера, який емулює (emulates) роботу фізичного пристрою (відеоадаптеру, клавіатури, звукової карти чи принтера). Програмна емуляція фізичних пристроїв (хороший стиль для станд. задач) з одного боку підвищує надійність і захищеність роботи операційної системи (помилкові команди перехоплюються), а з іншого обмежую можливості керування нестандартними зовнішніми пристроями через порти вв/вив.

Тому команди вводу/вив в порт (INandOUT) у WindowsNT/2000/XP не працюють, а операційна система працює із зовнішніми пристроями як з файлами (команди запису/зчитування з файлу). Крім ускладнення програмування використання драйвера як посередника значно змекншує швидкодію операцій вв/вив.

Тому для роботи з портами розроблена динамічно під’єднувана бібліотека IO.DLL, що дозволяє зручно виконувати команди вв/вив даних у порти для 95/98 andNT/2000/XP.

/ LicensingIO.DLL is completely free! /

Download

io.zip 46k (Contains all the files) io.dll 46k

The following two files are for C++ users. There is more info on these in the prototypes section.

io.cpp 1k io.h 1k

C/C++ Prototypes

void WINAPI PortOut(short int Port, char Data);void WINAPI PortWordOut(short int Port, short int Data);void WINAPI PortDWordOut(short int Port, int Data);char WINAPI PortIn(short int Port);short int WINAPI PortWordIn(short int Port);int WINAPI PortDWordIn(short int Port);void WINAPI SetPortBit(short int Port, char Bit);void WINAPI ClrPortBit(short int Port, char Bit);void WINAPI NotPortBit(short int Port, char Bit);short int WINAPI GetPortBit(short int Port, char Bit);short int WINAPI RightPortShift(short int Port, short int Val);short int WINAPI LeftPortShift(short int Port, short int Val);short int WINAPI IsDriverInstalled();procedure PortOut(Port : Word; Data : Byte); stdcall; external 'io.dll';stdcall ? ????????, ?? ???????? ????? ???????? ?????????? ????????? (????? ????). ?? ???????????? ????????? ??????????? ????? ??????? (Left-to-right), ? ??? ????????? ? ?????? ?????? (Right-to-left). ??? ??????? ????????? ???????? ???????????????? stdcall (calls to external code)

Опис функцій / FunctionDescriptions

Please refer to the prototype for the particular language you are using.

PortOut

Вивід байта у спеціальний порт / Outputs a byte to the specified port.

PortWordOut

Вивід слова (16 біт) у порт / Outputs a word (16-bits) to the specified port.

PortDWordOut

Вивід подвійного слова у порт / Outputs a double word (32-bits) to the specified port.

К-во Просмотров: 276
Бесплатно скачать Реферат: Використання інтерфейсу Centronics для керування зовнішніми пристроями