1、可以通过配置文件配置一个蓝牙地址到nvds的NVDS_TAG_BD_ADDRESS(tag值是1)中, 并且脱机烧录器支持自动累加地址,下面是脱机烧录器的config.ini文件的截图,蓝色框内就是蓝牙地址;
2、可以通过随机数产生的函数生成一个随机数并保存到nvds中,并将该地址设置到协议栈,每次上电从nvds中读出该值; 存储的nvds可以是第1点中的NVDS_TAG_BD_ADDRESS也可以是其它; 随机数的产生可以参考https://bbs.onmicro.com.cn/BLEzhzl/218.html 3、可以通过读取flash uid或者芯片自身的uuid获取一个若干字节的uuid用与产生蓝牙地址的种子 用这个种子通过算法生成一个自己需要的id,这个算法要保证uuid任何一个字节变化都能影响 蓝牙地址变化,并且种子不变运算结果也不会变; 这个方法使得即便是擦除芯片后,依然可以使得蓝牙的mac地址不变; 或者flash uid的方法可以参考https://bbs.onmicro.com.cn/6621CxB_6621CxC/209.html 6621Cx 6621Ax 6621Px系列芯片无法获取自身的uuid; 下面是6621E获取这个自身uuid的方法:
下面是6621F获取这个id的方法: 由于6621F的id是8个字节,所以需要用8个字节运算出6个字节;
|