Cambiar el modo operativo del transceptor CAN

1

Tengo dos controladores CAN independientes MCP2515 con una interfaz SPI, dos transceptores CAN TJA1042 y dos placas Arduino Uno. Como sabrás, el TJA1042 tiene dos modos operativos:

  1. modo de suspensión
  2. modo normal.

Si quiero cambiar el modo de operación de un transceptor del modo de suspensión al modo normal (despertarlo), debería enviar un patrón de activación de ondas desde el otro transceptor a través del bus CAN que se encuentra en el modo normal. Por ejemplo, uno de los patrones de reactivación es: 5.5 microsegundos bajo, 5.5 microsegundos alto y nuevamente 5.5 microsegundos bajo. Ahora no sé cómo enviar estos patrones con un Arduino, porque MCP2515 tiene una interfaz SPI.

Uso biblioteca: See-Studio / CAN_BUS_Shield

¿Cómo puedo hacer esto?

    
pregunta mtp

1 respuesta

0

La lectura de las hojas de datos es aparentemente una habilidad que muere ...

No hay un "patrón de activación" especial que puedas enviar. El modo de espera se inicia estableciendo el pin STB alto y el transceptor permanecerá en él hasta que lo establezca en bajo. En este modo, no puede producir una salida RX normal, por lo que no puede "decodificar" ningún patrón.

Todo lo que hace es emitir un nivel bajo en el pin RXD cuando detecta un estado dominante en un bus durante más tiempo que el "T (fltr) bus", que es de aproximadamente 1.5 µs. Esto es aproximadamente la longitud de 1 bit a una velocidad de datos de 660 bps.

En efecto, cualquier actividad en un bus finalmente activará RXD, lo que le permitirá activar el transceptor con el pin STB y comenzar a recibir datos.

    
respondido por el Maple

Lea otras preguntas en las etiquetas