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.
工具/软件:TI-RTOS
我想更改 CCFG 中的 BL_CONFIG 寄存器值。 我了解要更改的值、偏移等、我在 swcu117h.pdf 第9.1.1.13节中看到了这一点。 但是、我如何将这些值实际写入闪存寄存器? 我找不到有关如何将这些值实际白光到 CCFG 的任何示例。 是否有人可以向我提供一个代码片段来说明它们是如何编写的?
我想刷写图像、以便在复位期间将某个引脚设置为高电平时、它进入 BL 后门。 现在、我看到我需要使这些#defines。 这就是我在 ccfg.c 文件中添加到 pinInterrupt 版本的内容:
#define SET_CCFG_BL_CONFIG_BOOTLOADER_ENABLE 0xC5 //启用 ROM 引导加载程序
#define SET_CCFG_BL_CONFIG_BL_LEVEL 0x1 //低电平有效以打开引导加载程序后门
#define SET_CCFG_BL_CONFIG_BL_PIN_NUMBER 13 //(DI13)引导加载程序后门的 DIO 编号
#define SET_CCFG_BL_CONFIG_BL_ENABLE 0xC5 //启用引导加载程序后门
我使用的是 LAUNCHXL-CC2640R2开发板。 我在云中使用 CCS。
现在、我希望如果我按下 DI13 (板上的按钮之一)、程序将不会启动、而是进入引导加载程序。 这种情况并非如此、无论 DI13在我复位时是否按下、程序仍会启动、演示工作正常。
我在这里缺少什么吗? 这是否应根据 DI13的状态进入引导加载程序? 或者、我还需要做些什么来实现这一点吗?
谢谢!
我弄清楚了为什么我无法使器件进入引导加载程序模式。 希望此帖子能帮助他人。 这实际上是应该在文档中指出的。
启用引导加载程序后门功能的4个设置必须在项目中 ccfg.c 文件中的"#include DEVICE_family_path (startup_files/ccfg.c)"行之前声明。 这是因为这些也是在 simplelink_*/ccfg.c 文件中定义的。 如果您在 simplelink 版本之前的文件中定义它、您的将优先。 现在很容易看到、但不是很容易找到。
这里是我的整个 ccfg.c 文件。 如果在按下 RESET 时按下 LAUNCHXL-CC2640R2板上的 DI013按钮、应用程序将不会启动、它将进入引导加载程序模式。
#define SET_CCFG_BL_CONFIG_BOOTLOADER_ENABLE 0xC5 //启用 ROM 引导加载程序
#define SET_CCFG_BL_CONFIG_BL_LEVEL 0x0 //低电平有效以打开引导装载程序后门
#define SET_CCFG_BL_CONFIG_BL_PIN_NUMBER 13 //引导加载程序后门的 DIO 编号
#define SET_CCFG_BL_CONFIG_BL_ENABLE 0xC5 //启用引导加载程序后门
#ifdef device_family
undef device_family_path
#define DEVICE_family_path (cc26x0r2)
#include device_ffamily_path (startup_files/ccfg.c)
其他
错误"您必须在项目级别将 DEVICE_family 定义为 cc26x0、cc26x0r2、cc13x0等的其中一个。"
#endif