Estoy tratando de implementar un half-duplex 1Mbps bus RS485 (1 master control ~8 motores). Después de enfrentarse a los ocasionales errores de comunicación he invertido en un Saleae lógica 4.
El RS485/B líneas probaron directamente dar este resultado.
(framing error al final parece que no lastime, así que voy a omitir por ahora) y aquí está la línea de TX (GND referencia) de un solo paquete que se está enviando desde el maestro
Me estoy dando cuenta que las velocidades de rotación son bastante lentos (por no hablar de la oscilación). Estoy usando cables CAT5, longitud total en el momento de esta prueba era de ~5 pies, la conexión de maestría y 4 esclavos.
Yo estoy usando la SP3485EN transceptor (RX/TX conectado directamente a la USART del microcontrolador pines). No es de 220 ohm resistor de terminación (entre a y B) que se rellena en el maestro en el momento, y he tratado de agregar y quitar el 220ohm en el otro extremo (en el último esclavo), pero no parece hacer ninguna diferencia. (He intentado añadir un esquema, pero necesitan 10 reputación de publicar más de 3 imágenes)
¿Hay algún consejo sobre cómo mejorar la forma de las velocidades de rotación? Supongo que en el momento es que a mi los errores de comunicación son causados por las señales digitales de ser lo que no son cuadrados. Estoy usando STM32F3 microcontroladores con el USART configurado en 50MHz velocidad.
Hay pasivos que podrían añadirse antes de que el transceptor? Después de que el transceptor? Debo ser el uso de diferentes transceptor?
Sólo me eligió para responder a añadir una imagen de un alcance de lectura de la TX transmisión anterior, y como todo el mundo sugiere, estas son muy cuadrados mirando, y las frecuencias más bajas son a causa de la saleae de muestreo. Gracias por la ayuda! Voy a pasar a la depuración del firmware.