CH582这款芯片是能够同时跑mesh+BLE的,在我司提供的透传模型“一般节点”或者叫“普通节点”的代码adv_vendor中,也可以添加BLE功能,方便用户随时连接BLE。
在adv_vendor工程中添加BLE的操作步骤如下:
①如图配置预编译宏。
BLE_MAC:用于配置BLE广播所用的MAC地址为代码中自定义的MAC,位于app_main.c的前几行。如果BLE-MAC不配置,使用芯片内置的MAC地址,也可以进行BLE广播,但不建议,因为mesh的未配网信标广播也会用到芯片内置的MAC地址,要尽量避免使用同一个MAC。
BLE_MEMHEAP_SIZE:用于给BLE协议栈预留RAM空间。这里使用BLE->LIB文件夹中的LIBCH58xBLE.a文件中的BLE协议栈,按建议是预留6K的RAM。如果该值过小,会导致BLE广播难以被发现或者BLE连接后出异常。
②从peripheral工程将profile文件夹、peripheral源/头文件拷贝到adv_vendor工程文件夹中。
③添加头文件包含,在APP_INIT初始化函数中加上下图中的两行BLE相关初始化。
之后就能使用BLE功能了,具体的BLE相关配置可以研究研究peripheral例程。
如果需要添加低功耗节点功能,需要再按如下步骤多几步修改。
④使能mesh低功耗节点功能,关闭转发功能(最好关掉,不关的话LPN长期休眠,也执行转发)。
⑤增加HAL_SLEEP宏,删除HAL_KEY宏,注释掉按键检测功能以及多余的循环TMOS事件。
⑥固定所有引脚的电平。本测试中绝大多数引脚悬空,故将GPIO电平都固定在上拉高电平。
⑦关闭10s一次的安全广播,disable掉就行,IV同步功能会由低功耗节点帮助完成。
标签:功能,MAC,mesh,BLE,添加,节点,组网 From: https://www.cnblogs.com/JayWellsBlog/p/17276144.html