打印
[STM32F3]

双STM32通过SPI进行通信

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

沙发
mintspring| | 2016-10-7 20:51 | 只看该作者
楼主的经验不错啊,确实是,如果遇到什么小问题,通过软件方式可以搞定,只要不影响使用的速率都是OK的

使用特权

评论回复
板凳
icecut| | 2016-10-7 21:08 | 只看该作者
等你搞定了别打补丁还不错位的程序,就会发现,以前写的不够好...

使用特权

评论回复
地板
songchenping| | 2016-10-8 09:34 | 只看该作者
不知道楼主的从机接收程序是自己写的还是参照官方程序。

使用特权

评论回复
5
mochou| | 2016-10-8 14:52 | 只看该作者
发一份看看呗

使用特权

评论回复
6
追梦的阿土哥|  楼主 | 2016-10-14 21:15 | 只看该作者
mintspring 发表于 2016-10-7 20:51
楼主的经验不错啊,确实是,如果遇到什么小问题,通过软件方式可以搞定,只要不影响使用的速率都是OK的 ...

主要是在网上发现很多一样的问题贴,都没有解决的,不知道怎么消除数据的错位~

使用特权

评论回复
7
追梦的阿土哥|  楼主 | 2016-10-14 21:16 | 只看该作者
icecut 发表于 2016-10-7 21:08
等你搞定了别打补丁还不错位的程序,就会发现,以前写的不够好...

确实是,所以需要大家共同指点指点~

使用特权

评论回复
8
追梦的阿土哥|  楼主 | 2016-10-14 21:17 | 只看该作者
songchenping 发表于 2016-10-8 09:34
不知道楼主的从机接收程序是自己写的还是参照官方程序。

自己写的,是用两片芯片通过SPI通信,而不是一片芯片的两个SPI进行内部通信~

使用特权

评论回复
9
追梦的阿土哥|  楼主 | 2016-10-14 21:17 | 只看该作者

压缩后还是太大了,上传受到了限制~

使用特权

评论回复
10
戈卫东| | 2016-10-14 21:18 | 只看该作者
MCU能做好主机就够了。。。。。

使用特权

评论回复
11
mintspring| | 2016-10-16 14:20 | 只看该作者
MCU一般就是作为主机用,SPI的外设自动完成的,不需要考虑两个单片机用SPI通信,两个MCU如果非要通信用uart

使用特权

评论回复
12
energyplants| | 2016-10-17 11:11 | 只看该作者
楼主的想法是非常不错的,软件基本都能搞定

使用特权

评论回复
13
yiyigirl2014| | 2016-10-17 11:27 | 只看该作者
如果非这么用,就一个配置为主机模式,一个是从机模式。一般双机通信不用SPI,用的是UART串口。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

10

主题

38

帖子

2

粉丝