尊敬的团队:
我想用 来自 UART 的数据来 chage 通行码。
是否有类似这样的简单项目?
此致。
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.
尊敬的团队:
我想用 来自 UART 的数据来 chage 通行码。
是否有类似这样的简单项目?
此致。
你好,Oomar,
您能否提供有关您请求的一些附加上下文?
如果您使用的是简单外设等蓝牙 LE 示例,则可以按照 Simple_peripheral_c 中的代码找到 SimplePeripheral_processPasscode 函数。 在这里,我们有一个预定义的密码正在传递给 GAPBondMgr_PasscodeRsp 函 数。 您只需用使用 UART 数据更新的动态变量替换定义即可。
请记住,在系统设计方面需要考虑 UART 通道的安全性,如果这是一个问题。 您正在通过 UART 共享密码,如果 UART 通道容易受到攻击,则此漏洞也可能在连接中被利用。
下面是我们 的安全基础 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
你好,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