windows下如何通过gdb连接redboot调试eCos

eCos是gnu的产物,无论采用eclipse开发环境或者其他商业的开发环境如果要单步调试eCos的代码,

都需要通过gdb,这些ide无非是把gdb做了一次包装或者是提供了图形化的gdb命令执行方式。

既然gdb盛行于linux,如果在Windows下想应用gdb必须有linux的仿真环境。或者是Cygwin或者是MingW。

(本文原创转载请注明出处http://blog.csdn.net/rickleaf)

另外一点就是运行gdb调试必须有gdb server和gdb client连接,在eCos中有可以通过redboot的eCos stub作为gdb server。

然后应用程序编译成ram方式,通过串口或者网口连接redboot的gdb server。

GNU的强大毋庸置疑,所以很多ARM硬件仿真器已经开始内置GDB server,这样调试ecos就可以直接利用仿真器了,

segger公司的JLink就是一个性价比比较高的仿真器。下面以stm32为例,分别介绍一下gdb连接redboot的调试方法。

选择eCos的STM3210e模板,指定为redboot类型

windows下如何通过gdb连接redboot调试eCos_第1张图片

指定redboot的启动类型为ROM方式,这里会以stm32内部的flash作为启动资源

windows下如何通过gdb连接redboot调试eCos_第2张图片

编译生成redboot.bin,烧入到芯片中,可以通过串口看到redboot的命令窗口

windows下如何通过gdb连接redboot调试eCos_第3张图片

以ram的启动方式编译ecos的测试应用程序

windows下如何通过gdb连接redboot调试eCos_第4张图片

设定ecos的启动方式为ram

windows下如何通过gdb连接redboot调试eCos_第5张图片

然后参考本博客的其他帖子编译eCos的简单测试程序

关掉串口终端,打开Cygwin,按照图片上的命令连接redboot。

windows下如何通过gdb连接redboot调试eCos_第6张图片

通过Jlink GDB server连接调是eCos 请参考另一篇文章

你可能感兴趣的:(eclipse,windows,linux,server,测试,Flash)