У нас есть ваш контроллер WirenBoard 7 и графический дисплей DWIN. Их необходимо объединить. У дисплея питание 5 вольт, линия для обмена данными UART с уровнями 3.3 вольта. Обратили внимание, что явно прямого выхода UART на клеммы вашего контроллера нет. Как поняли из документации на колодках MOD есть возможность “взять” UART и перекинуть перемычками на клемму. Это мы сможем сделать. Но есть вопрос про второй выход RS485, что справа снизу крайний, он еще поддерживает CAN. Вопрос - это прямой выход UART на клеммы, или же все таки у вас внутри установлены драйверы CAN и RS485? Как это организовано?
Работает через драйвер.
Утилиты cansend и candump есть в стандартном наборе ПО контроллера. Если по каким-то причинам их нет, можно поставить пакет can-utils:
apt update && apt install can-utils
Настроить конфигурацию так же можно:
веб интерфейс / конфигурационные файлы / модули расширения и порты
Уточню что работа происходит через стандартную подсистему Linux — SocketCAN. CAN bus Linux driver
На контроллере CAN мультиплексирован (выведен на те же клеммники) со вторым портом RS-485 он может работать в режиме UART-CAN (также называемая иногда просто шиной CAN или RS-CAN) - используется физический уровень CAN для полудуплексного последовательного порта UART.
Я бы Вам советовал с помощью модуля Модуль расширения WBE2-I-RS232 - Wiren Board получить на MODx RS232 стандартных уровней, а на стороне панели поставить конвертер TTL в RS232 любой конструкции. Так будет безопаснее, чем брать RX/TX TTL уровня с MODx. Это возможно (3 перемычки в разъеме MODx), но я бы не рисковал, если дисплей дальше 10см от контроллера. MODx идут напрямую к процессору. И в случае выхода порта из строя (статика, разность потенциалов,…) приведет к лишению гарантии.
“Прямой UART” это очень короткие расстояния и ограничения по помехам и прочему. Обычно до полметра.
Если нужно далеко - преобразовывать в уровни RS232 и никак иначе.