如何编写脚本使S32K144上电后执行main前暂停CPU?求Lauterbach方案
上电后在main执行前暂停CPU的Lauterbach脚本方案
核心方案:利用GLOBALON POWERUP事件
Lauterbach的GLOBALON命令可绑定硬件触发事件并自动执行指定操作,其中POWERUP事件对应芯片上电动作,能在CPU执行启动文件、main函数等任何用户代码前触发暂停,完美匹配需求。
实现步骤与脚本示例
1. S32K144适配脚本
以下是针对S32K144的上电自动暂停脚本,可重复捕捉上电事件并执行暂停:
; S32K144上电自动暂停脚本 SYStem.RESet SYStem.CPU S32K144 SYStem.CONFIG JTAG ON ; 根据实际调试接口切换为SWDP ON SYStem.Option EnReset OFF ; 关闭调试器自动复位,确保捕捉真实上电事件 ; 绑定POWERUP事件到CPU暂停命令 GLOBALON POWERUP "BREAK" ; 启动调试连接并持续监听上电事件 SYStem.Up
2. 关键命令说明
GLOBALON POWERUP "BREAK":核心配置,当检测到芯片上电时,自动执行BREAK命令暂停CPU,每次上电都会触发,无需重复配置。SYStem.Option EnReset OFF:避免调试器主动复位干扰上电流程,保证POWERUP事件对应真实的外部上电动作。
3. LPC1768适配调整
针对你使用的LPC1768,只需修改CPU型号和调试接口配置,整合原有脚本逻辑后如下:
; LPC1768上电自动暂停脚本 SYStem.RESet SYStem.CPU LPC1768 SYStem.CONFIG SWDP ON SYStem.Option EnReset OFF IF UTRACE()||COMBIPROBE() ( SYStem.CONFIG.CONNECTOR MIPI20T ) ; 绑定上电事件到暂停 GLOBALON POWERUP "BREAK" SYStem.Up ; 可选:加载演示代码(保留原有逻辑) Data.LOAD.Elf ~~~~/demo.axf symbol.sourcepath.set C:\T32\demo\arm\compiler\gnu\src
注意事项
- 确认调试器硬件支持
POWERUP事件:Lauterbach PowerDebug、PowerTrace等主流硬件均支持,老款设备需核对兼容性。 - 若芯片卡在复位状态,可先执行
SYStem.RESet强制复位,再启动脚本监听下一次上电。 - 暂停后如需继续执行,输入
GO命令即可,再次上电时脚本会自动重新触发暂停。
内容的提问来源于stack exchange,提问作者Pekaka
相关产品推荐
相关产品推荐

