这种问题需要在代码里面做检测DMA接收情况,如果接收超时,从机也要重新初始化SPI设置。
最常见的情况,比如EFT环境测试,数据错,通信异常很常见,硬件不能保证安全通信的前提下,软件必须加入通信异常处理。同时通信数据需要使用校验例如CRC,否则在环境恶劣的地方通信会受到很大的影响。
我们做了一个工控产品,环境比较恶劣,SPI也是老有问题,就是这样解决的。
这种问题需要在代码里面做检测DMA接收情况,如果接收超时,从机也要重新初始化SPI设置。
最常见的情况,比如EFT环境测试,数据错,通信异常很常见,硬件不能保证安全通信的前提下,软件必须加入通信异常处理。同时通信数据需要使用校验例如CRC,否则在环境恶劣的地方通信会受到很大的影响。
我们做了一个工控产品,环境比较恶劣,SPI也是老有问题,就是这样解决的。
举报