Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.11.11;
Скачать: 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 вся ветка

Текущий архив: 2002.11.11;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.019 c
6-34142
CrazyAngel
2002-09-12 17:33
2002.11.11
Маленький e-мail :)


14-34173
BKGG
2002-10-21 09:38
2002.11.11
программа которий читаеть DLL-и


3-33890
Fad
2002-10-22 14:11
2002.11.11
Ошибка в БД. Borland TUtility не помогает.


1-34015
dimonf
2002-11-02 12:53
2002.11.11
Как редактировать файл ресурса с расширением *.res?


3-33864
PAVELsinicinV
2002-10-11 13:46
2002.11.11
FastReport 2.4 Sum(Band) ....