CC26X2R1笔记(2) 设置MAC静态地址,广播不变MAC

1、ti 资料网址

1、官方首页
2、sdk和工具介绍

2.1 cc264x2设置静态地址,广播不变的mac

// 获得mac
void Get_Mac_Address(uint8 *p_Address)
{
    uint32 Mac0 = HWREG(FCFG1_BASE + FCFG1_O_MAC_BLE_0);
    uint32 Mac1 = HWREG(FCFG1_BASE + FCFG1_O_MAC_BLE_1);

    p_Address[5] = Mac0;
    p_Address[4] = Mac0 >> 8;
    p_Address[3] = Mac0 >> 16;
    p_Address[2] = Mac0 >> 24;
    p_Address[1] = Mac1;
    p_Address[0] = Mac1 >> 8;
}

// 设置设备静态mac,
改变这个宏定义,最好用ADDRMODE_PUBLIC,否则广播出来的mac是逆序的
static GAP_Addr_Modes_t addrMode =ADDRMODE_PUBLIC;// ADDRMODE_RANDOM;

/

  uint8_t mac_addr[6];
  GetMacAddress(mac_addr);
  
  //Initialize GAP layer for Peripheral role and register to receive GAP events
  GAP_DeviceInit(GAP_PROFILE_PERIPHERAL, selfEntity, addrMode, mac_addr); //addrMode

在广播参数设置修改为 peerAddrType = PEER_ADDRTYPE_RANDOM_OR_RANDOM_ID,

GapAdv_params_t advParams = {
  .eventProps =   GAP_ADV_PROP_CONNECTABLE | GAP_ADV_PROP_LEGACY | GAP_ADV_PROP_SCANNABLE,
  .primIntMin =   160,
  .primIntMax =   160,
  .primChanMap =  GAP_ADV_CHAN_ALL,
  .peerAddrType = PEER_ADDRTYPE_RANDOM_OR_RANDOM_ID,
  .peerAddr =     { 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa },
  .filterPolicy = GAP_ADV_WL_POLICY_ANY_REQ,
  .txPower =      GAP_ADV_TX_POWER_NO_PREFERENCE,
  .primPhy =      GAP_ADV_PRIM_PHY_1_MBPS,
  .secPhy =       GAP_ADV_SEC_PHY_1_MBPS,
  .sid =          0
};

2.2

问题: 用iar仿真,出现Warning: Failed to halt at after bootloader, forced stop at 然后就仿真不起来

解决:(1)该错误证实是因为 cc2650 SW下载模式,芯片复位引脚未接出来导致,芯片复位必须和下载器保持良好连接
(2),不需要重新安装IAR。是你修改了ccfg.c启动了bootloader导致的,每次IAR下载程序mcu进入了bootloader,无法在线仿真调试了。调试阶段将ccfg.c中bootloader相关设置关闭即可。
ti社区解决网址:网址

2.3 广播修改大于255字节

ti社区地址

2.4 修改芯片的DC-DC 和LDO模式

ti社区网址

可以加入QQ群:687360507
与大伙沟通交流,技术在于分享而进步

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值