Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

LPT, COM и Рэлюшки... [D5, Win95/98]


Hruks ©   (2001-11-30 11:52:00) 

Здравствуйте, многоуважаемый All.
Давно хотелось поуправлять мне с компутера разными электроприборами... От гирлянд, до вентилятора. Несостоялся из меня радиолюбитель :(
А вот программировать вроде бы получается. Ну так вот - каким образом можно это проделать? Вроде должно получиться, если к управляющим сигналам (DTR например) ком порта и земле подключить реле, и программно эти сигналы устанавливать/снимать. Но вот незедача - портов мало, да ещё и сигналов негусто. Может для этого LPT годится? С ком портом работать получалось, а вот про LPT никакой инф не могу найти.
Может поможете мне с моей проблемой, может уже кто копал или укажет где покопать? Или всё гораздо проще?
Заранее благодарен.


DKuznets   (2001-11-30 12:54:00) [1]

http://pcard.narod.ru/electron/private/elka2000/index_ru.html

как раз для ком-порта :)

я такую сделал, только упростил раза в 3 :)
и даже работает... вроде :)
и даже плугин написал под винамп, чтоб под музыку моргало :)


UN9GW   (2001-11-30 12:38:00) [2]

Приветствую!
Очень жаль, что не получился радиолюбитель - это занятие дает многое.
Насчет управления.
Вопервых не желательно подключать реле и прочие высокоточные (в смысле тока) устройства напрямую. Для этого используйте транзисторные ключи.
С LPT портом в Win95\98 нет никаких проблемм - можете на ассемблере написать вставки в вашем приложении и все будет работать.
Я,правда, на Pascal-е не пишу, но начинал именно с Delphi. А вставка выглядит примерно так:

asm
begin
mov ax, 0x378 //это номер регистра данных LPT порта
mov dx, ax //адрес порта долженбыть в dx
mov ax, 0x0001 //в ax - данные на вывод
out dx, ax //собственно команда вывода
end;

Вместо 0x0001 можете указать какую-нибудь переменную с именяемым значением, таким образом менять данные.

Успеов!


Наверх

Титульная страница Поиск, карта сайта Написать письмо