在使用STM32F407 的SPI1时,为实验最快速度,在STM32CubeMX中配置为42MBits/s,此时预分频系数为2。如下图:
在实验过程中发现,从设备可以准确接收到SPI1发来的数据,但上传的数据总是出错,偶尔还会出现两次接收同一个寄存器的值都有部分位不一致。
在STM32CubeMX中降低波特率到21MBits/s,接收数据正确!想来STM32CubeMX既然可以设置,应该就可以使用啊,迷茫中~~直到在datasheet中找到如下一段——SPI1最高波特率只能到37.5MBits/s!
看来还是不要太懒,太依赖STM32CubeMX工具,而是要多自己查原始资料。