
本期文章将分为5篇连载,前2篇将围绕模块功能详解展开,其后3篇将为大家讲解基于RW007相关DEMO的实现,文章目录如下:

今天我们将使用STM32F411-NUCLEO通过 RW007 BLE 功能读取来自KT6368A蓝牙模块的MPU6050传感器数据,实现BLE透传功能,算是学习 RW007 模块 BLE 功能的一个综合Demo实战哈!!!
硬件准备
1.STM32F411-NUCLEO 开发板,RW007 EVB模块
2.PC 电脑
3.USB 数据线
4.BLE 数据透传模块(如HC-08模块、KT6368A蓝牙模块等)
5.STM32F401-NUCLEO开发板,MPU6050模块
6.USB-TTL 模块(如CH340等)
7.杜邦线若干条
软件准备
1.RT-Thread Studio IDE软件
2.串口调试软件(xshell、SSCOM 等)
要实现MPU6050传感器数据BLE透传的功能,需要分为发送端设备和接收端设备。
发送端设备:
由 STM32F401-NUCLEO读取 mpu6050传感器数据配合KT6368A蓝牙模块数据透传。
可以分为以下的 7 个步骤:
步骤1:创建 RT-Thread Studio IDE 工程
步骤2:项目工程配置
I2C设备框架和硬件IO 引脚配置及硬件连接步骤3:添加
mpu6050软件包,测试mpu6050数据获取步骤4:项目工程配置开启
uart6串口配置和硬件连接步骤5:测试
uart6串口功能步骤6:把获取的
mpu6050数据通过uart6串口输出步骤7:把
KT6368A蓝牙模块的RXD引脚接在uart6串口配置的TXD
其中各个步骤的具体操作如下:
步骤1:创建 RT-Thread Studio IDE 工程
由于使用RT-Thread Studio IDE如何创建STM32F401-NUCLEO的工程,这个在官方的文档中心中有相关的文档说明,这里只作简单说明。
(1)通过点击新建RT-Thread项目,选择基于开发板,型号选择STM332F401-NUCLEO,输入工程名称,点击完成按钮开始创建工程。

步骤2:项目工程配置 I2C设备框架和硬件IO 引脚配置及硬件连接
在配置I2C设备框架前,先确定使用那组硬件 IO 引脚,在这里使用 PA4 连接到mpu6050模块的SCL,PA1连接到mpu6050模块的SCK.由于使用的是软件模拟的 I2C功能,只需确保对应的IO引脚没有被复用即可。


配置完成后,编译工程烧录到板子上,通过串口验证是否I2C设备框架正常工作。
注意:如果程序下载过程中提示 Warning: The core is locked up,需要在属性中配置为 system Reset 的复位模式

如图,通过list_device可以查看到有i2c1这个 device,表明配置已经生效。
步骤3:添加mpu6050软件包,测试 mpu6050 数据获取
关于 mpu6050软件包的使用,可以参考官方文档关于mpu6050传感器的使用,在这里仅是说明如何使用从官网相关文档中下载的mpu6050驱动包,获取数据。
mpu6050软件驱动包的下载连接:https://www.rt-thread.org/document/site/application-note/driver/i2c/i2c-mpu6050.rar下载后的软件包中包含的文件如下图

在工程目录中刷新后可以显示添加的文件。

添加mpu6050软件包后需要适当修改SConscript 脚本

添加mpu6050软件包后需要适当修改drv_mpu6050.c 文件中的 MPU6050_I2CBUS_NAME为 i2c1。

然后编译工程,烧录测试mpu6050的功能。

步骤4:项目工程配置开启 uart6串口配置和硬件连接
由于默认创建的工程中没有开启uart6串口的配置,需要使用CubeMX开启 uart6的串口功能配置。

由于默认的图形化配置中没有UART6的配置,需要手动修改添加。

修改 Kconfig添加 UART6的配置后,需要图形化配置。

如图,默认USART6串口功能的RXD引脚是PC7,TXD引脚是PC6.
此时,可以使用一个 USB-TTL串口模块的与STM32F401-NUCLEO进行连接测试uart6的功能。

本文介绍了如何使用STM32和RW007蓝牙模块实现BLE传感器数据透传功能。内容包括发送端设备的7个步骤配置,如创建RT-Thread Studio IDE工程、配置串口、数据获取与输出;以及接收端设备的创建和读取解析数据的代码实现。通过此教程,读者可以掌握基于RT-Thread的BLE通信实践。
最低0.47元/天 解锁文章
1335

被折叠的 条评论
为什么被折叠?



