ПРОГРАММИРОВАНИЕ ПОРТА LPT LPT-PORT.NAROD.RU |
|
Работа с LPT под Win 2000, XP: библиотека inpout32.dllКак я уже упоминал в первой статье, наша чудо-программа Port.exe не сможет работать под Windows NT. ОС данного семейства помимо кучи преимуществ перед предудущими стали обладать омерзительным нравом с точки зрения системного программирования. Да Вы и сами могли в этом убедиться, пытаясь все таки запустить Port.exe в XP, который у Вас наверняка и стоит. При этом Вы получали слеедующее услужливое сообщение от Windows: Происходит это из-за того что, разработчики NT с целью обеспечения безопасности использования совместных аппаратных ресурсов компьютера, запретили к ним прямой доступ из программ пользовательского режима (по сути дела из любых программ). Чтобы все-таки обратиться к порту, необходимо все операции проводить через драйвер (довольно хитрая программа, которую начинающему так сходу и не напишешь). Но к счастью, есть уже несколько готовых инструментов позволяющих без проблем общаться LPT портом в NT. Начнем сначала с самого простого, и в тоже время очень мощного средства: библиотеки inpout32.dll. Библиотека inpout32.dll Этот комплекс состоит из 3 файлов:
Скачать эти файлы можно (и нужно) здесь (12 KByte) Библиотека эта супостатская, подробнее о том кто ее писал и как она работает можно почитать вот по этому адресу: http://www.logix4u.net/inpout32.htm Все-таки скажу пару слов о том как она (библиотека) работает: сначала она проверяет что за ОС у Вас стоит. Если это 9x - то проблем нет: при обращении к библиотеке с помощью функций Out32(адрес порта, байт данных) - для записи в порт и Inp32(адрес порта) - для чтения из порта, она конвертирует эти ображения к стандартным и известным нам функциям _outp(адрес порта, байт данных) и _inp(адрес порта). Если же она имеет дело с NT, то обращения к ней она конвертирует в запросы к стандартному драйверу ОС, через который и идет обмен информацией с портом. Ну ладно, хватит теоретической туфты, приступим к практике! 1. Создание проекта программы в VC++ 6. Программу пишем на Си. Компилятор: VisualC++ 6.0 Подробный процесс создания проекта рассмотрен в предыдущей статье, поэтому сейчас расскажу короче. File -> New Выбираете там Win32 Console Application. Указывайте в поле Project name имя проекта, например Port32. Нажимайте Ok. В следюущем окне выбирайте пункт An empery project и жмете Finish. Теперь опять File -> New. Отображается закладка Files Выбирайте там C++ Source File. В поле File name укажите имя Port32 для этого файла. Нажимайте Ok. Все подготовительную работу выполнили, можно собственно писать программу. В левой части окна программы выберите закладку FileView. В папке Source Files выберите наш файл Port32.cpp
2. Код программы Теперь копируюте ниже следующий код в содержмое файла Port32.cpp. |
По всем вопросам просьба обращаться: lpt-port@narod.ru
© 2005 "CONTROLLER SYSTEM". Все права защищены. |
ацп, цап, ацп/цап, микросхемы цап ацп, простая схема цап ацп, простая схема ацп цап, система управления через компьютер, к572пв3, простой ацп, COM, com, сом, СОМ, параллельный порт lpt, последовательный порт com, примеры программ для работы с портом, подключение светодиодов к порту, порт ввод/вывод, двунаправленныая передача, аналого-цифровой переобразователь, простая схема аналого цифровой преобразователь, цифро-аналоговый преобразователь, Схема подключаения к LPT порту, Подключение светодиодов к LPT порту компьютера, Чтение информации с LPT порта, dlportio.dll, inpout32.dll, _out(), _inp(), Out32(), Inp32(), библиотека для работы с портом, Подключение дисплея к компьютеру, дисплей к портуТакже наша организация проводит курсы и семинары по программированию устройств сопряжения и выпоняет коммерческие заказы по разработке и изготовлению устройств сопряжения.