RT-Thread ARM vexpress A9开发板 高级嵌入式实验初学 断点调试 msh新增指令 修改寄存器值
首先新建项目 选择基于开发板 选择A9开发板

断点调试:F9键可以切换断点

点击小虫子可以开始调试 点击箭头可以在遇到断点后继续执行
修改寄存器值:
G:\RT-ThreadStudio\workspace\A9\rt-thread\libcpu\arm\cortex-a\start_gcc.S
在start_gcc.S文件里

找到#ifdef RT_USING_SMP 下 然后加入指令mov r0, #111
设置好断点 然后开始调试 调试遇到断点会停下
在general registers点击左边箭头展开可以看到r0寄存器的值
在执行完mov r0, #111后遇到断点
这时我们可以看到栏里r0值变化 修改成功
在msh下新增自定义指令 显示自定义内容 通过定义函数新增指令
新增一个
G:\RT-ThreadStudio\workspace\A9\rt-thread\components\dfs\src\dfs_file.c

在#include <finsh.h>下新增如下函数:
int myfunction1(void)
{
printf("this is my function!!\n");
return 0;
}
MSH_CMD_EXPORT(myfunction1, my command test);
修改完毕 点击小虫子进入调试 一直点击箭头 然后看到终端显示如下 并且有箭头闪烁即进入了msh模式
输入help 会看到在最后有自己新增指令的信息


输入myfunction1 会调用函数并且显示调用结果

出现一些乱码可能是因为使用了中文输入法和特殊符号编码的问题 如果使用纯英文应该会解决问题
openvela 操作系统专为 AIoT 领域量身定制,以轻量化、标准兼容、安全性和高度可扩展性为核心特点。openvela 以其卓越的技术优势,已成为众多物联网设备和 AI 硬件的技术首选,涵盖了智能手表、运动手环、智能音箱、耳机、智能家居设备以及机器人等多个领域。
更多推荐


所有评论(0)