Вниз
Скачать: CL | DM;

Пожалуйста подскажите про COM порт...   Найти похожие ветки 

← →
AndrewK ©   (2002-09-03 17:33) [0]

Подскажите пожалуйста кто-нибудь.

Надо написать программу для работы с внешним контроллером через COM порт. Попробовал использовать компоненту TvaComm от Async32. Разобрался как передавать и принимать байты.

Столкнулся с такой проблемой:

контроллер должен передавать пакет из 50 байт последовательно в ответ на мой вызов. При приеме возникает следующая ситуация байты принимаются и выдаются мне партиями по восемь штук. Нельзя ли сделать так, чтобы весь пакет принимался целиком и после этого выдавался для дальнейшей обработки?

Как правильно осуществляется посылка и прием потока байтов через COM порт?

Заранее благодарен за помощь.


← →
AndrewK ©   (2002-09-04 09:56) [1]

Помогите кто-нибудь....


← →
MBo ©   (2002-09-04 10:01) [2]

в разделе Статьи


← →
Квазиравномернонепрерывный   (2002-09-04 10:13) [3]

Работайте сразу через API, без промежуточных компонентов.


← →
blackweber ©   (2002-09-05 02:08) [4]



← →
Aleks1   (2002-09-05 02:56) [5]

> AndrewK © (03.09.02 17:33)
А в чем собственно проблема? Ну и пусть тебе выдаются партии по восемь "штук". Прими >= 50 "штук" и проанализируй их.


← →
AndrewK ©   (2002-09-05 09:08) [6]

2Aleks1

Насчет проанализировать несколько пакетов это понятно. Но как-то не очень красиво, имхо. Где-то должно настраиваться по сколько байт принимать. Только не нашел где.

Если у кого есть какой-нибудь рабочий модуль для работы с этой компонентой или нормальная справка киньте, пожалуйста, на мыло.

Может сам компонент заменить?

2MBo

В разделе статьи есть описание для работы с компонентой Comm32. Это то? Только сам компонент для Delphi 6 найти не могу. Но смысл понятен.



← →
MBo ©   (2002-09-05 09:13) [7]

В кладовке есть компоненты для работы с ComPort, поройся там


← →
NickB   (2002-09-05 14:01) [8]

Попробуйте найти и использовать AsyncPro в пакете от Turbo Power
Я лично доволен- есть све что надо и более


← →
AndrewK ©   (2002-09-06 09:04) [9]

Если кого есть AsyncPro для Delphi 6, киньте пожалуйста. Или ссылку где можно скачать попробовать.


← →
Tot   (2002-09-06 09:44) [10]

Да брось ты эти компоненты! Работай через API, просто и всё под твоим контролем.


← →
catalogoanatom ©   (2002-09-06 09:44) [11]

Писать работу с COM надо на API.Есть в MS SDK хороший раздельчик - Communications, там всё расписано.
1 hCom:=CreateFile(PChar("COM1").....).
2 Заполняешь структуру DCB

Запись в порт WriteFile(hCom.....)
Чтение ReadFile(hCom....)

Мониторинг событий лучше перенести в отдельный поток. Вот и всё !
И не надо чужих компонентов, тем более без исходного текста.


← →
LStranger ©   (2002-09-06 11:06) [12]

... а на приеме сделай кольцевой буфер с анализатором - поймал начало пакета - жди хвост, дождался - обрабатывай ...


← →
Nikolab   (2002-09-06 12:19) [13]

Относно WinApi - Все можно писат на API, но идеиа Делфи - ето компоненти. Я с D2 ползую VARIAN ASYNC32 COMPONENT,(c) VARIAN SOFTWARE SERVICES NL, но уверен, что ест и много других хороших COM компонентов - в исходниках везде ест API - но почему надо искат колесо?


← →
Сергей Медяник_   (2002-09-06 19:34) [14]

Кидаю на мэйл компонент, на котором благополучно связываюсь с микроконтроллером МК51. Скорость до 57600, буффер, свойство-количество накопленных байт в буффере, пакетный режим. Компонент надыбал в кладовке, давно.
To ALL: Разумеется всегда лучше писать самому, но когда времени так мало, что поспать некогда, тут лучше взять готовое :-)))))


← →
AndrewK ©   (2002-09-09 11:30) [15]

Огромное всем спасибо.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.011 c
3-33892
donets
2002-10-22 15:29
2002.11.11
Как подружить сканер штрих-кода с базой данных?


14-34248
Карлсон
2002-10-23 23:18
2002.11.11
ну ваще!


3-33872
NeyroSpace
2002-10-21 14:38
2002.11.11
Если 2а IBQuery вешаются на одну IBTransaction1, какой из них


1-34050
vow
2002-10-30 20:24
2002.11.11
file.log


6-34155
Silenser
2002-09-10 12:18
2002.11.11
Чат в локалке




   Наверх