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.

[参考译文] CC2652RSIP:更改密码

Guru**** 2386610 points
Other Parts Discussed in Thread: CC2652RSIP
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1079702/cc2652rsip-changing-passcode

部件号:CC2652RSIP

尊敬的团队:

我想用 来自 UART 的数据来 chage 通行码。

是否有类似这样的简单项目?

此致。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好,Oomar,

    您能否提供有关您请求的一些附加上下文?

    如果您使用的是简单外设等蓝牙 LE 示例,则可以按照 Simple_peripheral_c 中的代码找到  SimplePeripheral_processPasscode  函数。 在这里,我们有一个预定义的密码正在传递给 GAPBondMgr_PasscodeRsp 函 数。 您只需用使用 UART 数据更新的动态变量替换定义即可。

    请记住,在系统设计方面需要考虑 UART 通道的安全性,如果这是一个问题。 您正在通过 UART 共享密码,如果 UART 通道容易受到攻击,则此漏洞也可能在连接中被利用。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好

    我正在使用“simple”串行插座客户端”项目。

    我如何为我的项目调整该函数(GAPBondMgr_PasscodeRsp)。

    祝你一切顺利。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    下面是我们 的安全基础 SimpleLink Academy 模块的链接,请看任务3。

    此外,您还可以在此处访问我们的用户指南部分: https://software-dl.ti.com/simplelink/esd/simplelink_cc13xx_cc26xx_sdk/5.40.00.40/exports/docs/ble5stack/ble_user_guide/html/ble-stack-5.x/gapbondmngr-cc13xx_cc26xx.html 

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好;

    我激活了密码,现在我正在尝试使用 来自 UART 的数据更改密码。

    有什么建议?

    此致。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    要更改密码,您只需在 GAPBondMgr_PasscodeRsp 中将新密码作为参数传递

    如果要在设备已与外围设备配对/绑定后更改密码,我建议断开设备连接(以及在本地删除绑定信息),以重新启动与新密码的配对/绑定过程。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好;

    谢谢你的建议,我已经这样做了。

    我需要一个内部闪存读写示例来保存密码。

    没有 NVS 的情况下是否有任何简单的内部闪存示例?

    此致。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好,Oomar,

    如果要存储不带 NVS 的变量,可以使用 pragma 语句。 如果您需要编写,则必须将密码放入 RAM 而不是闪存中。 下面是一个示例,但使用的地址被放置在闪存中,因此必须更改: https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1004417/cc2650-simple_peripheral-serial-number-using-flash-programr/3741494#3741494 

    否则,我建议使用 NVS 存储密码。  有关如何: https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/986551/cc2642r-non-volatile-memory 的更多详细信息,请参见此相关主题 

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    嗨,阿马尔;

    您确定柱塞能够进行非易失性存储吗?

    我在下面开了代码。 当我重新启动芯片时,密码将被删除。

    #define APP_SERIAL_ADDRESS (0x400E0000)        //AUX_RAM 0x400E 0000
    #pragma RETAIN(Psw)
    #pragma LOCATION(Psw, APP_SERIAL_ADDRESS)
    
    uint32_t Psw = 123456;

    此致

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好,Oomar,

    您选择的地址实际上是传感器控制器使用的辅助 RAM。 请参阅 用户指南的内存映射部分

    RAM 顶部用于中断矢量表和 TI-RTOS 指针。 我会引用生成的.map 文件来查找适合您的应用程序的地址。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    嗨,Ammar,

    地图数据如下,我尝试使用 SRAM 部分保存数据。

    (20000fe0,200026e9,200026f0,20013c00)试用版,

    当芯片重置时,将重新读取数据。

    有什么帮助?

    MEMORY CONFIGURATION
    
             name            origin    length      used     unused   attr    fill
    ----------------------  --------  ---------  --------  --------  ----  --------
      FLASH                 00000000   00056000  0001ef5a  000370a6  R  X
      FLASH_LAST_PAGE       00056000   00002000  00000058  00001fa8  R  X
      RTOS_SRAM             20000000   0000012c  000000e4  00000048  RW X
      SRAM                  20000fdf   00013021  000028e6  0001073b  RW X
    
    
    SEGMENT ALLOCATION MAP
    
    run origin  load origin   length   init length attrs members
    ----------  ----------- ---------- ----------- ----- -------
    00000000    00000000    0001af60   0001af60    r-x
      00000000    00000000    0000003c   0000003c    r-- .resetVecs
      0000003c    0000003c    0001878c   0001878c    r-x .text
      000187c8    000187c8    0000208e   0000208e    r-- .const
      0001a858    0001a858    00000144   00000144    r-- .rodata
      0001a9a0    0001a9a0    000005c0   000005c0    r-- .cinit
    00048000    00048000    00004000   00000000    rw-
      00048000    00048000    00004000   00000000    rw- .TI.bound:flashBuf0
    00057fa8    00057fa8    00000058   00000058    r--
      00057fa8    00057fa8    00000058   00000058    r-- .ccfg
    20000100    20000100    0000000c   00000000    rw-
      20000100    20000100    00000004   00000000    rw- .data:xdcRomConstPtr
      20000104    20000104    00000004   00000000    rw- .data:xdcRomExternFuncPtr
      20000108    20000108    00000004   00000000    rw- .data:xdcRomStatePtr
    20000fe0    20000fe0    000024e6   00000000    rw-
      20000fe0    20000fe0    00001709   00000000    rw- .data
      200026f0    200026f0    00000dd6   00000000    rw- .bss
    20013c00    20013c00    00000400   00000000    rw-
      20013c00    20013c00    00000400   00000000    rw- .stack

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好,Oomar,

    这是对 RAM 的预期保存行为,我对未 错过这项要求表示歉意。

    ~引用 userid="504442" url="支持/无线连接/蓝牙组/蓝牙/f/Bluetooth-forum/1079702/cc2652rsip 更改密码/4005729#4005729"]当重置芯片时,数据将被重新读取。

    这正是 NV 的目的。 您不想使用 NVS 有什么特殊原因吗? 以下 是我们的用户指南中的一个示例:https://software-dl.ti.com/simplelink/esd/simplelink_cc13x2_26x2_sdk/4.40.04.04/exports/docs/ble5stack/ble_user_guide/html/ble-stack-common/flash_memory-cc13x2_26x2.html#id4