最近在学STM32,学到SPI了,但是各种教程只有32作为主机,往各类FLASH芯片里写数据,个人觉得这样并不能看出SPI通信的核心。所以我想用两块32通过SPI进行通信,主机的程序一大堆,但是作为从机的程序就很少了,而且网上的从机程序都是求助的,各种各样的问题。
结合以前用PIC写SPI通信程序的经验,看了32的SPI模块的资料后,开始写从机程序,从机采用中断方式接收。调了几天,终于实现了两者之间的通信。同时也发现了一个网友们遇到的共同问题,就是主机接收到的从机数据跟从机发送的数据实际上是有移位的,例如从机发送1、2、3、4、5;主机接收到的是2、3、4、5、1;这是个问题,而且也没见网上有什么解决办法,所以觉得只要在通信时将数据修正一下还是不影响通信质量的。
压缩后的程序太大无法上传,有需要的可以找我,大家共同学习进步。 |
|