可能与使用了视利 Flash 有关,不过不影响实际使用。 解决办法解说:成功进入调试后按一下遥控上的复位键,程序跑起来之后在 Eclipse 里点图标进入调试,再按一下遥控上的复位键即可。 Sugar 对正常单片机单步从来没遇到这个错,所以大家不必担心。Sugar 猜想这就是因为使用 stm32 福利 Flash 造成的。 RT-Thread 与 C...
RT-Thread 的驱动开发完成后,通过编写串口 shell 测试命令,运行命令后,触发死机 由于当前缺少单步的调试方法,只能通过增加LOG与打开关闭部分软件功能,一步步缩小范围 在函数调用的入口,把某些关键的函数调用分别注释掉验证,这样逐步验证下来,最终缩小到一个函数,调用这个函数就触发死机。 用到的软件调试方法 (1)增加LOG...
通过单步调试,发现只要stm32引脚MCO一给dm9161提供50M的信号,dm9161马上就能工作,PC端马上就能连上网口,不管程序有没有在运行。所以简单的理解就是,dm9161只要有电,CLK脚有50M信号,电脑就能识别到它。所以,能够ping通才表示dm9161在正常的工作。 我对比了rt-thread中eth的初始化设置和没有操作系统的例程中的代码,...
这里与昨天的《RT-Thread 野生单步调试法》对比一下不难发现:设置其实非常简单。选对工具链就行了。 注意:04:05 处的编译结果最后是没有 warning 的,如果没有改启动文件的后缀名为大写,则会有 warning 出现。 自制IDE(调试) 视频04:06 ~ 05:28演示了自制 IDE 的调试过程。 这里用快捷链 F5、F6做单步的,...
由于 开发板可以 单步调试,所以经过单步调试,加上分析,确认内存的范围,各个线程栈的内存范围,发现了一个奇怪的问题:申请的内存偶尔会与线程栈的【静态内存】重叠 由于死机问题并不是必现,但是 idle 线程栈数据异常是必现的。当前怀疑 memheap 的内存范围设置存在问题,通过对比其他开发板的 bsp,发现了问题所在。
首先,进入调试界面,并点击复位按钮光标就可以跳到程序开始运行的地方。如: 再次,一直点击单步运行按钮,直至光标运行到 代码语言:javascript 复制 BXR0 这一行代码。此时,再点击单步运行按钮,并不会跳转到main.c中的main函数,而是会跳到component.c中的$Sub$$main函数,该函数如下所示: ...
1 delete 命令 简写d delete break 删除所有的断点 delete break n 删除某个断点 n为断点号 2 clear 命令 clear 行号 删除设在某一行的断点 查看断点信息:info b 查看所有断点信息。 单步调试 进入函数内部单步调试step,简写s。 安装函数一行一行执行next,简写n。
RT-Thread Studio单步调试 直接烧录 如果你想直接将编译生成的二进制文件烧录到开发板,不需要进行调试的话,可以点击界面上的“下载程序”图标,或使用Ctrl+Alt+D快捷键: RT-Thread Studio下载程序按钮 串口终端 和其他嵌入式开发IDE类似,RT-Thread Studio也带有“终端”功能,通过“终端”功能我们可以接收并查看串口输出...
使用调试器: 通过调试器对驱动程序进行单步执行和断点调试,以便找到并修复代码中的错误。 编写测试用例: 编写针对设备的测试用例,包括正常操作和异常处理情况,以确保设备驱动的稳定性和可靠性。 模拟设备: 在没有实际硬件设备的情况下,可以使用软件模拟设备来进行初步的驱动开发和调试。 五、RT-Thread设备驱动开发...
里面教怎样下载并安装新版的 CDT。但我使用9.0版本的未安装成功,所以我使用网站提供的链接 CDT Downloads | The Eclipse Foundation 下载了 6.0 版本的,然后再按教程安装 image.png image.png 此时,按调试虽然还有出错,但是已经能单步调度了。 至于还可还报错,我还未能弄明白。