RISC-V MCU中文社区

【分享】 RVMCU课堂「6」: 手把手教你玩转RVSTAR—QEMU篇

发表于 GD32VF103 MCU 2021-04-13 12:54:58
0
8294
1

最近发布的202102版本的Nuclei Studio IDE增加了QEMU仿真器,可支持RV-STAR开发板的仿真,本教程旨在介绍如何使用该仿真环境进行RISC-V嵌入式开发。


系统环境

Windows 10-64bit


软件平台

Nuclei Studio IDE 202102版



Nuclei Studio的下载和安装


在芯来科技官网文档与工具页面可以下载 Nuclei Studio IDE软件,其链接如下:

https://www.nucleisys.com/download.php


根据自己的操作系统下载对应的文件即可,IDE不需要安装,下载后直接解压缩即可使用;



启动Nuclei Studio


在 Nuclei Studio 解压缩的目录下双击 NucleiStudio.exe 即可启动 IDE;
第一次启动 Nuclei Studio 将会弹出对话框要求设置 Workspace 目录路径,该目录将用于存放后续创建的项目工程文件。设置好 Workspace 路径,再单击 “Launch” 启动 Nuclei Studio;
启动后页面如下图,推荐打开 Launch Bar 功能,方便快速编译和调试。打开菜单栏 “Window -> Preferences”,搜索 “bar”,勾选第一个选项 “Enable the Launch Bar”即可启用 Launch Bar 功能。
下滑查看更多



新建模板helloworld工程


在菜单栏中,选择 “File-> New -> C/C++ Project” 开始新建工程,在弹窗中双击选择 “C Managed Build” ;

新的页面中 “Project name” 填写 “helloworld” , “Project type”  选择 “Nuclei SDK Project For GD32VF103 SoC” 和 “RISC-V Cross GCC” ,如下图,点击 “Next” 。新的页面不用修改,直接点击 “Next” 即可;





我们在选择 Board ,请记得一定要选 gd32vf103v_rvstar 这块板子噢!




在选择模板工程页面修改“Project Example”选项为“baremetal_helloworld”。




后续页面不需要修改,点击“Next”直到最后一页,点击“Finish”完成新建模板helloworld工程。
最终IDE界面显示如下:





调试helloworld


在Launch Bar可以看到有两个配置如下图



我们看一下QEMU的配置,这些已经配置好了,如果不太了解的同学,这里基本上可以不用进行任何设置。




然后选中 debug 模式并启动 debug



编译器对代码进行编译后,会跳出 Switch 框,选 Switch 后进入调试模式




调试模式的界面如下




IDE提供了丰富的调试工具,具体的就不一一介绍了,大家可以去尝试。



虽然是在QEMU仿真环境下,但应用的还是gdb调试工具,所以也是支持gdb命令行调试的,选中Debugger Console,就可以输入gdb命令了。



我们可以查看一下仿真环境下的寄存器。结果如下图,更多命令使用大家可以自行查阅gdb的使用手册。




当然,也可以在图形界面中查看寄存器。

在工具栏选 :

Window ->Show View ->Registers




在弹出的 Registers 框中,就可以非常方便的查看寄存器信息。我们可以在调试过程中查看相关信息的变化。





运行helloworld


在调试模式下代码无bug,我们可以直接运行代码查看运行结果,在run程序前,一定要将之前启动的QEMU结束掉,不管是openOCD还是QEMU的进程都是排它性,所以运行或者调试结束后,一定要记得点关闭按钮。不然后报错如下图:




结束QEMU依次点下面三个按钮,确保进程已结束。




结束调试后开始运行前,建议clean一下工程,在工程名上左键->clean Project,IDE就会帮您清除掉编译生成的编译文件。




直接点运行,就可以了看到IDE开始编译代码并运行,如果代码正确,就会输出代码的结果。

下滑查看更多


在没有连接板子的情况下,我们成功运行了helloworld程序。

至此,在Nuclei Studio中基于QEMU进行嵌入式代码开发和调试的介绍就结束了。




更多实验例程



可以到RVMCU社区
快速入门页面
获取教程资料

https://www.rvmcu.com/quickstart.html


欢迎登陆我们的RV社区:https://www.riscv-mcu.com,更多精彩的RVMCU内容等您来~

喜欢1
用户评论
admin

admin 实名认证

专业RISC-V处理器IP找“芯来”

积分
问答
粉丝
关注
专栏作者
个人开发者
企业开发者
  • RV-STAR 开发板
  • RISC-V处理器设计系列课程
  • 培养RISC-V大学土壤 共建RISC-V教育生态
RV-STAR 开发板