Estoy usando un Renesas RL78 y SPI para comunicarme con una tarjeta SD. Tengo el controlador trabajando usando el comando único Baudrate de 400kBaud al enviar comandos y datos.
Por supuesto, esto es muy lento para la transferencia de datos, por lo que he implementado un método para cambiar la velocidad en baudios a 4 MBaud cuando se transmiten datos.
Puedo ver una respuesta de datos de la tarjeta SD, pero siempre es incorrecta. Espero ver 0xFE
y estoy recibiendo 0xFC
. Para probar lo que estaba causando esto, intenté cambiar mi método set_spi_baudrate()
para deshabilitar y volver a habilitar el canal SPI (permitiendo el cambio) pero no para cambiar realmente la velocidad en baudios desde la velocidad más lenta. Parece que el hecho de habilitar y deshabilitar el canal SPI está causando el comportamiento.
¿Alguien tiene alguna idea sobre cómo cambiar correctamente Baudrates dinámicamente en este dispositivo?