Zephyr笔记3 - 使用Eclipse调试Zephyr
 2020.06.14    |      嵌入式学习    |     AilsonJack    |     暂无评论    |     940 views
By: Ailson Jack
Date: 2020-06-14
个人博客: http://www.only2fire.com/
<p>Zephyr版本号:<span style="color: rgb(255, 0, 0);">2.2.0</span></p><p>开发板:<span style="color: rgb(255, 0, 0);">STM32F429IGT6(野火STM32F429挑战者 V2开发板)</span></p><p>开发环境:<span style="color: rgb(255, 0, 0);">Windows 7 64位</span></p><p style="text-indent: 2em;">这里选择的是Zephyr当前最新的Release版本2.2.0进行说明的。</p><p style="text-indent: 2em;">当需要熟悉Zephyr的具体运行过程,那么调试就必不可少,例如在调试任务切换时,需要观察CPU状态以及各个寄存器的情况,此时图形界面下的调试更为方便。下面讲讲如何使用Eclipse搭配JLink来调试HelloWold应用程序。</p><p class="artical_littlestyle1">1、设置Eclipse环境</p><p>(1).下载并安装Eclipse</p><p style="text-indent: 2em;">从Eclipse网站下载Eclipse IDE for C/C++ Developers,然后进行安装。下载网址:<a href="https://www.eclipse.org/downloads/packages/release/oxygen/2/eclipse-ide-cc-developers" target="_blank">https://www.eclipse.org/downloads/packages/release/oxygen/2/eclipse-ide-cc-developers</a>。</p><p>(2).安装GNU MCU Eclipse插件</p><p style="text-indent: 2em;">打开安装好的Eclipse,在<span style="color: rgb(0, 112, 192);">Help</span>(或者<span style="color: rgb(0, 112, 192);">Window</span>)菜单下面找到<span style="color: rgb(0, 112, 192);">Eclipse Marketplace</span>,然后在Find输入框中输入<span style="color: rgb(0, 112, 192);">GNU MCU eclipse</span>,按Enter键进行搜索,找到<span style="color: rgb(0, 112, 192);">GNU MCU eclipse</span>插件之后,点击Install按钮,我这里之前已经安装好了,如下图所示:</p><p style="text-align:center"><img src="/uploads/AilsonJack/2020.06.14/1592130253801676.png" onclick="preview_image(&#39;/uploads/AilsonJack/2020.06.14/1592130253801676.png&#39;)"/></p><p class="artical_littlestyle2">2、生成Eclipse工程</p><p style="text-indent: 2em;">确定命令提示符的路径在Zephyr2.2.0源代码目录中,执行下述命令来生成Eclipse的工程文件:</p><p><span style="color: rgb(0, 112, 192);">west build -p auto -b stm32f429i_disc1 samples/hello_world -- -G&quot;Eclipse CDT4 - Ninja&quot;</span></p><p style="text-indent: 2em;">生成的Eclipse工程文件<span style="color: rgb(0, 112, 192);">.project</span>在<span style="color: rgb(0, 112, 192);">build</span>目录下。</p><p class="artical_littlestyle3">3、将工程导入到Eclipse</p><p style="text-indent: 2em;">打开安装好的Eclipse,在<span style="color: rgb(0, 112, 192);">File</span>菜单下面点击<span style="color: rgb(0, 112, 192);">Import…</span>,在弹出的窗口中选择<span style="color: rgb(0, 112, 192);">General</span> -&gt; <span style="color: rgb(0, 112, 192);">Existing Projects into Workspace</span>,然后点击<span style="color: rgb(0, 112, 192);">Next</span>,然后添加Zephyr的build的路径,点击<span style="color: rgb(0, 112, 192);">Refresh</span>,选中添加的工程之后点击<span style="color: rgb(0, 112, 192);">Finish</span>:</p><p style="text-align:center"><img src="/uploads/AilsonJack/2020.06.14/1592130257504105.png" onclick="preview_image(&#39;/uploads/AilsonJack/2020.06.14/1592130257504105.png&#39;)"/></p><p style="text-align:center"><img src="/uploads/AilsonJack/2020.06.14/1592130262922720.png" onclick="preview_image(&#39;/uploads/AilsonJack/2020.06.14/1592130262922720.png&#39;)"/></p><p class="artical_littlestyle4">4、创建调试器配置文件</p><p style="text-indent: 2em;">工程导入完成之后,接下来配置调试器,打开菜单<span style="color: rgb(0, 112, 192);">Run</span> -&gt; <span style="color: rgb(0, 112, 192);">Debug Configurations...</span>,在弹出的窗口中双击<span style="color: rgb(0, 112, 192);">GDB SEGGER J-Link Debugging</span>生成调试配置文件。</p><p>Main标签页的配置:</p><p>&nbsp;&nbsp;&nbsp;&nbsp;Project:<span style="color: rgb(0, 112, 192);">hello_world@build</span></p><p>&nbsp;&nbsp;&nbsp;&nbsp;C/C++ Application:<span style="color: rgb(0, 112, 192);">zephyr/zephyr.elf</span></p><p style="text-align:center"><img src="/uploads/AilsonJack/2020.06.14/1592130265255732.png" onclick="preview_image(&#39;/uploads/AilsonJack/2020.06.14/1592130265255732.png&#39;)"/></p><p>Debugger标签页的配置:</p><p>&nbsp;&nbsp;&nbsp;&nbsp;J-Link GDB Server Setup:</p><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Start the J-Link GDB server locally:<span style="color: rgb(0, 112, 192);">取消勾选</span></p><p>&nbsp;&nbsp;&nbsp;&nbsp;GDB Client Setup:</p><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Executable:<span style="color: rgb(0, 112, 192);">arm-none-eabi-gdb.exe</span></p><p style="text-align:center"><img src="/uploads/AilsonJack/2020.06.14/1592130278307542.png" onclick="preview_image(&#39;/uploads/AilsonJack/2020.06.14/1592130278307542.png&#39;)"/></p><p style="text-align:center"><img src="/uploads/AilsonJack/2020.06.14/1592130279356015.png" onclick="preview_image(&#39;/uploads/AilsonJack/2020.06.14/1592130279356015.png&#39;)"/></p><p>Startup标签页的配置:</p><p>&nbsp;&nbsp;&nbsp;&nbsp;Initial Reset and Halt:<span style="color: rgb(0, 112, 192);">取消勾选</span></p><p>&nbsp;&nbsp;&nbsp;&nbsp;Enable semihosting:<span style="color: rgb(0, 112, 192);">取消勾选</span></p><p>&nbsp;&nbsp;&nbsp;&nbsp;Enable SWO:<span style="color: rgb(0, 112, 192);">取消勾选</span>,如下图所示:</p><p style="text-align:center"><img src="/uploads/AilsonJack/2020.06.14/1592130312700902.png" onclick="preview_image(&#39;/uploads/AilsonJack/2020.06.14/1592130312700902.png&#39;)"/></p><p>Set breakpoint at: <span style="color: rgb(0, 112, 192);">__start</span><br/></p><p style="text-align:center"><img src="/uploads/AilsonJack/2020.06.14/1592130285650385.png" onclick="preview_image(&#39;/uploads/AilsonJack/2020.06.14/1592130285650385.png&#39;)"/></p><p>Common标签页的配置如下图红色方框所示:</p><p style="text-align:center"><img src="/uploads/AilsonJack/2020.06.14/1592130292124910.png" onclick="preview_image(&#39;/uploads/AilsonJack/2020.06.14/1592130292124910.png&#39;)"/></p><p class="artical_littlestyle1">5、运行调试器</p><p style="text-indent: 2em;">在使用Eclipse调试Zephyr之前,先打开<span style="color: rgb(0, 112, 192);">JLink GDB Server</span>,然后再点击Eclipse调试按钮下拉菜单的<span style="color: rgb(0, 112, 192);">hello_world_build Configuration</span>调试选项:</p><p style="text-align:center"><img src="/uploads/AilsonJack/2020.06.14/1592130295793490.png" onclick="preview_image(&#39;/uploads/AilsonJack/2020.06.14/1592130295793490.png&#39;)"/></p><p style="text-align:center"><img src="/uploads/AilsonJack/2020.06.14/1592130305327299.png" onclick="preview_image(&#39;/uploads/AilsonJack/2020.06.14/1592130305327299.png&#39;)"/></p><p>点击调试按钮等一小会儿之后,出现了调试界面,惊喜吧:</p><p style="text-align:center"><img src="/uploads/AilsonJack/2020.06.14/1592130308297854.png" onclick="preview_image(&#39;/uploads/AilsonJack/2020.06.14/1592130308297854.png&#39;)"/></p><p style="text-indent: 2em;">之后的步骤,就是自己动手调试代码啦。</p><p style="text-indent: 2em;">如果这篇文章对你有帮助,记得点赞和关注博主就行了^_^。</p>
欢迎关注博主的公众号呀,精彩内容随时掌握:
热情邀请仔细浏览下博客中的广告,万一有对自己有用或感兴趣的呢。◕ᴗ◕。。
如果这篇文章对你有帮助,记得点赞和关注博主就行了^_^,当然了能够赞赏博主,那就非常感谢啦!
注: 转载请注明出处,谢谢!^_^
转载请注明来源: 本文链接:  By: AilsonJack
Zephyr笔记3 - 使用Eclipse调试Zephyr  |  说好一起走
暂无评论,要不要来个沙发
发表评论

 
Copyright © 2015~2023  说好一起走   保留所有权利   |  百度统计  蜀ICP备15004292号