Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Delphi: WinAPI и системное программирование > питания для com порта |
Автор: R0nin 30.9.2005, 01:51 |
Я спаял устройство работающее от питания com порта, нада прога для выключения устройства! Тоесть что бы на 1 контакт перестал подоваться напряг. ![]() В этом я профан, может кто придумает как енто зделать! |
Автор: Mad 30.9.2005, 02:08 |
R0nin А с какого сигнала ты береш питание ? |
Автор: Romikgy 30.9.2005, 13:10 |
А какая система???? |
Автор: R0nin 1.10.2005, 01:16 |
вобщем принцип такой: я взял провод от мыша комовского там было 4 провода я взял белый- ![]() нада чтоб один из них перестал по команде функционировать! ![]() |
Автор: Mad 1.10.2005, 12:54 | ||
вообщето они могут полярность и поменять (в процесе работы с портом какойто проги) ![]() |
Автор: R0nin 2.10.2005, 01:04 |
пусть меняют, но только по команде! в устройстве диоды от него питаются, так что при смене полярности эффект тот же: ВЫКЛЮЧЕНИЕ ! |
Автор: Romikgy 3.10.2005, 09:30 |
Не знаю, мышь никогда сом-скую никогда не разбирал ![]() DTR, DSR, RTS, CTS, если конечно ты не прицепился к данным . |
Автор: R0nin 4.10.2005, 01:54 |
Я бы поигрался ![]() ![]() Я понимаю лишь тот ффакт что мне надо обесточить ком порт, и это должна сделать программа! ![]() ![]() |
Автор: ShadeSt 4.10.2005, 09:04 |
У ком порта как такового питания нет, есть только сигнальные выводы, из них имеется например DTR (4) и RTS (7), которыми можно управлять и на которых можно выставить "0" или "1". уровни сигналов -12 и +12 вольт (максимум). Сигнальные выводы RX, TX инвертированны, т.е. -12в. соответствует "1", насчет DTR и DSR не знаю. в твоем случае надо повесить устройство на 5й - GND и 4 - DTR выводы через диод, чтобы не спалить его(хотя, насколько я понял так и сделано), и играться DTR'ом. Я это делал через компонент для дельфи, который нашел в интернете, цели написать свой компонент не было. Насколько я понимаю копать надо в сторону GetCommState,SetCommState - "Communication Functions" в Help\Windows SDK\Find |
Автор: Romikgy 4.10.2005, 11:07 | ||||
Попробуй поигратся с этим:
Добавлено @ 11:09
+верхнее (тобишь там ф-ция, для того как игратся) ![]() |
Автор: cardinal 5.10.2005, 01:33 |
А что городишь-то такое? ![]() |
Автор: R0nin 5.10.2005, 23:38 |
коврик с подсветкой! Люди, если не лень поногите начинающему! Напишите примерный исходник, что бы было с чем разбираться! А то это ля меня все страшно очень! |
Автор: cardinal 6.10.2005, 01:57 |
Как написать работающий пример, если "прибор" у тебя? Тестировать не на чем! Соответственно даже не знаю что предложить, но... использовать то, что для этого не предназначено это не лучший вариант. Боюсь, что кончится все тем, что у тебя чего-нибудь сгорит (плата в компе например) из-за того, что ты не очень представляешь, что делаешь. ![]() ![]() Я знаю, что с USB ты можешь получить источник питания (USB хоть предусматривает питание внешнего устройства с малым потреблением тока), но как включить/выключить это дело по простому я не представляю... Мысля есть, но... Почитай про то, что происходит при передачи данных через com порт пока... |
Автор: ShadeSt 6.10.2005, 07:38 |
USB это хорошо, но оччень геморойно, на сколько я знаю. выключать питание там нужно будет контроллером, который будет общатся с компом, на котором нужно будет писать дрова под свой девайс. по моему так. А на счет питания с ком порта все проще, по принципу который описывали выше работают все датакабели "компорт - телефон" у них там MAX232 стоит, и питание на него примерно так же подается, через диодики. Можно скачать программу(например Terminal RS-232C http://bsalab.ruweb.net/ru/downloads.htm), которая умеет управлять DTR, отладить железо, а потом написать свою программу. |
Автор: Romikgy 6.10.2005, 09:25 |
Ну в МАХ питание не совсем через диодики подается, А во вторых тебе нужно только DTR Управлять? |
Автор: cardinal 6.10.2005, 12:25 | ||
ShadeSt, не знаешь ли ты такого терминала, чтобы
|
Автор: R0nin 6.10.2005, 23:47 | ||
to cardinal там напряга в том ковре не столько чтобы чтото сгорело! ![]() По началу была мысля сделать с USB но нашел только COM шнур! ![]() о что сделано то сделано!
![]() ![]() Добавлено @ 23:51 to ShadeSt ЩАс скачаю прогу попробую ею! |
Автор: R0nin 7.10.2005, 00:10 |
В общем, при установки галочьки на управление RTS коврик тухнет ![]() То что доктор прописал! но вопрос тот же, как сие осуществить в DElphi? |
Автор: cardinal 7.10.2005, 00:32 | ||
Интересно почему... ![]() Ну тогда разбирайся с функцией, которую тебе посоветовали: http://forum.vingrad.ru/index.php?showtopic=65924&view=findpost&p=530564 В Delphi я тебе не помощник... |
Автор: ShadeSt 7.10.2005, 07:45 |
Тухнет потому, что галочка провод передавливает ![]() To Cardinal. Нет такой терминалки не встречал, Может потому что никогда не было такой задачи. |
Автор: ~FoX~ 7.10.2005, 07:56 |
Товарисчи, питалово ком порта не управляется программно. |
Автор: Guest 7.10.2005, 08:28 |
Ну так у ком порта вообще нет вывода питания наружу у него только сигнальные и земля. тут же речь уже идет о том что питание устройства подвешенного к ком порту, осуществляется посредством установления +12 вольт или "низкого уровня" на сигнальном выводе DTR. |
Автор: ShadeSt 7.10.2005, 08:32 |
Точнее, простите, RTS. ошибся |
Автор: Romikgy 7.10.2005, 13:41 | ||||||
Вот код для работы с портом:
Тебе необходимы 2 процедуры InitCom и CloseCom . И еще организуешь две кнопки одна включить:
другая выключить, с кодом:
А далее эксперементируй ![]() ЗЫ код я не проверял , нету у меня девайса на ком порт. |
Автор: R0nin 8.10.2005, 02:03 | ||
to Romikgy а как пользлваться функциями включения отключения? ![]() а что ты имел ввиду говоря?
|
Автор: cardinal 8.10.2005, 13:40 |
R0nin, честное слово, пора бы книжку открыть... |
Автор: R0nin 9.10.2005, 14:04 |
![]() ![]() Спасиба за муки с начинающимися! ![]() |
Автор: cardinal 9.10.2005, 15:06 |
Нет, не достал, но книжку открыть пора! ![]() |
Автор: R0nin 9.10.2005, 22:19 |
Просто в книжках стандартные компоненты и их описание, калькулятор я и сам могу написать. А тут захотел подарок зделать лбимой девушке (тоже начинающий программер) в виде коврика с софтом под него, чтоб все как пологен было! Правильно же?! Ну а умений то у меня и не хватило! ![]() ![]() |
Автор: Петрович 14.10.2005, 12:28 | ||
Такого быть не может поскольку при завершении программы винды будут освобождать COM-порт, и могут даже изменять состояние его оправляющих сигналов. Так что, между запусками terminal.exe состояние порта не будет сохраняться. |
Автор: cardinal 14.10.2005, 19:30 | ||
А это ИМХО пофиг, т.к. сохранятся ничего и не должно. Запустил, отправил, прибор получил и усе... |