我正在使用arm-none-eabi-gdb
并使用JLink SAM-ICEJLinkGDBServer
调试嵌入式系统。嵌入式系统使用ATSAMD21 MCU。
通过阅读JLinkGDBServer 文档的第 25 页,我了解到我可以使用以下命令读取微控制器上的内存位置:
(gdb) monitor MemU32 0x0000
Reading from address 0x00000000 (Data = 0x20004000)
这很好用。现在,我遇到的问题是我需要自动化并读取一系列记忆,所以我尝试这样做:
(gdb) set $addr = 0x804000
(gdb) monitor MemU32 $addr
Expected an decimal digit (0-9)
但显然这对我不起作用。有谁知道发生了什么?我怎样才能读取这样的内存位置?