Страница: 1 |
Я начинающий програмист на VB. Я интересуюсь вопросом о контроле елементарных функций устройств через LPT посредством замыкания/размыкания и подачи/неподачи тока в определённые точки -дырки LPT порта. Я прочитал статью в разделе Виндовс и Компютер но она не помогла мне в этом вопросе... Я даже болшынства не понял.. Прошу мне помочь, пожалуйста.....
Я нашёл только 2 файла зип и рар но не в одном небыло ничего кроме самого длля, что мне делать? На чистом Паскале это: Program lpt1_output; На Vb, с использованием DlPortIO: 'декларации внешних функций, в отдельном модуле 'загрузка формы Старайся! Как видишь, ничего сложного. Страница: 1 |
Вопрос: О работе с LPT или другими портами...
Добавлено: 06.08.03 02:31
Автор вопроса: Cibernetik
Ответы
Всего ответов: 8
Номер ответа: 1
Автор ответа:
Nio
Вопросов: 15
Ответов: 115
Web-сайт:
Профиль | | #1
Добавлено: 06.08.03 03:27
Поищи на Яндексе библиотеку DLPORTIO - она идёт с подробным мануалом.
Номер ответа: 2
Автор ответа:
Cibernetik
Вопросов: 1
Ответов: 2
Профиль | | #2
Добавлено: 06.08.03 03:48
Большое спасибо сейчас попробую...
Номер ответа: 3
Автор ответа:
Cibernetik
Вопросов: 1
Ответов: 2
Профиль | | #3
Добавлено: 06.08.03 04:21
Номер ответа: 4
Автор ответа:
Nio
Вопросов: 15
Ответов: 115
Web-сайт:
Профиль | | #4
Добавлено: 06.08.03 10:22
Uses Dos;
Var
addr:word;
data:byte;
e:integer;
Begin
addr:=MemW[$0040:$0008];
Val(ParamStr(1),data,e);
Port[addr]:=data;
End.
Public Declare Function DlPortReadPortUchar Lib "dlportio.dll" (ByVal Port As Long) As Byte
Public Declare Sub DlPortWritePortUchar Lib "dlportio.dll" (ByVal Port As Long, ByVal Value As Byte)
Private Sub Form_Load()
'инициализация
edtAddr = "80"
edtValue = 0
'проверка наличия DLL
If Not DLLExist Then
msg = "Библиотека DLPORTIO.DLL не найдена!" & vbCrLf & _
"Положите библиотеку в каталог %WINDIR%\SYSTEM. Регистрировать ее не требуется."
MsgBox msg, vbCritical Or vbOKOnly, App.Title
End
End If
'показываем форму
Me.Show: DoEvents
End Sub
'чтение байта
Private Sub butRead_Click()
edtValue = Hex$(DlPortReadPortUchar(Val("&H" & edtAddr)))
End Sub
'запись байта
Private Sub butWrite_Click()
DlPortWritePortUchar Val("&H" & edtAddr), Val("&H" & edtValue)
End Sub
'проверка наличия DLPORTIO.DLL
Private Function DLLExist() As Boolean
On Error Resume Next
Dim flg As Boolean
flg = True
'читаем из порта
ret = DlPortReadPortUchar(&H80)
'обработка ошибок
If Err.Number Then
Err.Clear
flg = False
End If
DLLExist = flg
End Function
Адрес LPT порта - $H378
Номер ответа: 5
Автор ответа:
Гагик
Вопросов: 21
Ответов: 12
Web-сайт:
Профиль | | #5
Добавлено: 07.08.03 04:51
Для работы с LPT портом есть прикрассная библиотека, помоему vbio32.dll. Если вопрос еще актуален, напиши, отправлю библиотеку и функции.
Номер ответа: 6
Автор ответа:
Гагик
Вопросов: 21
Ответов: 12
Web-сайт:
Профиль | | #6
Добавлено: 07.08.03 04:51
Для работы с LPT портом есть прикрассная библиотека, помоему vbio32.dll. Если вопрос еще актуален, напиши, отправлю библиотеку и функции.
Номер ответа: 7
Автор ответа:
yakovgk
Вопросов: 0
Ответов: 1
Профиль | | #7
Добавлено: 24.07.04 11:54
Вы написали, что для работы с LPT портом есть прикрассная библиотека, помоему vbio32.dll. Если вопрос еще актуален, напиши, отправлю библиотеку и функции.
Вышлите на yakovgk@yandex.ru
Номер ответа: 8
Автор ответа:
De.MON
Вопросов: 8
Ответов: 9
Профиль | | #8
Добавлено: 25.07.04 02:27
Inpout32.dll по-моему тоже неплохо. Ничего лишнего, конечно, но до сих пор мне хватало.