TI BLE协议栈中,我们可以使用primary IEEE地址作为我们设备名称的一部分,primary IEEE的地址保存在芯片特定的地址(貌似从0x780c开始),我们可以在协议栈初始化时读取这个地址连续6字节就可以得到primary ieee,这样可以用来作为我们的设备名称或者广播数据的内容。但是primary IEEE是不可以修改的,每个芯片都不一样,虽然可以做到不重复,但是还是不方便,从网上得到一些资料,说是在有secondary IEEE的情况下,会优先使用secondary IEEE,而secondary是可以修改的,我们可以通过Flash Programmer来烧写hex文件,同时通过Flash Programmer来修改secondary IEEE地址,并且使用secondary来作为蓝牙名称的一部分,达到快速修改设备名称的目的。
文件为IAR工程目录下的PROFILES/peripheral.c文件。
当gapRole_ProcessGAPMsg()函数被调用并且当设备初始化完成时,会传入一个包含设备MAC地址的结构体,我们只需拿出这个IEEE MAC地址,然后使用就可以了。
红色方框为添加的内容。