![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
прерывание от LPT [D6, D7, WinXP]
Waso © (2005-05-14 21:13:00)Здравствуйте! Есть такая проблема - комп под XP нужно научить регистрировать импульсы, поступающие от датчика (счетчик Гейгера). Сейчас это организовано периодическим опросом 10-й ноги LPT (ACK) из-за чего ес-сно вся система неслабо подвисает. Крометого для этого необходимо собирать внешний одновибратор, дабы растягивать поступивший импульс так чтобы порт его заметил.
Очень хотелось-бы организовать что-то вроде прерывания от LPT по фронту входящего импульса, но незнаю возможно ли вообще такое... ??? и как??? =) Можно и к COM-порту подрубить, если там такое прокатит... Есть какиенибудь соображения?
Заранее благодарен.
Германн (2005-05-17 14:29:00) [1]2 Digitman © (17.05.05 13:36) [24]
Ну тут Вы Сергей несколько погорячились.
Все-таки термины Int из ассемблера и Interrupt из Паскаля присущи именно средам программирования.
Хотя насчет Дельфи Вы полностью правы.
Digitman (2005-05-17 13:36:00) [2]
> Waso (16.05.05 16:13) [19]
> И всетаки про прерывания в делфи ктонить ченить скажет???
нет в Делфи никаких "прерываний".
прерывание - термин/механизм, присущий процессору, а не среде программирования.
Waso (2005-05-16 17:28:00) [3]Всетаки самое вкусное во внешней DLL. Походу насчет авторизации тоже она орет... Буду добивать тему. Простите за кучу ламерских восклицаний. (Ну не шарю я в делфи) Модераторы! Kill'em all, please.
Waso (2005-05-16 16:49:00) [4]НАШОЛ...
http://www.wetdz.gov.cn/en/programfiles/Borland/Delphi7/Source/Samples/Spin.pas
Waso (2005-05-16 16:41:00) [5]Здорово! А за самое вкусненькое денег хотят... spin.pas
Waso (2005-05-16 16:15:00) [6]Чудеса! Отправить не успел а тут ужо ссылочки... Пасибки, Ща глянем... =)
Waso (2005-05-16 16:13:00) [7]Если уж говорить о серийном производстве, то помоему будет выгоднее погемароиться один раз с прогой и потом не тратиться на производство переходных железок.
И всетаки про прерывания в делфи ктонить ченить скажет???
Konstantin_M (2005-05-16 13:47:00) [8]http://www.entechtaiwan.com/tools.htm
Marser (2005-05-16 02:10:00) [9]Гы. Есть такой зверь, оказывается...
Marser (2005-05-16 02:09:00) [10]SetCommMask, правда. Про SetCommEvent впервые слышу.
Marser (2005-05-16 02:08:00) [11]
> А еще делфа моя (6) не знает такой фичи как
> SetCommEvent. Зато знает WaitCommEvent. Както по
> другому надо эти эвенты настраивать...
Клевета! Знает она всё.
Германн (2005-05-16 02:01:00) [12]Славо богу! Инициатором разработок моей фирмы был - электронщик!
И, как и говорил KilkennyCat, мы сделали упор на создание "переходных электронных устройств" между "основной системой" и компьютером.
Но, если кто хочет "напрямую", то драйвер им в руки!
Или ДОС!
Ну, правда, мы не заморачивались "точностью до 1ms"!?
Waso (2005-05-15 21:25:00) [13]Вобщем прочитал я статейку Connecting an Interrupt Service Routine to a Parallel Port по адресу http://www.osronline.com/ddkx/parallel/vspd_06g7.htmи еще мнооого всякой инфы по поводу работы с lpt u com портами, но так и не понял как организовать прерывание в Дельфи. Я это себе представляю как процедуру типа OnClick например. Не подскажете где почитать?
А еще делфа моя (6) не знает такой фичи как SetCommEvent. Зато знает WaitCommEvent. Както по другому надо эти эвенты настраивать...
KilkennyCat (2005-05-15 14:05:00) [14]Ну так. Кто любит? Но есть золотая середина: крутая железка - простая программа, простая железка - крутая программа. Вот и надо выбрать, что оптимальнее.
В данном случае я бы собрал к лпт присоединил бы регистр, это бы упростило все сразу, так как с его помощью можно и растянуть сигнал по времени, и считывать сразу партию сигналов...
Waso (2005-05-15 13:59:00) [15]Сенкс канеш. Нелюблю я лишний раз железки собирать... =)
KilkennyCat (2005-05-15 13:42:00) [16]Вообще, я бы все-таки собрал несложную железку, которая собирала бы импульсы, а потом выдавала бы данные по запросу.
KilkennyCat (2005-05-15 13:40:00) [17]
> 1 кГц на COM проблематично.
но допустимо.
Маг Похмеляйнен (2005-05-15 13:12:00) [18]А время засекать можно ф-ей KeQueryPerformanceCounter.
Маг Похмеляйнен (2005-05-15 13:10:00) [19]1 кГц на COM проблематично.
Время от поступления сигнала прерывания до вызова обработчика обычно постоянно, и занимает от единиц до десятка мкс, в зависимости от быстродействия проца.
KilkennyCat (2005-05-15 12:48:00) [20]Ну, с такой частотой не должно быть проблем с любым вариантом решения. Можно и без прерывания. Можно и через СОМ. Можно даже через звуковую карту изватиться.
А вот с точностью... Если точность критична, то я бы лучше все сделал бы через самодельный буфер.