博世BMI160驱动程序 C语言编程,如何使用PSoC 6制作完整的测试系统来与BMI160进行通话...

本文详细介绍了如何使用PSoC 6开发板配合C语言,结合博世BMI160驱动程序库,创建一个完整的测试系统。内容包括克隆BMI160驱动程序库、创建PSoC 6项目、实现BMI160的I2C通信以及读写功能,并展示了测试固件的编写过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我一直在研究一系列PSoC 6项目,以准备一些新视频并在Embedded World上使用。对于其中一个项目,我需要一个动作敏感的遥控器......并且我们很方便地将一台博世BMI160运动传感器放到了CY8CKIT-062-BLE开发套件随附的新CY8CKIT-028-EPD屏蔽罩上。

在本文中,我将向您展示如何使用PSoC 6制作完整的测试系统来与BMI160进行通话。步骤是:

克隆博世BMI160驱动程序库

创建一个新的PSoC 6项目并添加驱动程序库

为博世驱动程序创建HAL

创建主要固件并进行测试

克隆博世BMI160驱动程序库

当我开始这个时,我知道董事会有一个运动传感器,但我不知道是什么样的。我假设它是基于I2C的传感器,所以我连接了桥接控制面板并探测I2C总线。但是这就是它所说的:

f7c437ce516b6e502a57b25130debead.png

那么......到底什么?然后,我看了看董事会,试图弄清楚发生了什么......低下,看看......我的电路板是在添加运动传感器之前完成的原型。这里是:

40decbeea6ece7423369d76aa94bd2ab.png

这里是一块带有传感器的电路板。

60cdbde5d3a906ac7c016dfbf13792cd.png

当我插入该板并使用Bridge Control Panel进行测试时,我会得到:

75eb6ad6d92a358bd579b2652b85ae29.png

接下来我做的就是看原理图。OK,您可以看到惯性测量单元(IMU)是连接到I2C总线的BMI160。另一件很酷的事情是,devkit团队连接了两条中断线。这些线路通常用于IMU向PSoC 6发送信号(例如,用户可能开始移动)。

69bd628af1505e5c511baa48357e3998.png

查看原理图后,下一步是查看BMI160数据表并尝试弄清楚如何与设备进行连接。通常这些设备有一堆寄存器,其位数字段的数量令人难以置信。这一直是这个过程中不好玩的部分。但是这次当我去博世网站上的BMI160设备页面时,有一个按钮显示“文档和驱动程序”,当您点击它

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值