本帖最后由 小手凉凉 于 2025-2-16 21:38 编辑

目录:
1. 芯片说明
2. 巴法云说明
3. 蓝牙连接说明
4. 软件实现
5. 开机验证
6. 总结



1. 芯片说明
富芮坤FR3068支持蓝牙双模 V5.3 标准,如下是功能框图。本项目中我们使用蓝牙连接手机,通过手机共享网络方式上网,官网的示例工程中集成了lwip包支持,可以选择使用TCP协议连接到网络实现通讯
image.png
2. 巴法云说明
巴法云接入文档中有说明接入地址和端口,
image.png
通过tcp测试工具,可以实现连接和消息订阅,以及上报数据,订阅消息测试
image.png


3. 蓝牙连接说明
本项目中使用的手机作为蓝牙网关
image.png
打开网络共享
image.png
首先使用手机端连接测试验证,手机属于蓝牙网关,建Tcp server如下,等待客户端连接,连接后可以正常收发数据
image.png

4. 软件实现
4.1按键入口
按键事件检测任务
image.png
按键事件发送入口
image.png
在事件button_event_handler 函数中,当前我们UI上未做按键动效果,屏蔽掉ui的send事件。第一个按键我们调用自己的接口用于处理Tcp连接
image.png
使用指针指向到我们处理的函数中
image.png
函数原型为:
voidapp_Key1_Event_Handle(void*para)
{
    printf("\r[long] Key1 Press ...\n");
    app_TcpTransmitTaskCreate();
}
4.2创建线程TCP连接
线程创建入口如下
image.png
线程详细处理如下:
image.png
Tcp建立连接流程如下:
image.png
客户端连接详细流程如下:
image.png

4.3 周期上报消息

需要上报云端的数据按列表方式整理在mTcpInfo中,前面是主题,数据类型选择,变量名字对应
image.png
线程中按格式定义临时指针指向数据,整合成上报消息的字符串,带cmd类型 uid以及msg值
image.png
具体实现如下
image.png

5. 开机验证
开机启动后,首先使用手机蓝牙连接ok,打开网络共享这些基本准备好后。按下按键K1即可创建线程建立连接,分析log具体如下
1fae1e7571c0a5b5f1a9dd08532440d.png
云端查看信息如下,由于只订阅了一个主题,于是只显示CarInfoAutoRun 主题为在线状态,其他主题按实际值实时上报,效果按预期
df3cf709058074d22b55c68afb1fabb.png
cf15790ba45357698339f1cdd7ee48b.png

6. 总结
    此次使用了巴法云,优化空间还是蛮大,可以通过手机端或者电脑端查看到云端情况,实际运用时可以单独设计个手机小程序实时检测云端数据效果更好