Вопрос по ADAM-5510 |
Ответить |
Автор | |
Новичок Присоединился: 10 Апрель 2006 Категория: Ukraine Online Status: Offline Публикации: 3 |
Опубликовано: 20 Март 2008 09:41 |
Использую COM4 контроллера ADAM-5510 для управления частотниками Danfoss по RS485 (COM2 занят под другую сеть RS485). Сеть работает в тяжелых условиях. Посылка сообщения состоит из 16 байт (FC телеграмма), последний байт - контрольная сумма. При обмене иногда происходит изменение какого-либо бита в сообщении и соответственно - затем это обнаруживается в несовпадении контрольной суммы. Испульзую библиотечные функции Advantech для работы с COM4. Но никакой реакции на прием ошибочного байта нет, и в библиотеке нет функций контроля статуса порта. Ведь в этом случае должна возникать ошибка паритета (9600,even,1stop) и в UART устанавливаться соответствующий бит регистра состояния. Дело, конечно,
в помехе и с этим еще нужно работать. Но ведь ПО должно это отлавливать. Коллеги, посоветуйте что-нибудь дельное. Заранее большое спасибо. |
|
Профили участников
Послать частное письмо
Поиск публикаций участников
Посетить домашнюю страницу участника
Добавить в список приятелей
Действительный член Присоединился: 02 Октябрь 2007 Категория: Russian Federation Online Status: Offline Публикации: 427 |
|
По собственному опыту знаю, что анализ контрольной суммы зачастую не делается. Да, она расписывается в документации, но, на приеме ее устройство не смотрит. Кстати, то же и с паритетом. А под win анализ паритета вообще отдельная радость. И в некоторых сочетаниях наличия паритета у передатчика и приемника спокойненько все пропускается при несовпадении. Совет один - смотреть принятые данные на достоверность : число принятых символов должно быть в вилке правильного ответа. Плавающие числа должны быть плавающими. Поля ответов должны иметь приемлемую длину и в них не должно быть лишних (не ожидаемых) символов. Это все для символьных протоколов и когда есть возможность самому после приема посмотреть что же там пришло.
|
|
При экспериментах ни один чайник не пострадал
----------- Плохому системному интегратору всегда OPC сервер мешает. ______________ Пишу на C++ за еду |
|
Новичок Присоединился: 10 Апрель 2006 Категория: Ukraine Online Status: Offline Публикации: 3 |
|
Vald, спасибо за ответ. Может кто встречал более полное
описание архитектуры ADAM-5510? В стандартной доке есть только базовые адреса СОМ1 и СОМ2, а СОМ4? Здесь http://forum.cta.ru/forum_posts.asp?TID=2360&PN=0&TPN=2 видел в листинге адрес DIP-пеключателя (138h). Значит где-то же такая информация есть. То, что искаженный байт функция com_232_485_rx() возвращает без какого-либо уведомления, этого конечно быть не должно. Хотя-бы она его игнорировала. |
|
Действительный член Присоединился: 15 Октябрь 2003 Категория: Belarus Online Status: Offline Публикации: 141 |
|
Я тоже хотел бы узнать адреса для СОМ4...
Буду очень благодарен, если у кого есть такая информация |
|
Участник Присоединился: 02 Декабрь 2010 Online Status: Offline Публикации: 68 |
|
Доброе время суток! Адреса Com портов контроллера Адам 5510 COM1 - 0x03F8 COM2 - 0x02F8 COM_PGM - 0xFF80 COM4 - 0x03E8 Микросхемы приемопередатчиков для Com1, Com2 и Com4 одинаковые эта UART 16550 А порт COM_PGM (Com3) является частью центрального контроллера R8800. В свае время мне надоел гавно код стандартной библиотеки, и я разработал сваю библиотеку, которая работает с com портами контроллера Адам 5510. |
|
Новичок Присоединился: 06 Сентябрь 2011 Online Status: Offline Публикации: 2 |
|
Добрый день! Может кто сталкивался с подобным или что-нибудь подскажет. Имеется блок ADAM-5050, 8 выходов которого (с 0 по 7й) сконфигурированы как входные, а другие 8 - на выход. Проблема в том, что последние продолжают работать только на вход. При подаче на них сигнала принимают значение 1цы, но напряжения на выходе не коммутируется. Если подключить к какому либо выходному каналу внешнюю нагрузку, то он также принимает значение 1цы... Что скажете, товарищи спецы? Блок "умер"?
|
|
Действительный член Присоединился: 15 Октябрь 2003 Категория: Belarus Online Status: Offline Публикации: 141 |
|
Poison !!!
Большое спасибо за информацию !!! |
|
Действительный член Присоединился: 27 Сентябрь 2006 Online Status: Offline Публикации: 125 |
|
Есть возможность использовать CAN? Там аппаратная реализация проверки ошибок. |
|
Ответить |
Переход на форум | Права доступа на форуме Вы не можете публиковать новые темы в этом форуме Вы не можете отвечать на сообщения в этом форуме Вы не можете удалять Ваши сообщения на этом форуме Вы не можете редактировать Ваши сообщения на этом форуме Вы не можете создавать голосования на этом форуме Вы не можете выражать своё мнение в голосованиях на этом форуме |