![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Драйвер с обработкой прерывания
o_serg © (2006-12-26 10:59:00)Нужно написать простенький драйвер с обработкой одного прерывания и при необходимости передачей сообщения в программу. Подскажите плиз как и чем это лучше сделать. В инете нашел пару примерв vxd и wdm драйверов, но там нет обработчиков прерываний. А может просто написать службу, если в ней можно перехватывать прерывания? Язык большого значения не имеет (АСМ, Си...)
o_serg (2006-12-26 14:05:00) [21]а если прерывание генерируется с частотой около 1000 Гц
помоему было бы рациональнее написать драйвер...
Сергей М. (2006-12-26 13:59:00) [22]см. WaitCommEvent(EV_DSR)
И все. И ни в какие "прерывания" не нужно лезть - система все сделает сама
o_serg (2006-12-26 13:47:00) [23]устройство покдлючено к линии DTR и меняет её состояние когда это необходимо, COM порт можно настроить чтобы при смене сигнала на этой линии генерировалось аппаратное прерывание назначенное порту.
на самом деле проблем с этим нет, в досе я уже давно все сделал и оно прекрасно работает, а вот в виндовс я не знаю как обработать прерывание.
В обработчике мне нужно считать промежутки времени между прерываниями.
Сергей М. (2006-12-26 13:43:00) [24]
> данных оно не передает
И о чем же тогда свидетельствует факт возникновения прерывания ?
Что ты собрался делать в обработчике этого прерывания, если уж заговорил об этом ?
Сергей М. (2006-12-26 13:42:00) [25]
> нужно обрабатывать прерывание от этого КОМ порта
Не нужно его обрабатывать, ОС сама с этим успешно справляется.
Сергей М. (2006-12-26 13:40:00) [26]О каком прерывании от твоего устройства может идти речь, если оно подключено к СОМ-порту, а не к системной шине непосредственно ?
o_serg (2006-12-26 13:32:00) [27]данных оно не передает, только в определенный момент вызывает прерывание и все, поэтому нужно именно перехватить прерывание :)
o_serg (2006-12-26 13:31:00) [28]я сам сделал одно устройство, которое подключается к ком порту, мне нужно обрабатывать прерывание от этого КОМ порта
Сергей М. (2006-12-26 13:28:00) [29]Зачем тебе вообще понадобилась обработка прерываний ?
Сергей М. (2006-12-26 13:28:00) [30]
> из службы сожно обрабатывать прерываие?
Нельзя.
o_serg (2006-12-26 13:25:00) [31]А из службы сожно обрабатывать прерываие? я нашел пару хороших примеров написания службы на Делфи
oxffff (2006-12-26 11:39:00) [32]>Подскажите плиз как
Зарегистрировать ISR.
Только бывают еще и Shared IRQ.
Может происходить Reassign IRQ(PnP).
В DDK есть хорошие примеры.
oxffff (2006-12-26 11:29:00) [33]Compuware Driver Studio.
Сергей М. (2006-12-26 11:19:00) [34]Обслуживание прерываний - привелегия режима ядра.
Делфи не предназначена для разработки драйверов этого режима.