Si bien CAN puede ser un poco "exagerado", siempre es preferible que tengas esa opción. Breve comparación o CAN versus RS232 / RS422 / RS485:
Ventajas CAN:
- Mucho más robusto y tolerante a EMI. Pero en términos de la tecnología en sí y en términos de protección incorporada en un transceptor estándar.
- Funcionará bien sin cables blindados a velocidades inferiores.
- Manejo integrado de errores, CRC y sincronización de cuadros. Así que no hay necesidad de inventar otro protocolo oscuro basado en UART personalizado. Lo que significa que las CPU no tienen que perder tiempo codificando / decodificando, calculando CRC, etc.
- Es fácil de mantener y de rediseñar desde un sistema punto a punto a un sistema de múltiples nodos, si fuera necesario en el futuro.
CAN desventajas:
- No es realmente una opción sensata a menos que su MCU tenga un periférico CAN en el chip. Los controladores CAN externos son onerosos y una cosa del pasado.
- Puede tener un consumo de corriente ligeramente mayor que las soluciones basadas en UART.
El costo de los transceptores CAN frente a los transceptores RS-xxx debería ser aproximadamente el mismo (excepto si se seleccionan transceptores de basura antiguos como MAX232 que necesitan 5x 1uF de tapas). Los niveles de voltaje de la señal no importan, hay transceptores CAN y RS-xxx para 3.3V y 5V.
El número de cables para un sistema semi-dúplex será 3 en cualquier caso. En el caso de CAN, tiene CAN H, CAN L y señal de masa. En el caso de, por ejemplo, RS-422, usted tiene T +, T- y señal de masa. En cualquier caso, no se recomienda omitir la señal de tierra, no escuches a las personas que te dicen lo contrario.