|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
10.06.2010, 09:50 | #1 |
Регистрация: 10.06.2010
Сообщений: 6
|
RS232, Библиотека Игоря Павлова TComPort
Использую библиотеку Игоря Павлова - TComPort.
Задача: опросить устройство, формат опроса [посылка команды - прием ответа] в асинхронном режиме. Трабл №1. Посылка команды проходит, ответ по с помощью onRead не считывается, а надо бы Трабл №2. Формат команды настройки конфигурации девайса (ICP CON 7018) : "%AANN...FF". Первый символ "%" дублируется и получается "%%AANN...FF", любой другой символ отправляется как есть. Как победить? |
10.06.2010, 12:39 | #2 | ||
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
...и что? ...не видно как вы посылаете отсюда было-бы понятно, если студент так вопрос задал, но по краткой ремарке "ICP CON 7018" вы же работаете с оборудованием, значит должны были научится формулировать мысли ...подробнее
Цитата:
Цитата:
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation |
||
10.06.2010, 16:20 | #3 | |||
Регистрация: 10.06.2010
Сообщений: 6
|
Цитата:
Цитата:
Цитата:
Посылка: %0000050600 Как посылается, лог Портмона: Код HTML:
0.00041492 Project1.exe IRP_MJ_WRITE Serial2 SUCCESS Length 12: %%0000050600. |
|||
10.06.2010, 16:32 | #4 | |
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
Цитата:
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation |
|
10.06.2010, 17:06 | #5 |
Регистрация: 10.06.2010
Сообщений: 6
|
На RS485 -> USB -> Виртуальный COM.
PHP код:
|
10.06.2010, 17:29 | #6 |
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
TC, вы прикалываетесь? не нужно приводить код отправки с самого компонента, вы думаете мы не можем заглянуть внутрь ...приведите полный код того как вы формируете пакет, как настроен компонент и как вызываете отправку ...к примеру:
Код:
Добавлено пока пробуете, потестьте на другом модуле http://www.programmersforum.ru/showp...69&postcount=8 (BСomPort, одиночный модуль)
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation Последний раз редактировалось raxp; 10.06.2010 в 17:37. |
11.06.2010, 21:14 | #7 | |
Регистрация: 10.06.2010
Сообщений: 6
|
Спасибо. Попробовал, потестил, нашел свои ошибки.
Возник еще вопрос. ПО опрашивает порт и парралельно фиксирует с помощью таймера время прихода ответа. Из-за возникающих таймингов при чтении, значение переменной инкрементирующейся в таймере, не соответствует реальному значению времени. Значения таймингов: Цитата:
|
|
11.06.2010, 21:33 | #8 |
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
ммм... достаточно вызвать логгирование при появлении данных на COM порте comReceiveData()...
Код:
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation |
12.06.2010, 13:24 | #9 |
Регистрация: 10.06.2010
Сообщений: 6
|
Угумс. Спасибо. Сделал чуть раньше чем прочитал, через GetCurrenttime.
Еще вопрос о структурах данных. Задача программы построения графика зависимости температуры на каждом канале от времени. Требуемая точность довольно высокая, показания снимаются три раза в секунду. Для отображения данных использую StringGrid. Но ее возможности ограничены Integer'ом. То есть 32 767. Получается, что теоретический потенциал это: 32 767 / 3 / 60 / 60 = 3 часа измерений. Что в принципе может быть достаточно, но хотелось бы часов 5 или 6. Есть идея хранить значения в массиве и отказаться от StringGrid, но вроде они более ресурсо_затратны? Если я не прав, поправьте меня. То есть вопрос в следующем, сможет ли программа адекватно работать с 8 массивами с ~ 50 000 значений, какие директивы, алгоритмы и настройки для этого надо использовать? |
12.06.2010, 13:28 | #10 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
вообще то integer -2147483648-2147483647.
мы не в паскале где было так как вы говорите Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Работа с RS232 в DELPHI | 100GRamm | Общие вопросы Delphi | 9 | 17.09.2021 00:18 |
Delphi 2009 - проблема с установкой компонента TComPort | cadil | Компоненты Delphi | 8 | 05.09.2010 03:27 |
Delphi 2009: проблема с работой компоненты TComPort | cadil | Компоненты Delphi | 10 | 01.04.2010 10:55 |
Поддержим Игоря Акинфеева | Квэнди | Свободное общение | 8 | 23.06.2008 22:23 |