![]() |
1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!
![]() ![]() |
![]() |
necks |
![]()
Сообщение
#1
|
Новичок ![]() Группа: Пользователи Сообщений: 30 Пол: Мужской Репутация: ![]() ![]() ![]() |
Посколько в Паскале новичок хотел помимо написания обычных программ научиться програмировать устроиства подключенные к портам вывода. В разделе "статьи" прочитал о програмировании мыши, и поэтому еще больше заинтересовался эти вопросом.
Так вот раз подфорум теоритический, то при помощи каких функций можно осуществить обращение к портам. |
Романтик |
![]()
Сообщение
#2
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 159 Пол: Мужской Реальное имя: Anton Репутация: ![]() ![]() ![]() |
точнее можешь???
-------------------- made in USSR.
|
GoodWind |
![]()
Сообщение
#3
|
![]() Автооответчик ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 1 188 Пол: Мужской Реальное имя: Александр Репутация: ![]() ![]() ![]() |
James_Bond, вроде вполне точно сформулирован вопрос: Как в паскале работать с com, lpt и usb?
-------------------- Неадекватная чушь может быть адекватным ответом на неадекватный вопрос. Понятно или разжевать?
|
xds |
![]()
Сообщение
#4
|
![]() N337 ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 737 Пол: Мужской Репутация: ![]() ![]() ![]() |
necks, желательно точно определиться, какой интерфейс (COM, LPT или USB) и в какой среде (DOS или Win32) ты собираешься программировать, т. к. методы программирования значительно отличаются.
-------------------- The idiots are winning.
|
necks |
![]()
Сообщение
#5
|
Новичок ![]() Группа: Пользователи Сообщений: 30 Пол: Мужской Репутация: ![]() ![]() ![]() |
Скорее всего буду програмировать в Win32. А вот то какой интерфейс пока не знаю, серьезно интерес к этому появился недавно, поэтому раз форум по Паскалю, значит и люди которые здесь сидят разбираются в этом, а я только новичок можно сказать. Так вот, мне бы больше теории узнать на первое время...
|
xds |
![]()
Сообщение
#6
|
![]() N337 ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 737 Пол: Мужской Репутация: ![]() ![]() ![]() |
В Win32 проще всего работать с COM:
- не нужно писать драйвер - используются функции файлового ввода-вывода и несколько специальных функций, т. е. работа только с Win32 API; - легко реализуется в подключаемом устройстве (если последнее необходимо изготовить самому). -------------------- The idiots are winning.
|
necks |
![]()
Сообщение
#7
|
Новичок ![]() Группа: Пользователи Сообщений: 30 Пол: Мужской Репутация: ![]() ![]() ![]() |
Ну а с помощью каких функций/команд можно програмировать порт?
![]() |
xds |
![]()
Сообщение
#8
|
![]() N337 ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 737 Пол: Мужской Репутация: ![]() ![]() ![]() |
Открытие порта:
var Закрытие: CloseHandle(Port); Установка параметров соединения: скорости передачи данных, формата фрейма и способа управления потоком данных: var Настройка тайм-аутов передачи данных: var Чтение данных (Buf - переменная - буфер, в который принимаются данные; Count - кол-во байт, которое необходимо принять; r получает кол-во принятых байт, r < Count в случае ошибки): WriteFile(Port, Buf, Count, r, nil); Запись данных (Buf - переменная - буфер с данными; Count - кол-во байт в буфере; r получает кол-во переданных байт, r < Count в случае ошибки): WriteFile(Port, Buf, Count, r, nil); P. S. Естественно, во всех случаях необходимо выполнять проверку на наличие ошибок ;) (все перечисленные функции, за исключением CreateFile, возвращают значения типа Boolean; CreateFile в случае ошибки возвращает значение INVALID_HANDLE_VALUE). -------------------- The idiots are winning.
|
necks |
![]()
Сообщение
#9
|
Новичок ![]() Группа: Пользователи Сообщений: 30 Пол: Мужской Репутация: ![]() ![]() ![]() |
Ок, большое спасибо - буду пробовать. А для usb порта есть наверняка команды?
|
xds |
![]()
Сообщение
#10
|
![]() N337 ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 737 Пол: Мужской Репутация: ![]() ![]() ![]() |
Под USB-устройства обычно пишут свой драйвер.
-------------------- The idiots are winning.
|
Dr.Bugy |
![]()
Сообщение
#11
|
![]() Лихорадка неясного генеза. ![]() ![]() Группа: Пользователи Сообщений: 81 Пол: Мужской Реальное имя: Алексей Репутация: ![]() ![]() ![]() |
Вот модули для работы с USB пртом, может пригодятся.
Прикрепленные файлы ![]() -------------------- Мир промышленного программирования полон избыточной сложности. В результате такие критерии, как простота, надежность, компактность программ и эффективность исполняемого кода, теперь заменяются на один главный критерий — скорость реализации идей. Приоритет времени разработки понятен: человеческие ресурсы нынче стоят значительно выше, чем аппаратные. Но не теряем ли мы по дороге то ценное, что вернуть потом будет крайне тяжело?.. |
AstonClinton |
![]()
Сообщение
#12
|
Группа: Пользователи Сообщений: 4 Пол: Мужской Репутация: ![]() ![]() ![]() |
Народ, а литература по этому делу(работа с портами, и т.д.) есть?
|
![]() ![]() |
![]() |
Текстовая версия | 20.07.2025 13:47 |