This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CC2540 CC2541 的System ID



你好:

1. 請問 CC2540  CC2541 的System ID 可以更改嗎?

2. 若可以更改,請問要如何更改?

3. 若不能更改,請問他是唯一碼嗎?

謝謝你

  • kimi,

    1. 你说的是BDADDR 吗?可以更改。

    2. 需要在Debugger 模式下更改,通过smart programmer。

    3. 能更改。但是实际上每颗芯片的BDADDR 都是不一样的,每颗芯片都是独立,唯一的。这个ID 是TI 向IEEE申请的,如果你自己需要,也得向IEEE申请才合法。

    所以,不需要更改。

  • 你好:

    如附件紅框的System ID,請問這可以改嗎?

    另外您指的"BDADDR",是mac address? 這個直可以用UUID讀出嗎?

    謝謝你

  • Kimi,

    没错,BDADDR 就是 MAC address。mac address 在广播的时候就应该能读出了。但是iOS不会把搜索到的BDADDR 直接送到应用层,会隐藏起来用UUID的方式送。所以,你可以先通过HCI_ReadBDADDRCmd() 或者 类似 GAPRole_GetParameter(GAPROLE_BD_ADDR, ownAddress);读出来,然后以characteristic value的方式让iOS 去读。

    system ID可以改,你在另外的帖子也问过。但是这个是跟BDADDR 联系在一起的,你另外的那个帖子里面也描述了。

  • 你好

    所以BDADDR 等於 system ID ?

    可是我Android讀到的 MAC address 為78:C5:E5:70:7D:BB

    system ID 卻是BB:7D:00:00:E5:C5:78

    請問他們雖然很像,卻不完全相同,有什麼公式轉換嗎?

    不好意思,剛接觸這塊領域不久,謝謝你的幫忙~

  • Kimi,

    从下面代码可以看出BDADDR 和 system ID的关系:

    case GAPROLE_STARTED:
    {
    uint8 ownAddress[B_ADDR_LEN];
    uint8 systemId[DEVINFO_SYSTEM_ID_LEN];

    GAPRole_GetParameter(GAPROLE_BD_ADDR, ownAddress);

    // use 6 bytes of device address for 8 bytes of system ID value
    systemId[0] = ownAddress[0];
    systemId[1] = ownAddress[1];
    systemId[2] = ownAddress[2];

    // set middle bytes to zero
    systemId[4] = 0x00;
    systemId[3] = 0x00;

    // shift three bytes up
    systemId[7] = ownAddress[5];
    systemId[6] = ownAddress[4];
    systemId[5] = ownAddress[3];

    DevInfo_SetParameter(DEVINFO_SYSTEM_ID, DEVINFO_SYSTEM_ID_LEN, systemId);

    #if (defined HAL_LCD) && (HAL_LCD == TRUE)
    // Display device address
    HalLcdWriteString( bdAddr2Str( ownAddress ), HAL_LCD_LINE_2 );
    HalLcdWriteString( "Initialized", HAL_LCD_LINE_3 );
    #endif // (defined HAL_LCD) && (HAL_LCD == TRUE)
    }
    break;

  • 请问:

    为什么要加长到8个字节,官方定义的吗??

  • 不错,学习!

  • 请问:

    system id &  module number string & serial number string …………

    的怎么在central中读出来