Здравствуйте. На просторах интернета не смог найти документации по поводу использования порта 485. Есть ли какие-то сторонние приложения для работы с этим портом у панели YC-SM08P? Или может быть API?
Здравствуйте.
В HMI панелях, которые у нас в продаже, отсутствует RS-485. - дезинформация, порт есть.
Панель настенная 8 дюймов YC-SM08P - Wiren Board
Но тут в технических характеристиках написано, что панель имеет интерфейс RS-485
Да, сейчас проверим теорию о том как работать с портом.
Поделюсь информацией с вами и дополним Вики.
Добрый день!
Как правило, с этим портом работают пользователи, с навыком разработки под Android. У нас нет документации на него, обычно клиенты его не используют. Запросили у разработчика панели информацию - они предоставили схему и тестовое приложение. Их прикрепляю.
Постараемся разобраться и добавить информацию в нашу вики, но подробную пошаговую инструкцию, скорее всего, делать не будем.
Подскажите, достаточно ли вам прикреплённых документов или что-то ещё важно получить?
Возможно, в данной ситуации вы захотите вернуть купленную панель. Можете ознакомиться с условиями возврата.
C143342_MAX13487EESA_2017-12-04.PDF (255,2 КБ)
Serial Port Utility.rar (7,8 МБ)
uart.rar (49,0 КБ)
Спасибо, хоть прямой ответ вы и не дали, но приложение, которое вы прикрепили помогло разобраться.
Вот решение:
На Android-устройствах доступ к последовательным портам обычно осуществляется через устройства /dev/tty*
После экспериментов мне удалось получить данные с порта /dev/ttyS7, который, как оказалось, является интерфейсом RS-485 на панели YC-SM08P.
Дополнение:
Сам по себе порт /dev/ttyS7 не передает данные. Для того, чтобы начать получать их нужно его дополнительно настроить. Лично я настройку проводил в терминале (через ADB ссылка). Вот с такими параметрами данные начинают идти:
stty -F /dev/ttyS7 115200 cs8 -cstopb -parenb -crtscts -icrnl -opost -isig -icanon -iexten -echo
параметры 115200, cs8, -cstopb и -parenb зависят от настроек вашего устройства, с которого вы получаете данные.
Параметры и их значения
-F /dev/ttyS7: Указывает файл устройства, к которому будут применены настройки (/dev/ttyS7в вашем случае).115200: Скорость передачи данных (baud rate). Возможные значения:
- Стандартные значения скорости:
300,1200,2400,4800,9600,19200,38400,57600,115200и другие, в зависимости от поддерживаемых значений на устройстве. - Определяет скорость передачи данных в битах в секунду.
cs8: Размер символа (character size), указывающий, сколько бит данных содержится в одном символе. Возможные значения:
cs5,cs6,cs7,cs8— количество бит: от 5 до 8. В большинстве случаев используетсяcs8(8 бит на символ).
-cstopb: Устанавливает количество стоп-битов. Возможные значения:
cstopb— 2 стоп-бита.-cstopb— 1 стоп-бит (обычно используется в асинхронных соединениях).
-parenb: Управляет битом чётности (parity bit), который используется для проверки ошибок. Возможные значения:
parenb— включает бит чётности.-parenb— отключает бит чётности (обычно используется, когда контроль чётности не требуется).
-crtscts: Управляет аппаратным контролем потока RTS/CTS (Request to Send / Clear to Send). Возможные значения:
crtscts— включает аппаратный контроль потока.-crtscts— отключает аппаратный контроль потока (обычно используется, когда устройство не требует RTS/CTS).
-icrnl: Входной перевод строк (input carriage return to newline). Возможные значения:
icrnl— преобразует символыCR(carriage return) вNL(newline).-icrnl— отключает преобразование, отправляяCRсимволы как есть (полезно для работы с устройствами, которые не используютNL).
-opost: Управляет постобработкой выходных данных (output post-processing). Возможные значения:
opost— включает постобработку.-opost— отключает постобработку, отправляя данные в исходном виде.
-isig: Управляет сигналами управления (например,Ctrl+C,Ctrl+Z). Возможные значения:
isig— позволяет терминалу реагировать на сигналы, такие как прерывания (Ctrl+C).-isig— отключает сигналы, что полезно для последовательного ввода/вывода.
-icanon: Управляет каноническим (строковым) режимом. Возможные значения:
icanon— включает канонический режим, где ввод обрабатывается построчно.-icanon— отключает канонический режим, переходя в «сырое» состояние, где данные сразу передаются приложению.
-iexten: Управляет дополнительными управляющими функциями. Возможные значения:
iexten— включает расширенные функции (например,Ctrl+Vдля дословного ввода символов).-iexten— отключает дополнительные функции, оставляя только базовую передачу данных.
-echo: Эхо данных на терминале. Возможные значения:
echo— включает эхо, когда вводимые символы отображаются обратно на экране.-echo— отключает эхо, чтобы данные передавались без отображения на терминале (важно для последовательного ввода/вывода).
Не могу сказать точно нужны эти параметры все или только некоторые. Такую настройку порта проводит приложение от разработчика (uart.rar в предыдущем ответе), после чего данные начинают поступать. Я просто скопировал данную настройку.
Спасибо, что поделились. Добавили эту информацию и утилиту в документацию. Чуть позже опишем подробнее.
Только что дополнил свой ответ. Без этой информации данные с порта получить не удавалось