[其他ST产品] 用BlueNRG-X Flasher Utility批量烧写blueNRG-1更改MAC问题

[复制链接]
550|2
 楼主| jcky001 发表于 2022-9-15 10:03 | 显示全部楼层 |阅读模式

MAC location :设置的是 0x10044BCC

******FLASH OPERATION******

Connected N.1 device by ST Link

17:57:53.953: Waiting device to flash -> Device connected
17:57:54.967: Device Identification -> BlueNRG-1
17:57:55.674: Mass Erase Operation -> SUCCESS
17:57:57.049: Device Flash Programming -> FAILED
17:58:00.917: Device Disconnection ->SUCCESS

17:58:02.009: Flash operation finished!


******END FLASH OPERATION******
发现是写不进去的,想问下那个MAC地址写入是在那个位置的呢?麻烦大佬们了。


 楼主| jcky001 发表于 2022-9-15 10:03 | 显示全部楼层

#if SERVER
  uint8_t role = GAP_PERIPHERAL_ROLE;
  uint8_t bdaddr[] = {0xaa, 0x00, 0x00, 0xE1, 0x80, 0x01};

#else
  uint8_t role = GAP_CENTRAL_ROLE;
  uint8_t bdaddr[] = {0xbb, 0x00, 0x00, 0xE1, 0x80, 0x02};
#endif
  
  /* Configure Public address */
ret = aci_hal_write_config_data(CONFIG_DATA_PUBADDR_OFFSET, CONFIG_DATA_PUBADDR_LEN, bdaddr);
  if(ret != BLE_STATUS_SUCCESS){
    printf("Setting BD_ADDR failed: 0x%02x\r\n", ret);
    return ret;
  }


烧写是成功了,但是MAC仍然是aa, 00, 00, E1, 80, 01这个地址,用的是BLE_Examples\BLE_Chat的代码


两只袜子 发表于 2022-9-16 10:00 | 显示全部楼层
BlueNRG-X Flasher Utility是将你要定义的地址写到FLASH的指定位置 在你的代码里bdaddr使用了内存定义好的地址,所以BlueNRG-X Flasher Utility写入的地址不会使你的程序发生变化 如果要使用BlueNRG-X Flasher
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1650

主题

5706

帖子

6

粉丝
快速回复 在线客服 返回列表 返回顶部