蓝牙利用协议栈API读取设备MAC地址

Posted ironX

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了蓝牙利用协议栈API读取设备MAC地址相关的知识,希望对你有一定的参考价值。

最近在移植QQ物联协议,需要读取设备mac地址。

读取CC2541设备MAC地址的方法,有直接读取mac寄存器,也可以调用协议栈API。这里采用的是调用API的形式。

1   /*利用协议栈API读取MAC地址*/
2     static uint8 macaddr[B_ADDR_LEN]={0}; //   mac 地址 
3     uint8_t macstr[13] = {0};
4     
5     GAPRole_GetParameter(GAPROLE_BD_ADDR, macaddr);  
6     sprintf((char*)macstr, "%02X%02X%02X%02X%02X%02X", macaddr[0], macaddr[1], macaddr[2], 
7        macaddr[3], macaddr[4], macaddr[5]);  
8     memcpy(zone, macstr, 12);

核心内容是API: GAPRole_GetParameter

这个API可以参考CC2541 Software developer‘s guide的第102页,大家可以自己在IAR里面找到这个function的定义,GAPROLE_BD_ADDR则是一个表示蓝牙设备mac地址的type。



以上是关于蓝牙利用协议栈API读取设备MAC地址的主要内容,如果未能解决你的问题,请参考以下文章

蓝牙BLE协议栈基础知识

如何使用Android蓝牙开发

如何使用Android蓝牙开发

android平台蓝牙编程

LWIP协议栈:ARP协议

蓝牙4.0BLE协议栈