打印
[ModusToolbox™]

如何解决 ModusToolBox 3.0 直接烧录 PSoC 6 开发板, PSoC6 的芯片测量功耗偏高的问题

[复制链接]
633|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Question
使用 ModusToolBox 3.0 直接烧录 CY8CKIT-062-BLE 开发板(或其他P6开发板)之后,本该进入深睡眠的 PSoC6 芯片出现了较高的测量功耗,MTB 2.4 则没有这个问题。原因是什么,该如何解决。
Answer
ModusToolBox 3.0 的 Program launch config 使用的 GDB 指令来实现烧录,但是烧录完成后没有给 debug domain 掉电,从而导致了高功耗。
解决方法 :
Step1: 在 ModusToolBox 3.0 中选中目标工程之后,点击 Run -->Run Configuration, 打开 Run Configuration GUI 界面
Step2: 切换的 Debugger 表单,在 Config options 文本框中找到最后一行指令  -c "init; reset init",并用下面的指令替换。红色标记代表本工程 HEX 文件的放置路径,该路径显示在 Main 表单下 C/C++ Application 文本框中的,直接拷贝

覆盖即可。
-c "if [catch {program <insert_hex_file_path>} ] { echo {** Program operation failed **} } else { echo {** Program operation completed successfully **} }"
-c "reset_config srst_only;reset run;psoc6.dap dpreg 0x04 0x00;shutdown"
Example:

-s "${openocd_path}/../scripts"
-s "bsps/TARGET_APP_CY8CKIT-062-BLE/config/GeneratedSource"
-c "source [find interface/kitprog3.cfg]"
-c "transport select swd"
-c "puts stderr {Started by GNU MCU Eclipse}"
-c "source [find target/psoc6.cfg]"
-c "psoc6 sflash_restrictions 1"
-c "if [catch {program ${cy_prj_path:9de907a3-a3a5-4f25-8416-8adb508cf114}/build/APP_CY8CKIT-062-BLE/Debug/mtb-example-empty-app.hex} ]
    { echo {** Program operation failed **} } else { echo {** Program operation completed successfully **} }"
-c "reset_config srst_only;reset run;psoc6.dap dpreg 0x04 0x00;shutdown"
Step3: 将 Start GDB session 勾选框取消(默认勾选)。点击 Apply 保存配置,点击 RUN 运行 program 操作,烧录完毕 PSOC6 芯片功耗回复正常,无需再外部复位或者重新上电。


工程 HEX 文件的放置路径


内容转自:英飞凌官方论坛






使用特权

评论回复
沙发
EmmaTT| | 2024-2-28 19:13 | 只看该作者
debug也会费电啊

使用特权

评论回复
板凳
IFX_Lingling|  楼主 | 2024-3-1 16:54 | 只看该作者

是的呢

使用特权

评论回复
地板
LOVEEVER| | 2024-3-27 18:28 | 只看该作者
看来低功耗方案又有了新思路

使用特权

评论回复
5
jf101| | 2024-3-28 22:00 | 只看该作者
低功耗设置确实很重要,尤其是外部电池供电的应用下

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

认证:
简介:关于英飞凌——我们致力于打造一个更加便利、安全和环保的世界,在赢得自身成功发展的同时,积极践行企业社会责任。

105

主题

189

帖子

5

粉丝