找回密码
 注册
关于网站域名变更的通知
查看: 530|回复: 1
打印 上一主题 下一主题

SPI读数异常,不知道出了什么问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-1-21 15:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
最近做陀螺加速度芯片数据采集驱动编写,遇到一个奇怪的问题,请大家帮忙分析一下。9 Y' _! _. T( {
起初用的传感器芯片型号是BMI055,单片机STM32F405,使用硬件spi,读写数据均正常。* {- }$ c! Y, j! H0 v: i
后将传感器芯片型号换成BMI088,单片机和SPI驱动包括引脚等都不变,仍是硬件spi,发现每次读传感器的寄存器要读两次才能读出来正确的值。
$ T2 t/ |* i7 |+ K0 D# S; x+ {! i" o; @0 g- o: _9 d& E8 z
8 M/ V" J: ]; K* o" Q
以读取ACC相关寄存器为例,以下为读取寄存器时序:
/ h( T0 b1 o2 X6 S/ J! w6 G* L
( |/ Q7 _; U/ E7 ~; [      读寄存器              应读出结果         实际结果, X* D9 q" v: U
      0x00                   0x1E                0x009 X! J) Q1 _+ \+ B; D7 n
      0x00                   0x1E                0x1E
6 v9 a- H  |/ x8 p: V      0x41                   0x00                0x1E$ S4 N2 t' ?1 H
      0x41                   0x00                0x00) T1 b3 a/ o) i4 D) w2 `/ P
      0x58                   0x04                0x00
( }  b# n& v& r3 x9 F3 j2 n      0x41                   0x00                0x046 c' N+ ^# ]: u0 o# K
      0x41                   0x00                0x00
0 p# l7 B- X9 F! i: J
" }! \$ o1 F4 E; }      根据上表,基本上就是每次读的实际结果都是上一次应该读出的结果,也就是滞后一个读取周期。看传感器手册,055和088在通讯配置上并没有什么明显不同的地方。
0 I$ f8 R% y8 [8 o8 f4 C      不知道大家有没有遇到过这个问题的,麻烦指导一下这个问题可能是什么原因造成的,感谢!0 Z& E8 P- o% s, H7 x

9 l. F' a% z  r7 }7 T7 ], {' F. I4 t

该用户从未签到

2#
发表于 2020-1-21 16:13 | 只看该作者
可以用示波器看看SPI的时序5 D3 @- W+ p8 ]3 `, j0 b4 _* \
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-8-18 15:49 , Processed in 0.109375 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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