打印
[应用相关]

SPI读数异常

[复制链接]
556|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yinxiangh|  楼主 | 2020-6-26 16:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
陀螺加速度芯片数据采集驱动编写,遇到一个奇怪的问题,请大家帮忙分析一下。
起初用的传感器芯片型号是BMI055,单片机STM32F405,使用硬件spi,读写数据均正常。
后将传感器芯片型号换成BMI088,单片机和SPI驱动包括引脚等都不变,仍是硬件spi,发现每次读传感器的寄存器要读两次才能读出来正确的值。

使用特权

评论回复
沙发
ousj| | 2020-6-26 16:56 | 只看该作者

还有什么现象?能再详细描述下吗?

使用特权

评论回复
板凳
yinxiangh|  楼主 | 2020-6-26 17:01 | 只看该作者

以读取ACC相关寄存器为例,以下为读取寄存器时序:

      读寄存器              应读出结果         实际结果
      0x00                   0x1E                0x00
      0x00                   0x1E                0x1E
      0x41                   0x00                0x1E
      0x41                   0x00                0x00
      0x58                   0x04                0x00
      0x41                   0x00                0x04
      0x41                   0x00                0x00

      根据上表,基本上就是每次读的实际结果都是上一次应该读出的结果,也就是滞后一个读取周期。

使用特权

评论回复
地板
guoyt| | 2020-6-26 17:04 | 只看该作者
看传感器手册

使用特权

评论回复
5
yinxiangh|  楼主 | 2020-6-26 17:07 | 只看该作者
055和088在通讯配置上并没有什么明显不同的地方。

使用特权

评论回复
6
chuxh| | 2020-6-26 19:12 | 只看该作者

是不是速度太快了

使用特权

评论回复
7
llljh| | 2020-6-26 19:17 | 只看该作者
发送 写addr和reg 两个byte 之后要等50ms再去发送 读addr 之后的byte

使用特权

评论回复
8
supernan| | 2020-6-26 19:21 | 只看该作者

速度是多少?看下读写是否繁忙?

使用特权

评论回复
9
pangb| | 2020-6-26 19:24 | 只看该作者
看看时序或速率是否有问题。

使用特权

评论回复
10
zyf部长| | 2020-6-26 19:27 | 只看该作者

看芯片资料吧,用过一个AS5048磁角度传感器,资料里就写明了读取的是前一命令的结果,所以用起来觉得很别扭

使用特权

评论回复
11
yinxiangh|  楼主 | 2020-6-26 19:33 | 只看该作者

硬件上的连接是不是正常
程序的读取速度是不是太快

使用特权

评论回复
12
ousj| | 2020-6-26 19:35 | 只看该作者
很有可能速度快了

使用特权

评论回复
13
kangzj| | 2020-6-26 19:39 | 只看该作者
稳定后在去读取

使用特权

评论回复
14
wangpe| | 2020-6-26 19:42 | 只看该作者
是否和传感器有关系呢

使用特权

评论回复
15
yinxiangh|  楼主 | 2020-6-26 19:45 | 只看该作者

唉,还是没有什么结果,算了,多谢大家啦

使用特权

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

本版积分规则

723

主题

7134

帖子

2

粉丝