Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Архив форумов ЦИТФорума
Море(!) вопросов - Море(!) ответов
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 
Как правильно задавать вопросы

Программка запускающая по появлению сигнала на входе COM или LPT порта

 
Перейти:  
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Программирование
Предыдущая тема :: Следующая тема  
Автор Сообщение
Korenev Boris
Гость





СообщениеДобавлено: Ср Апр 16 2003 07:15    Заголовок сообщения: Программка запускающая по появлению сигнала на входе COM или LPT порта Ответить с цитатой

Программка запускающая по появлению сигнала на входе COM или LPT порта

Здравствуйте!
Мне нужно вот что.
Программка, которая будет запускаться при появлении
сигнала на входе COM или LPT порта.
Короче говоря нужно чтоб эта программа запускалась при появлении, например,
прямоугольного импульса на последовательном или параллельном порту.
А что уже делает эта программка ( тело программы) я допишу сам.
Если можно написать ее на Си под MS DOS.

Заранее Спасибо. Борис.
Вернуться к началу
FUKS



Зарегистрирован: 14.04.2002
Сообщения: 148
Откуда: Москва

СообщениеДобавлено: Вс Апр 20 2003 21:53    Заголовок сообщения: Re: Программка запускающая по появлению сигнала на входе COM или LPT порта Ответить с цитатой

>>Короче говоря нужно чтоб эта программа запускалась при появлении, например,
>>прямоугольного импульса на последовательном или параллельном порту.

Чтобы она "запускалась", нужно чтоб её кто-то запускал - сидел в резиденте и отслеживал состояние сигнальной цепи, т.е. либо эта программка должна не запускаться по событию, а активизироваться, уже будучи запущенной, либо, если она сильно большая, то в резиденте должна сидеть отдельная программка-запускалка, хотя для MS DOS этот способ представляется весьма сомнительным - из резидента, обрабатывающего только аппаратные прерывания, негоже вызывать ОС, или нужно ещё и с COMMAND.COM как-то интегрироваться, чтобы сэмулировать запуск программы пользователем - а если в данный момент другая программа выполняется, что тогда? Или тогда уж лучше составить bat-файл, в котором первая прога будет ждать появления сигнала, по нему завершаться, после чего будет запускаться основная программа.
А что касается механизма ловли сигнала от COM-порта, то при базовом адресе 3F8 (COM1) нужно следить за портом 3FE: в старших 4 битах у него текущее состояние модемных линий CTS, DSR, RI, DCD (соответственно контакты 8, 6, 9, 1 на 9-контактном разъёме, хотя на советских 9-к. разъёмах нумерация контактов зеркальная была, тогда 7, 9, 6, 5), а в 4 младших признак, что состояние соответствующей линии изменилось с момента последнего чтения из этого порта, вот их и надо проверять.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Программирование Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2002 phpBB Group
Русская поддержка phpBB

 

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 6608306, ICQ 232284597
Пресс-релизы — pr@citforum.ru
Послать комментарий
Информация для авторов
This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2006 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...