Меню
![Главная](https://www.lcard.ru/sites/default/files/Logo.jpg)
+7 (495) 785-95-25
sale@lcard.ru
sale@lcard.ru
Страницы 1
Тема закрыта
|
||||
|
Скорость обмена данными с Е-24Купленный у Вас модуль Е-24 работает ТОЛЬКО на скорости 19200, на скоростях 9600 и 38400 с модуля идут данные, но совершенно хаотичные (скорее всего какой-то мусор), на остальных скоростях (2400, 4800 и 57600) ReadFile не возвращает управление (т.е. ждет данных из порта, но не получает их). Это "особенность" конкретного модуля, неправильная работа с ним или еще что-то? Теперь о том как проводилась проверка модуля. К сожалению бинарные модули примера работы с Е-24 даже не запускаются, так как DLL экспортирует функции с неиспорченными именами, а EXE их импортирует с испорченными (это не считая того, что они собраны в отладочном режиме и требуют cw3230.dll). Поэтому пришлось перенести пример на MS Visual C++ 6.0. Это оказалось не сложно (переопределение с помощью препроцессора _export в __declapec(dllexport|dllimport), поменять местами спецификаторы WINAPI и _export), проблемы вызвала только функция sleep, так как в win32 api она с большой буквы. После таких модификаций пример успешно собирается. Однако в примере скорость обмена с Е-24 ставится 57600, но на это скорости модуль, как я уже говорил, не работает. Поэтому были перепробованы все возможные скорости, результаты приведены в начале вопроса. Заранее благодарен за ответ. |
|||
|
||||
|
Re: Скорость обмена данными с Е-24Проблема известна. Но почему так случилось непонятно пока. |
|||
|
||||
|
Re: Скорость обмена данными с Е-24Насчет неработоспособности бинарников примера все просто, dll собрана на день позже exe (и скорее всего из других исходников). Но основная проблема, конечно же со скоростью обмена данными. Жду с нетерпением Спасибо за оперативный ответ. |
|||
|
||||
|
Re: Скорость обмена данными с Е-24Хотелось бы понять какие прогнозы на исправление данного дефекта? Из-за этого дефекта максимальная скорость сбора уменьшается в ТРИ РАЗА! Это тоже что купить модем на 56К, который работает только на 19200... |
|||
|
||||
|
Re: Скорость обмена данными с Е-24В течении ближайшей недели будем смотреть и устранять. |
|||
|
||||
|
Re: Скорость обмена данными с Е-24Уже прошло ДВЕ недели, а пока никакого ответа. Хотелось бы знать что будет с этим дефектом дальше. |
|||
|
||||
|
Re: Скорость обмена данными с Е-24Павел в отпуске, выйдет 10.05.2001. |
|||
|
||||
|
Re: Скорость обмена данными с Е-24Уже прошло больше месяца, а ответа в чем дело и, главное, когда это будет исправленно все нет. Что с этм дефектом, или про него просто благополучно забыли? |
|||
|
||||
|
Re: Скорость обмена данными с Е-24Для того чтобы на про этот дефект начали отвечать его надо повесить опять в начало списка создав новую ветвь обсуждений? Или Павел еще не вернулся из отпуска? |
|||
|
||||
|
Re: Скорость обмена данными с Е-24Поправил библиотеку.
ConfigE24COM((DWORD)hCom, Baud);
Должно работать до скорости 38400. 57600 - только с коротким кабалем связи. |
|||
|
||||
|
Re: Скорость обмена данными с Е-24Этот sleep не тоже что и Sleep - sleep(1) это задержка на 1 сек. |
|||
|
||||
|
Re: Скорость обмена данными с Е-24? Уточните, пожалуйста, характистики Е-24?
|
|||
|
||||
|
Re: Скорость обмена данными с Е-24Спасибо, на выходных попробую. "только с коротким кабелем связи" - это сколько метров или сантиметров? По моим расчетам максимальная частота сбора одновременно с четырех каналов при скорости обмена 57600 должна быть 360 Гц (если я ошибаюсь, то Павел поправит). Но следует отметить, что на таких скоростях оцифровки число значащих разрядов будет существенно меньше чем 22-бита. В инструкции к Е-24 есть табличка значимости бит в зависимости от скорости сбора и коэффициента усиления, но она только до 250 Гц. |
|||
|
||||
|
Re: Скорость обмена данными с Е-241. Полную табличку значимости бит Вы можете посмотреть в PDF файле по ссылке:
2. Насчет длины кабеля Павел выразился не совсем точно. Устойчивая работа на скорости 57600 зависит от длины кабеля и от аппаратной реализации COM порта на компьютере. На большинстве Notebook 57600 работает и с длинным кабелем, на PC длина должна быть не более 50-60 см. |
|||
|
||||
|
Re: Скорость обмена данными с Е-24Спасибо, еще один sleep(1) действительно помог, т.е. на 38400 модуль работает и с длинным кабелем стабильно, а на 57600 видимо действительно нужен более короткий кабель, так как есть сбои в посылаемых данных. В документации нет ни слова, о том когда и сколько надо делать sleep, сейчас получается, что в функции InitE24 два sleep(1) и один в функции Stop, т.е. получается 3 секунды – это минимальное время, которое работает InitE24. Для приложений с маленьким временем отклика это очень много, поэтому хотелось бы понять где, когда и насколько надо делать sleep. На слабых машинах моя программа общения с модулем E24 "виснет" при чтении из COM порта, возможно это связано с тем, что где-то не хватает sleep. |
|||
|
||||
|
Re: Скорость обмена данными с Е-24Важен тот последний sleep который я добавил -
|
Страницы 1
Тема закрыта
Адрес: 117105, Москва, Варшавское шоссе, д. 5, корп. 4, стр. 2
Многоканальный телефон:
+7 (495) 785-95-25
Отдел продаж: sale@lcard.ru
Техническая поддержка: support@lcard.ru
Время работы: с 9-00 до 19-00 мск