Евгений |
Отправлено: 10.08.2003, 02:59 |
|
Не зарегистрирован
|
На СОМе сидит PC Remote Control (читает с IR датчика)-использует порт на чтение, мне надо в этот же порт писать — есть ли возможность так сделать? Винда-ХР. |
|
Георгий |
Отправлено: 10.08.2003, 12:33 |
|
Почетный железнодорожник
Группа: Модератор
Сообщений: 874
|
если другая прога открыла порт в эксклюзивном режиме, то обход этого видится мне настолько трудоёмким, что не стоит напрягаться. |
|
Евгений |
Отправлено: 11.08.2003, 00:48 |
|
Не зарегистрирован
|
Сложнее, чем тащиться на рынок, приобретать ПСИшную мультикарту, устанавливать её, и цеплять устройство на новый порт?
Ну хоть ради интереса — как то же это можно сделать? — помню есть такая прога WinIO — она же как то распоряжается портами по своему усмотрению — может можно так же — или еще лучше — нельзя ли использовать ее саму? — может кто-нибудь знает где про это ясно и понятно написано?
|
|
sprinter |
Отправлено: 11.08.2003, 08:31 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 14
|
Одновременно читать и писать, конечно, не получится. Но если PC Remote Control читает порциями (т.е. порт не постоянно занят), то в промежуток, видимо, можно всунуться. А на мультикарту особых надежд нет — для каждого порта тебе придется выделить прерывание и адрес. Если с адресом более-менее ясно, то с прерыванием сложнее. Поставишь на одно два порта и работа сними может быть только по очереди... А уж как винда с ними будет работать...
Да, кстати, я не понял — хочешь работать с двумя разными устройствами (но как их подключать к одному порту без паяльника) или с одним и тем же ?
|
|
Георгий |
Отправлено: 11.08.2003, 11:32 |
|
Почетный железнодорожник
Группа: Модератор
Сообщений: 874
|
Можно сделать свой драйвер физического COM порта, который показывает 2 логических и выполняет объединение потоков данных на запись в порт, а вот с чтение будет сложнее — как различить в какой логический порт писать данные прочитанные с одного физического?
Но я считаю, что эта затея с использованием одного физического порта не стоит усилий — купи PCI COM порт, тогда и конфликтов по прерываниям не будет. Хотя и с обычной ISA мульти картой на современных машинах проблем не будет — её прерывание будет идентифицироваться как ISA прерывание, в то время, как со встроенного COM порта как PCI прерывание и стандартный виндусовый драйвер должен разобраться кто его по беспокоил.
А по поводу записи в порт, куда инфакрасный приёмник записан — а зачем туда писать??? |
|
Евгений |
Отправлено: 12.08.2003, 02:12 |
|
Не зарегистрирован
|
Разъясняю подробнее:
с некоторый пор стал я значит, увлекаться электро-радио-схемотехникой и от того, что чешуться руки собираю очередную приблуду для компа — в данном случае — индикатор температуры проца на системном блоке на двух семисегментных индикаторах. Его можно конечно в три раза проще повесить на LPT но там само-разумеется уже висит принтер — поэтому удел индикатора — ком порт. Записывать устройство в порт само-собой ничего не станет — ему в принципе нужна только TD и GROUND. Ком портов у меня два. Один — Курьер USRовский, а второй — мой инфракрасный приемник — ну чтобы не поднимая попы фильм паузить, громкость убавлять и прочее. ИР приемник из порта ничего не читает — он туды пишет. Соответсвенно TD линия свободна, как нам и надо. Осталось тока програмно до нее достучаться. Можно конечно написать свою прогу для распознавания сигналов пульта — но чтобы сделать что-то хоть отдаленно такое же функционально удобное как PC Remote Control 4.0, который собственна и читает с ИР приемника, мне понадобится месяца два-три. Поэтому и пытаюсь использовать порт вместе с PC Remote Control.
Георгий — а подробнее насчет драйвера мона? А может вообще лучше без драйвера — можно же как то получить такой приоритет, чтобы в порт писать без спросу — собственно всё равно это мешать никому не будет. НЕ помню точно — но что-то типа Ring 0 надо поиметь. В нем проги по-моему все могут — только никогда не мог понять — как в этот Ринг нуль попасть. Хотя мож я вообще не в ту сторону думаю. Помогайте.
|
|
Георгий |
Отправлено: 12.08.2003, 09:38 |
|
Почетный железнодорожник
Группа: Модератор
Сообщений: 874
|
если вся эта затея ради +5В, от почему её не взять с БП? Там на любом отростке с питанием есть +5 и +12, и земля — выбирай что хочешь. Нагрузка у индикатора я думаю не большая (хотя кто тебя знает — ещё на лампах дневного света сделаешь) и с помошью куска медного провода эти 5В можно куда угодно завести. |
|
Евгений |
Отправлено: 13.08.2003, 00:28 |
|
Не зарегистрирован
|
Георгий, без обид, но Вы — ГЕНИЙ!
Так и сделаю. Только вот не совсем ясно — откуда две микросхемы К176ИЕ4 будет брать информацию для отображения на индикаторах? Если серьезнее — я через порт посылать буду информацию на сумматор-дешифратор для семисегментного дисплея. Планирую делать так — читаем либо прямо с микрухи(ну это если узнаем по какому порту она температуру пишет), либо с MBM берем, и отсылаем значение на ком порт — там микросхема отображает это на индикаторе(точнее — две микрухи на двух индикаторах). Стопудовый выход — это конечно мультикарта — но это ТАК НЕ СПОРТИВНО, что просто заподляк. USB мне пока не по зубам. |
|
Георгий |
Отправлено: 13.08.2003, 02:29 |
|
Почетный железнодорожник
Группа: Модератор
Сообщений: 874
|
На счёт без обид согласен, только ты не сказал, зачем тебе туда писать, а я подумал, что ты питание так завести хочешь, а то один мой приятель управлял шаговым двигателем через COM порт (питание, направление движение, импульс движения — всё через линии COM порта).
Т.е. ты хочешь показания встроенного термодатчика (Intel — термодиод в кристалле, AMD — некоторые Epox показывают с термодиода, а остальные с подсоккетного датчика)? А ты учёл, что он показывает не температуру, а попугаев? И что будет у тебя проблема с работай с микросхемой, которая позволяет считывать эти показания — по changelog к MBM они регулярно добавляют корректную поддержку различных датчиков.
Не проще ли поставить поближе к основанию радиатора термодиод, АЦП, а всё остальное как и раньше хотел. Тогда не придётся удивляться почему с новой версией BIOS упала температура... Кстати на форуме overclockers.ru обсуждалиcь такие примочки — именно полностью аппаратные.
А мучиться с портом, потом с микросхемой или пытаться из другой проги выдрать температуру — по моему это слишком через ж*** (Какая хирургическая операция у нас самая сложная? Удаление гланд! Эээ А почему? Потому что делают через ж***!). По крайней мере займёт значительно больше времени, чем присобачить термодиод к радиатору.
Но если решишь делать програмно, то написание драйверов для MS Windows2000 я видел на wasm.ru,а по теме ничего больше сказать не могу. |
|
Евгений |
Отправлено: 13.08.2003, 03:19 |
|
Не зарегистрирован
|
С термодиодом — отстой, ибо там и делать то ничего не придется — через порт поинтереснее. Мы же руки чешем. Кстати, по поводу термодиоад — попробуйте на досуге засунуть его под процессор...А насчет несовместимостей — всё равно делаю ТОЛЬКО для себя и только под свой комп — на все остальные мат платы мне насрать. Спасибо за ссылку — будем пытаться.
Кстати, статью про подобные девайсы я увидел уже после того, как нашел применение старому индикатору и обрисовал в голове схему. |
|