¿La comunicación CAN es síncrona o asíncrona?

En primer lugar, debemos entender qué es la comunicación sincrónica.

La comunicación síncrona significa que la comunicación que ocurre en el bus está sincronizada con otros nodos. Puede ser comunicación basada en reloj o comunicación esclava maestra. En el caso de un reloj basado, un reloj global estará disponible y al marcar ese reloj se sincronizarán todos los Nodos. Mientras que en el caso de la comunicación basada en el Maestro, el Maestro se encarga de la sincronización del bus.

Ahora llegando a CAN, CAN es comunicación de bus lineal multimaestro. Significa que cada nodo puede iniciar y transmitir mensajes. No hay control sobre la comunicación y puede transferir en cualquier momento. Para facilitar la comunicación y evitar colisiones, se implementa la lógica de arbitraje.

Según la explicación anterior, podemos decir claramente que CAN es comunicación asincrónica.

Espero que aclare tu duda.

Hola, gracias por el A2A.

Sí, siguiendo la definición de la especificación de Bosch para CAN2.0, podemos concluir claramente que es una comunicación de bus asíncrono ya que no hay un reloj común para todos los nodos.

Pero luego surge la pregunta de si no hay reloj y cómo se sincronizan los nodos con el transmisor, aquí aparece el concepto de temporización de bits que se explica claramente en la propia especificación.