wangjunzy 发表于 2018-3-2 10:51:27

STM32F031 SPI Slave发出去的CRC不正确,与正确值移位了1位

用STM32F031,设计一个SPI Slave;
另外一个STM32F031 作为Master来读取SPI Slave的10个数据,SPI slave发送完10个数据后,Set CRCNext。

尝试在SPI Slave的主程序里面和中断程序里面,去发送这10个数据,并Set CRCNext.
结果MISO的波形,如附件。
数据是uint16_t send_data={0x0001,0x0002,0x0003,0x0004,0x0005,0x0006,0x0007,0x0008,0x0009,0x000A};
与正确的CRC,左移了1位;

bargagebaobei 发表于 2018-3-2 11:03:57

跟你设置的CLKPhase和CLKPolarity是否有关

toofree 发表于 2018-3-2 12:14:06

建议用CPHA=1,CPOL=1,这种方式试一下。这个方式的逻辑更容易理解。

页: [1]
查看完整版本: STM32F031 SPI Slave发出去的CRC不正确,与正确值移位了1位