cc2541 mac读写
请问ble协议栈是否像z-stack一样,按如下的优先级得到一个IEEE地址:
Z-STACK通过4个步骤来确定设备的IEEE地址:
1.从Z-stack的NV中读取
2.从Second IEEE 的位置中寻找
3.在Primary IEEE 的位置寻找
4.由随机数产生器产生一个临时IEEE地址。
我有一个需求要改cc2541的mac地址,该如何修改?
Each CC2540/1 is programmed with a unique 48-bit MAC address. This is contained in the information page and can't be changed.
2541有Primary IEEE 和Second IEEE,Second IEEE是能修改的。请问协议栈从Primary还是Second读IEEE呢?代码是在什么位置呢?
是否有个优先级,先读second,如果没有,再读primary?
peng,
是的。
会先判断是否secondary 有改动,如果没有改动,就用primary。
Yan:
secondary 的地址是哪个地址呢?看论坛里说是0xFFEA,primary的地址是0x780E。
另外是否可以这样理解,HCI_ReadBDADDRCmd()读出来的mac addr,如果有secondary ,就是secondary 的值,否则是primary的值。
HCI_EXT_SetBDADDRCmd写的,一定是secondary 的?
peng,
你对HCI_ReadBDADDRCmd()读的理解是对的。
HCI_EXT_SetBDADDRCmd() 写,没法写secondary.
HCI_EXT_SetBDADDRCmd() 写的是内存里的。 不管是secondary 或者 primary, 都在flash的信息区, 是被保护的。除了debug 模式下用CCDebugger,其他方式下无法修改。
您好,
请问下,为什么我代码里面执行HCI_ReadBDADDRCmd()函数,但gapRole_ProcessOSALMsg函数没有接受到HCI_GAP_EVENT_EVENT事件?
我使用的参考例子是"SimpleBLEObserver".
谢谢!