查看: 1520|回复: 0
收起左侧

教你玩转[06]_RVSTAR—QEMU篇

[复制链接]
  • TA的每日心情
    拍拍
    2022-6-27 11:09
  • 签到天数: 25 天

    [LV.4]

    发表于 2021-5-8 16:35:35 | 显示全部楼层 |阅读模式

    有人预言,RISC-V或将是继Intel和Arm之后的第三大主流处理器体系。欢迎访问全球首家只专注于RISC-V单片机行业应用的中文网站

    您需要 登录 才可以下载或查看,没有帐号?立即注册

    x
    本帖最后由 sky 于 2021-5-8 16:34 编辑

    最近发布的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
    QEMU篇-01.png

    根据自己的操作系统下载对应的文件即可,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 功能。
    QEMU篇-02.png
    QEMU篇-03.png
    QEMU篇-04.png


    三、新建模板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” 即可;
    QEMU篇-05.png

    我们在选择 Board 时,请记得一定要选 gd32vf103v_rvstar 这块板子噢!
    QEMU篇-06.png

    在选择模板工程页面修改“Project Example”选项为“baremetal_helloworld”。
    QEMU篇-07.png

    后续页面不需要修改,点击“Next”直到最后一页,点击“Finish”完成新建模板helloworld工程。

    最终IDE界面显示如下:
    QEMU篇-08.png


    四、调试helloworld

    在Launch Bar可以看到有两个配置如下图
    QEMU篇-09.png

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

    然后选中 debug 模式并启动 debug
    QEMU篇-11.png

    编译器对代码进行编译后,会跳出 Switch 框,选 Switch 后进入调试模式
    QEMU篇-12.png

    调试模式的界面如下
    QEMU篇-13.png

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

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

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

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

    在工具栏选 :

    Window ->Show View ->Registers
    QEMU篇-17.png

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


    五、运行helloworld

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

    结束QEMU依次点下面三个按钮,确保进程已结束。
    QEMU篇-20.png

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

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

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

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


    RISCV作者优文
    全球首家只专注于RISC-V单片机行业应用的中文网站
    点评回复

    使用道具 举报

    高级模式
    B Color Image Link Quote Code Smilies

    本版积分规则

    关闭

    RISC-V单片机中文网上一条 /2 下一条



    版权及免责声明|RISC-V单片机中文网

    GMT+8, 2026-4-24 16:26 , Processed in 0.200915 second(s), 36 queries .

    快速回复 返回顶部 返回列表