请留心!bmp280模块的读值,一些注意点和请教的问题。

2019-07-14 19:04发布

网上的IIC案例比较多,就试验IIC。不失所望,找到了一个可以直接用到STM32f103的demo,并且读到了值。
于是,把自己的代码仿照着demo修改,发现时序思路是一样的,除了延时我修改了些,但copy demo之后,用自己的程序下载,还是不能读。
再把我的主函数代码,放到demo里,却可以读。
鼓捣了之后,暂且发现了:
bmp280在重新烧写程序之后必须重新上电,但如果是用复位,这会使得CSB有低电平的情况,IIC就undefined 。(datasheet里是有说明iic时csb绝对不能有低电平)
如果不连CSB和SDO脚,是可以按复位键的。这就说明,bmp280内部是有上拉和下拉的。

请教的问题:
我在刚开始用SPI时,也是一直都不出值,网友给的驱动也跑不了。请问,在用SPI读取时,需要注意的是什么?类似于上面这种,时序思路是对的,但确实致命的点。多谢多谢。

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
8条回答
youngybird
1楼-- · 2019-07-15 00:36
补充:如果需要iic 驱动的程序,请留言。
ElecFans王岑
2楼-- · 2019-07-15 06:09
问题帖记得下次选择“问答”类型哦
youngybird
3楼-- · 2019-07-15 11:58
 精彩回答 2  元偷偷看……
youngybird
4楼-- · 2019-07-15 17:28
蓝剑威 发表于 2018-1-3 22:23
好好研读手册,应该是你程序的问题。可以参考我的。提供有IIC和SPI两种通信方式,还提供了对应程序的接线原理图文件。链接:http://bbs.elecfans.com/forum.php?mod=viewthread&tid=1502675&extra=

大佬,我用了你的程序。IIC成功读到值,SPI没有读到(id也没读出)。这说明是硬件电路的问题了吧。。。
另外,有句程序:我从

p_bmp280->BMP280_BUS_READ_FUNC(……)
指到:
#define BMP280_RD_FUNC_PTR        s8 (*bus_read)(u8, u8, u8 *, u8)

但(*bus_read)  没有找到实现的方法。
请问:是结构上的技巧么?还是?
蓝剑威
5楼-- · 2019-07-15 20:58
youngybird 发表于 2018-1-9 16:45
大佬,我用了你的程序。IIC成功读到值,SPI没有读到(id也没读出)。这说明是硬件电路的问题了吧。。。
另外,有句程序:我从

有的,你要了解程序的一个流程就知道了。
feiyg
6楼-- · 2019-07-15 23:05
dddddddddddddddddddddddddddddddddddd

一周热门 更多>