ЗАО «ЗЭО»
Техническая поддержка пользователей => Тион-Про28, Орион28 => Тема начата: Сергей 16 RUS от 19 Декабря, 2012, 18:39:27
-
Добрый день!
Тион28, тестовый обрах WinCE с Вашего сайта.
Пытаемся наладить приемо-передачу с 485 интерфейсом. Шлем данные по UART (COM3) непосредственно на SP485 (DA8), данные приходят, но микросхема не отправляет данные. В зависимости от состояния управляющих сигналов на входе данной микросхемы (SHDN и RE) либо нет реакции, либо SHDN проседает до 0 при попытке записи данных. (см. скриншот)
(http://www.tehsmart.ru/1.BMP)
Просьба помочь разобраться с комбинацией управляющих сигналов.
-
Добрый день.
HKEY_LOCAL_MACHINE\Drivers\BuiltIn\COM3\Mode=2 ?
Желтый сигнал - на ножке 3 микросхемы DA8? Вообще, он должен быть инвертирован, логическая 1 - разрешение передачи. И менять уровень должен до начала передачи.
Образ WinCE записан последний?
-
Собственно вот где собака зарыта.
HKEY_LOCAL_MACHINE\Drivers\BuiltIn\COM3\Mode = 0. Информации об этом разделе реестра не нашел в документации. По умолчанию в образе стоял 0. В этом режиме как раз таки при начале передачи данных 3 ножка микросхемы DA8 становилась в 0 (что и показанно на скриншоте). Собственно выставив ключ реестра передача заработала.
-
Информация о настройке портов есть тут: интерфейсы (http://www.zao-zeo.ru/dokuwiki/doku.php/tion-pro28#интерфейсы)
-
Управляет ли ТИОН направлением приемо-передачи сам, или необходимо PORT1_485_OFF (GPIO 77) дергать вручную перед записью данных?
Данная ножка постоянно находится в 1 состоянии, после отправки данных по UART, становится в 0 примерно на 40 мс, затем возвращается в исходное состояние.
-
Управление автоматическое. В режиме Mode=2 сигнал PORT1_485_OFF переходит в состояние 1 на время передачи, затем опускается в 0.
-
1 проблему так и могу решить.
Старший бит в байте ответа при считывании из буффера чтения последовательного порта всегда в 1. Доступно объясняя: отправь ты 1 или 129 (отправка идет с МК) считается всегда 129, хотя осцилограмма данных посылок разная и соответствует отправленным данным, проблема именно в чтении. Данной проблемы не было работая напрямую (uart без 485), подключив же 485 с обоих сторон проявилась. Проблема не зависит от настроек порта, скорости чтения и т. п.
-
Правильно ли я понял: при приеме данных по RS-485 Тионом (в реестре Mode=2), старший бит принятого байта всегда равен 1? На осциллограмме при этом все правильно?
-
Да вы все правильно поняли.
В реестре mode=2. На осциллограме снятой с ножки RO микросхемы sp485 установленной на ТИОНЕ данные идут верные. Старший бит именно при чтении с буфера порта.
-
Проверил прием по RS-485. Данные пришли без ошибок.
Попробуйте увеличить время между посылками.