![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Com-порт [D7, WinXP]
Keith Flint © (2003-09-01 08:57:00)
Помогите пожалуйста найти исходники или компаненты для Delphi по работе с com портами (нужно с Com 2), а именно интересует считывание/запись логических 0/1 на определённые выводы портов, хотелось бы знать ещё на какие конкретно. Заранее спасибо...
pasha_676 (2003-09-05 11:33:00) [21]
2Di.ma2002@mail.ru
Еще раз. Я затрудняюсь ответить со сколькими самопальными, согласующими и стандартными устройствами на коме я работал и под сколько из них написал программы (радиоприемники, измерители растояний, роботы, радиостанции, стереоочки - это что на память взбрело). Но я с уверенностью могу утверждать только одно - я не знаю всех функций и особенностей порта. То что ты создал модем и написал прогу к нему не говорит о том, что ты знаешь все компортах. О чем собственно и свидетельствуют твои посты.
Alexander Vasjuk (2003-09-05 11:16:00) [22]
Di.ma2002@mail.ru (05.09.03 11:12) [28]
Какой ты молодец!
Di.ma2002@mail.ru (2003-09-05 11:12:00) [23]
Вот как раз устройство у меня и гонит данные непрерывно :))
Опыт большой сам разработал радиомодем, сам запрогромировал ему ПИК, сам написал прогу для отправки \ приема сообщений в порт !!
-=Vlad=- (2003-09-05 11:07:00) [24]
>Di.ma2002@mail.ru (04.09.03 10:33) [17]
>>у так я ж работаю с компортом !!!:)))
Прикольно однако ты работаешь 8) и большой опыт? много реализованных прог? И что ты далаешь когда тебе устройство гонит непрерывно через порт данные, а тебе надо их обработать, а буфер же не резиновый, даные затираются?
>Keith Flint (04.09.03 19:28) [21]
8^) Порадовал глубокими знаниями как программирования так и радиоэлектроники. Ну главное не знание, а желание к познаванию, просто не высказывай вещей в которых не уверен на 100%. Спрашивай, тебе все объяснят. Слушай pasha_676 он все правильно говорит
>pasha_676
Молодец мне терпения не хватило бы.
pasha_676 (2003-09-05 09:40:00) [25]
> На сколько я знаю в делфи нет переменой типа бит или я ошибаюсь
> ?
А на что это влияет если есть логические операции? Ты что не можеш манипулировать битом в байте? Тогда тебе сюда. Кроме шуток очень рекомендую - http://www.baseprogram.narod.ru/
pasha_676 (2003-09-05 09:36:00) [26]
> Объясняю, Паша, РАСПАЙКА у них разная
Да ты что! Распайка разная. Комы с точки зрения компа и системы отличаються не распайкой. С точки зрения АПИ они отличадються именем (см. хелп по createfile). Матери бывают и с двумя 9-пиновыми дибами. Не в распайке дело. Распайка - дело отдельных конкретных матерей и реализации девайсов. Ничто не мешает спаять (купить) переходник. Ни что не мешает применять экзотические разъемы. Они одинаковые по сути.
Еще раз. Для тех кто в бронепоезде.
Прочти тут http://www.delphimaster.ru/articles/comport2/index.html
Управление отдельными битами на ком портах - функции GetCommModemStatus и EscapeCommFunction. Первая читает состояние ног, вторая выставляет.
> Послал в com2 бит - получил 1 на определённой ноге порта
> (+5в).
EscapeCommFunction - то что тебе надо. Кстати +-12 В (причем 1 помоему -12 В - но это точно не помню), а не пять (хотя слышал, что есть и порты с ТТЛ уровнями, но это уже вроде отклонение от стандарта).
> Так что паша я не только в программированиии соображаю,
> но ещё и в радиоэлектронике...
По правде тебе скажу - я не считаю что я соображаю в программировании (и чем больше программирую - тем кажется меньше соображаю) и не смотря на то что закончил училище радиоэлектроники не считаю что соображаю в радиоэлектронике. Тут я полный лох, но уж наименование контактов прочитать у меня ума обычно хватает (кстати с чего это вдруг знание распайки разъемов причислено к знаниям по радиоэлектроники).
Verg (2003-09-05 07:23:00) [27]
> РАСПАЙКА у них разная, вот, полюбуйся:
Ну, и?
И это отличие com1 и com2?:)
Ты правда так считаешь?
Значит если на мамке моего компъютера оба com-а имеют DB9, то я, по твоей логике имею два COM1? :))))
ksa2002 (2003-09-05 05:31:00) [28]
На сколько я знаю в делфи нет переменой типа бит или я ошибаюсь ?
ksa2002 (2003-09-05 05:28:00) [29]
Пиши драйвер:)
Keith Flint (2003-09-04 19:28:00) [30]
ЛЮДИ, всё просто, все виндовые API и DELPHI"овые функции могут посылать/получать БАЙТЫ, а мне надо посылать/получать БИТЫ, что совсем разные весчи (аж в 8 раз). pasha_676, если ты сомневаешься в том, знаю ли я что такое вообще программирование, типа я разницу между com1 и com2 не знаю?! Объясняю, Паша, РАСПАЙКА у них разная, вот, полюбуйся:
RS232/9:
1 N/A 6 DSR
2 RXD 7 RTS
3 TXD 8 CTS
4 DTR 9 N/A
5 GND
RS232/25:
1 N/A 14 N/A
2 TXD 15 N/A
3 RXD 16 N/A
4 RTS 17 N/A
5 CTS 18 N/A
6 DSR 19 N/A
7 GND 20 DTR
8 DCD 21 N/A
9 N/A 22 RI
10 N/A 23 N/A
11 N/A 24 N/A
12 N/A 25 N/A
13 N/A
А требуется мне отправить определённый бит в com2 потамучто на com1 у меня висит модем Robotics Courier. Послал в com2 бит - получил 1 на определённой ноге порта (+5в). Так что паша я не только в программированиии соображаю, но ещё и в радиоэлектронике...
pasha_676 (2003-09-04 17:14:00) [31]
Хм. Интересно. Правда практической ценности не имеет. Но вдруг понадобиться.
Verg (2003-09-04 13:50:00) [32]
> Но вот на этих контактах не возможно поставить 1-0
На всякий случай:
The SetCommBreak function suspends character transmission for a specified communications device and places the transmission line in a break state until the ClearCommBreak function is called.
BOOL SetCommBreak(
HANDLE hFile // handle of communications device
);
pasha_676 (2003-09-04 12:55:00) [33]
> интерфейс RS232 и прекрасно работает через три контакта
> !!! Все зависит от модема !!!
Правильно работает. Три контакта достаточное условие. Но вот на этих контактах не возможно поставить 1-0 или считать с них 1-0. Кстати причем тут модем? Данный вопрос для модема совершенно не актуален. Эта тематике актуальна в управлении доп. устройствами по кому, считывание доп. инфы, подачи питания и т.д. Почти всегда для нестандартных, самопальных устройств.
Di.ma2002@mail.ru (2003-09-04 10:33:00) [34]
у так я ж работаю с компортом !!!:)))
Verg (2003-09-04 10:29:00) [35]
> Все зависит от модема !!!
Subj ветки еще раз прочти, да?
Di.ma2002@mail.ru (2003-09-04 10:27:00) [36]
Вообще конечно можно говорить про разные модемы и про разную распайку ! У меня радиомодем подключен к компорту через интерфейс RS232 и прекрасно работает через три контакта !!! Все зависит от модема !!!
Verg (2003-09-04 10:12:00) [37]
> Добавлю еще !! Ком порт задействует 3 контакта: 1) передает
> 2)прием 3) земля
Да, уж ...
> почитайка лучше про RS232
Di.ma2002@mail.ru (2003-09-04 10:09:00) [38]
И вообще давай лучше обсуждать передачу голоса в реалтайме через модем... Что есть в форуме вот это действительно задачка
Di.ma2002@mail.ru (2003-09-04 10:06:00) [39]
почитайка лучше про RS232
Di.ma2002@mail.ru (2003-09-04 10:05:00) [40]
:)))))) Ладно не смеши !! Ты оказываеся еще и не знаешь где сигналы DTR и CTS передаются !!