Esta es una idea con la que he estado jugando durante un tiempo y quería obtener una opinión. Cuando escuché por primera vez sobre CAN-FD pensé que iba a ser la respuesta a este problema. Sin embargo, la mayoría de los microcontroladores de rango medio no tienen soporte para CAN-FD (excluido LPC546). El STM32H7 tiene soporte, pero el costo de ese microcontrolador es demasiado alto para la mayoría de las aplicaciones. Hay algunos dispositivos como el TCAN4550 y la versión de Microchip que son bastante buenos, pero no tan flexibles.
Con un transceptor RS-485 y un iCE40 u otro FPGA se puede hacer un sistema de transceptor personalizado. La idea sería conectar un microcontrolador a través de SPI o UART al FPGA. El FPGA manejaría el protocolo real, que sería similar a CAN.
Las ventajas de este sistema son:
- Velocidad y costo flexibles del sistema (hasta 48 Mbit / s)
- Muchas direcciones configurables por dispositivo
- Opción para un sistema de multidifusión
- No restringido a una arquitectura particular
Mis preguntas son:
- ¿Realmente vale la pena el costo o simplemente estoy tratando de reinventar la rueda aquí?
- ¿Puede seguir el arbitraje a altas velocidades o se necesitan relojes muy precisos?
- ¿Ya hay un proyecto como este que no pude ver?
Podría ser un gran protocolo de código abierto que ciertamente estaría dispuesto a poner un poco de esfuerzo en el desarrollo.