找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2385|回复: 7
打印 上一主题 下一主题
收起左侧

STM32F429,SPI1和SPI4可以共用片选引脚吗?

[复制链接]
跳转到指定楼层
楼主
ID:895436 发表于 2021-4-5 21:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
STM32F429,SPI1和SPI4可以共用片选引脚吗?读取数据的时候给低电平控制SPI1和SPI4,然后用DMA传输,另外,多组SPI可以同时工作吗?比如SPI1,SPI4,SPI5,SPI6同时读取连接的4个传感器数据,四个传感器共用片选,麻烦路过的大佬给个意见
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:160500 发表于 2021-4-5 21:31 | 只看该作者
可以。只要传感器都准备好
回复

使用道具 举报

板凳
ID:895436 发表于 2021-4-6 19:53 | 只看该作者
liuzx66 发表于 2021-4-5 21:31
可以。只要传感器都准备好

谢谢回复,我用四组SPI同时读取四个传感器,用一个片选引脚控制四个传感器,只要初始化好传感器就可以实现吗,以前没试过,有点儿担忧
回复

使用道具 举报

地板
ID:824490 发表于 2021-4-7 10:20 | 只看该作者
不建议这么做,CS使能后,设备就进入待命状态,这时SCK、SDA上的电平如果不稳,可能会让设备误动作。
不如CS独占IO,把SDA、SCK复用
回复

使用道具 举报

5#
ID:895436 发表于 2021-4-8 09:10 | 只看该作者
名字不是重点 发表于 2021-4-7 10:20
不建议这么做,CS使能后,设备就进入待命状态,这时SCK、SDA上的电平如果不稳,可能会让设备误动作。
不如 ...

谢谢回复。我是想采集16个角速度传感器进行数据融合,如果用一组SPI读取16个,片选引脚每次都要拉低拉高的读取数据,数据在时间上可能有误差,所以想用这种方法,一组SPI读四个传感器,四组SPI共用四个片选引脚,不知道您有什么好的方法吗?用译码器可以做吗
回复

使用道具 举报

6#
ID:824490 发表于 2021-4-8 10:05 | 只看该作者
严格意义上讲,“四组SPI同时读取四个传感器”是做不到的。四组SPI不管是软还是硬,都只能一个一个地读,全部读入后,再做融合处理,要想“同时”,只能缩短每个SPI的操作间隙,或提高总线CLK
回复

使用道具 举报

7#
ID:895436 发表于 2021-4-8 11:29 | 只看该作者
名字不是重点 发表于 2021-4-8 10:05
严格意义上讲,“四组SPI同时读取四个传感器”是做不到的。四组SPI不管是软还是硬,都只能一个一个地读,全 ...

主要是没有什么好的方法去读取16个传感器数据,用一组SPI读取16个,得用16个片选引脚,如果有4-16译码器做会不会比GPIO模拟片选引脚的效率高?
回复

使用道具 举报

8#
ID:160500 发表于 2021-4-8 11:57 | 只看该作者
片选只是选中器件,怎么读取是看spi总线的时序,一个片选控制几组spi口是完全可以的
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表