DA14580出厂时,没有预先烧入mac地址:
对于蓝牙设备,有“随机设备地址”和“公共设备地址”,公共地址(公开地址)需要向IEEE组织注册申请,而““随机设备地址”(随机地址)则不需要注册和申请,它又可以分为:静态地址(静态地址)和私人地址(私有地址),静态地址是每次设备上电随机产生,使用期间不变,除非下次重新上电,而私有地址,有可分为:non-revosable和resolvalble两种,区别在于随机数产生的方法不同
静态地址是每次设备上电随机产生 这个怎么配置,在哪里配置,有参考文档吗?谢谢!
设备上电地址随机产生,芯片并不能给出结果,需要你外部电脑算好后,写入OTP对应位置里面
按照蓝牙的规范,静态随机地址的话,每次设备上电应该重新生产蓝牙地址。这种情况应该代码里如何处理/
你只能去写寄存器0 x40000024和0 x40000028了,前面是低四位,后面存高2位小端排列
sdk5.0.4在广播前写这两个寄存器好像没什么用了。不过强行修改nvds_data_storage.NVDS_TAG_BD_ADDRESS是可以的。
蓝牙地址是公共addr时,修改此处可修改蓝牙地址
你好,我想问一下,0 x40000024和0 x40000028这两个寄存器功能是什么?怎么用?资料上没有这两个寄存器,谢谢另外,nvds_data_storage。NVDS_TAG_BD_ADDRESS中的地址是公共设备地址还是随机设备地址吗?谢谢
你好,
0 x40000024, 0 x40000028是蓝牙地址设置相关的寄存器,为底层所用;
NVDS_TAG_BD_ADDRESS默认情况下,是作为公共地址;
蓝牙地址相关、常用的操作如下:
修改地址类型,可通过宏:USER_CFG_ADDRESS_MODE
公共地修改址,可通过宏:CFG_NVDS_TAG_BD_ADDRESS
设备上电后,会先读头中取OTP的蓝牙地址字段,如果为空,则会使用CFG_NVDS_TAG_BD_ADDRESS作为蓝牙地址,否则,以OTP头中的作为蓝牙地址
如果想要使用自己自定义的蓝牙地址(比如上电时把flash的id作为蓝牙地址),可在函数read_otp_header (void)中,修改dev_bdaddrmemcpy(&dev_bdaddr, (uint8_t *) OTP_HDR_BDADDR_ADDR, sizeof(dev_bdaddr));
DA14580出厂时,没有预先烧入mac地址:
对于蓝牙设备,有“随机设备地址”和“公共设备地址”,公共地址(公开地址)需要向IEEE组织注册申请,而““随机设备地址”(随机地址)则不需要注册和申请,它又可以分为:静态地址(静态地址)和私人地址(私有地址),静态地址是每次设备上电随机产生,使用期间不变,除非下次重新上电,而私有地址,有可分为:non-revosable和resolvalble两种,区别在于随机数产生的方法不同
静态地址是每次设备上电随机产生 这个怎么配置,在哪里配置,有参考文档吗?谢谢!
设备上电地址随机产生,芯片并不能给出结果,需要你外部电脑算好后,写入OTP对应位置里面
按照蓝牙的规范,静态随机地址的话,每次设备上电应该重新生产蓝牙地址。这种情况应该代码里如何处理/
你只能去写寄存器0 x40000024和0 x40000028了,前面是低四位,后面存高2位小端排列
sdk5.0.4在广播前写这两个寄存器好像没什么用了。不过强行修改nvds_data_storage.NVDS_TAG_BD_ADDRESS是可以的。
蓝牙地址是公共addr时,修改此处可修改蓝牙地址
你好,我想问一下,0 x40000024和0 x40000028这两个寄存器功能是什么?怎么用?资料上没有这两个寄存器,谢谢
另外,nvds_data_storage。NVDS_TAG_BD_ADDRESS中的地址是公共设备地址还是随机设备地址吗?谢谢
你好,
0 x40000024, 0 x40000028是蓝牙地址设置相关的寄存器,为底层所用;
NVDS_TAG_BD_ADDRESS默认情况下,是作为公共地址;
蓝牙地址相关、常用的操作如下:
修改地址类型,可通过宏:USER_CFG_ADDRESS_MODE
公共地修改址,可通过宏:CFG_NVDS_TAG_BD_ADDRESS
设备上电后,会先读头中取OTP的蓝牙地址字段,如果为空,则会使用CFG_NVDS_TAG_BD_ADDRESS作为蓝牙地址,否则,以OTP头中的作为蓝牙地址
如果想要使用自己自定义的蓝牙地址(比如上电时把flash的id作为蓝牙地址),可在函数read_otp_header (void)中,修改dev_bdaddr
memcpy(&dev_bdaddr, (uint8_t *) OTP_HDR_BDADDR_ADDR, sizeof(dev_bdaddr));