Tengo una placa integrada, basada en Allwinner V40, que tiene una interfaz serial (UART) a niveles de voltaje TTL. Accedo a esta interfaz con una pequeña placa adaptadora (MAX232) y un adaptador RS232->USB.
Normalmente, esta interfaz está configurada para enviar información de depuración (/dev/ttyS0 en Linux). Puedo encenderlo y apagarlo, y puedo enviar y recibir datos como quiera. Sin embargo, algo más envía datos exactamente cada diez segundos. Así es como se ve la basura (10 segundos entre cada línea, grabados a 9600 baudios, la tercera línea la he enviado yo).
Como referencia, esta es la primera línea en hexadecimal:
0A 05 31 04 41 6C 4E 0A 02 39 02 F3 F0 F4 F7 F1 F1 F6 F3 F1 F6 F1 FF FF FF FE FF FF FF FF FF FF FF
Intenté cambiar la configuración de baudios, etc., en caso de que algo más esté enviando con una velocidad de baudios diferente, pero eso no conduce a nada. También intenté deshabilitar Bluetooth, ya que Raspberry Pis tiene un problema similar cuando Bluetooth está habilitado. Eso no ayudó, pero tampoco empeora si Bluetooth se usa activamente.
Este es un UART de dos hilos, no hay control de flujo. UART 0 está conectado a PB22 y PB23 en el SoC, lo que parece correcto. Desde mi sys_config.fex (estoy usando el kernel heredado/Allwinner):
[uart0]
uart0_used = 1
uart0_port = 0
uart0_type = 2
uart0_tx = port:PB22<2><1><default><default>
uart0_rx = port:PB23<2><1><default><default>
[uart0_suspend]
uart0_tx = port:PB22<7><1><default><default>
uart0_rx = port:PB23<7><1><default><default>
Espero que alguien reconozca el patrón de bits y pueda decirme qué lo causa. ¿Algunas ideas?
Verifique con lsof /dev/ttyS0 si hay otro proceso usando el puerto.
Spehro Pefhany
jdm
tubo
grep -R "HELLO THIS IS A TEST" /
Spehro Pefhany
CapnJJ
jdm
jdm
tubo
Tony Estuardo EE75
filo
jdm
eGTouchD
que abría aleatoriamente todos los TTY y les escribía. Sin embargo, tenías que usar el comando repetidamente para atraparlo en el acto. Si responde con el truco lsof, puedo aceptarlo para que pueda obtener el representante :-).