以下是ARM DStream仿真器脚本中常用的命令及其功能分类,结合调试流程和典型应用场景整理:
connect
建立与目标设备的连接,需指定接口类型(如JTAG/SWD)和处理器核心。
示例:connect -p jtag -c cortex-a5
reset
复位目标设备,支持软复位(内核)或硬复位(全芯片)。
target
选择多核系统中的特定处理器核心,例如target cortex-a5 0
选择第一个A5核心。
loadfile
将可执行文件(如.axf
或.elf
)加载到目标内存,自动解析符号表。
示例:loadfile MYD-SAMA5D34.axf
loadmemory
加载二进制数据到指定内存地址,常用于裸机程序调试2。
setmem
/ readmem
读写内存:
setmem 0x00300000 0x1234
向地址0x00300000
写入数据0x1234
readmem 0x00300000 4
读取4字节数据。
go
/ run
启动程序全速运行,go
可指定入口地址(如go 0x00300000
)。
stop
暂停正在运行的程序2。
step
单步执行一条指令,支持源码级或汇编级单步。
next
源码级单步跳过函数调用2。
sleep
脚本延时,例如sleep 500 ms
暂停500毫秒。
break
设置软件断点:
break main.c:20
在main.c第20行设断点
break 0x00300000
在指定地址设断点。
watch
设置硬件观测点,监视内存读写:
watch write 0x20004000
监控该地址的写入操作。
reg
查看或修改寄存器:
reg
显示所有寄存器
reg r0=0x100
设置R0寄存器值。
print
打印变量或表达式值,如print variable_name
。
set
设置变量值,例如set var=10
。
source
执行外部脚本文件,如source setup.ds
加载预配置。
echo
输出调试信息到控制台,用于脚本日志(如echo "Loading complete"
)。
semihosting
启用半主机机制,捕获目标板输出(如printf
)到DS-5控制台。
命令兼容性:
不同DStream固件版本可能支持命令有差异,建议查阅对应版本的《ARM DStream Command Reference》。
调试环境依赖:
裸机调试需确保目标板停在Bootloader阶段(如U-Boot),防止系统干扰2。
地址映射:
加载程序前需正确配置scatter文件(内存布局),否则加载可能失败2。
以上命令需在DS-5的脚本编辑窗口或调试控制台中输入,完整命令列表可参考ARM官方文档:DStream调试命令手册。