2.使用从OTP中的唯一数字生成的静态随机BDA。In this case you should set the USER_CFG_ADDRESS_MODE macro to APP_CFG_ADDR_STATIC in the user_config.h header file and place the default_app_generate_unique_static_random_addr() API in .app_on_generate_static_random_addr callback in user_callback_config.h file.
3个月前
嗨,Shashialabur,
感谢您的到来并在我们的新公共论坛上发布。
DA14531小模块在OTP标头中带有预编程的对话框BD地址。
请使用SmartSnippets工具箱进行验证。您将连接到OTP并读取OTP标头。您会看到“蓝牙设备地址”不是空的。它在OTP标头(0x7F87FD4)中进行了编程,为2 * 32位字。
但是,是否使用注册的BDA,取决于应用程序代码。覆盖它的一些可能的选项是以下内容:
1.在SW中使用硬编码的BDA,但是需要一些SDK修改。请检查System -Init()和第1253行-OTP_HDR_GET_BD_ADDRESS()。此功能从OTP标头读取BDA地址。然后,NVDS_GET_FUNC()将检查OTP(案例nvds_tag_bd_address)中是否有BD地址。如果YESV(Dev_bdaddr不是空白),则FW将使用存储在OTP中的BDA。否则,它将从NVD(CFG_NVDS_TAG_BD_ADDRESS)中获取BDA。因此,可能的解决方案可能是将DEV_BDADDR明确设置为0xff(空白),因此FW将从NVD(CFG_NVDS_TAG_BD_ADDRESS)中获取BD。
2.使用从OTP中的唯一数字生成的静态随机BDA。In this case you should set the USER_CFG_ADDRESS_MODE macro to APP_CFG_ADDR_STATIC in the user_config.h header file and place the default_app_generate_unique_static_random_addr() API in .app_on_generate_static_random_addr callback in user_callback_config.h file.
3.在OTP标头中使用公共BDA(在其他位置)。同样,在OTP_HDR_GET_BD_ADDRESS()中需要进行一些修改,因为它从0x7F87FD4读取。您将必须修改此地址。
谢谢,pm_dialog