手把手教你搭建织女星开发板RISC-V开发环境

摘要:
jdk软件用于在无法打开Eclipse时安装Eclipse、工具链和调试工具。因为这些软件可以在解压后直接使用,所以我添加了两个批处理文件,用于切换之前的post-Vega开发板启动模式修改中描述的启动模式。安装JAVA运行环境JRE。如果是Eclipse。exe可以正常打开,主界面配置编译链路径Eclipse正常打开,1。配置全局编译工具路径并选择Windows->

前言

Windows环境下搭建基于Eclipse + RISC-V gcc编译器的RISC-V开发环境,配合openocd调试软件,可以实现RISC-V内核程序的编译、下载和调试。

准备工作

工欲善其事,必先利其器,RISC-V开发环境搭建之前,要先准备好所需要的软件,如下:

  • jdk-8u101-windows-x64.exe
  • Eclipse IDE for C/C++ developers
  • GNU MCU Eclipse Windows Build Tools
  • openocd
  • riscv32-unknown-elf-gcc

其中, jdk软件是在Eclipse不能打开时,才需要安装,如果能正常打开Eclipse则不需要安装,后面的几个软件都是压缩包形式,只需要解压到对应的位置,就可以直接使用,不需要安装。

安装Eclipse及工具链、调试工具

由于这些软件都是解压后就可以直接使用的,为了简化操作步骤,我已经把这些软件放在了一起,并压缩成了一个文件,直接解压就可以使用。

Eclipse.rar下载链接

链接:https://pan.baidu.com/s/1TvM_do0hdHHmJw2ARJNMWg 提取码:zj5f

包含:

  • Eclipse
  • GNU MCU Eclipse WindowsBuild Tools
  • openocd
  • riscv32-unknown-elf-gcc
  • Boot_Config

压缩包里,我添加了上一个帖子织女星开发板启动模式修改中介绍的用于切换启动模式的两个批处理文件,可以方便的对RV32M1的启动模式进行切换。

下载eclipse.rar文件之后,解压到本地,我的是解压到 F:VEGA_BoardIDE

手把手教你搭建织女星开发板RISC-V开发环境第1张

其中GNU MCU Eclipse目录结构如下:

手把手教你搭建织女星开发板RISC-V开发环境第2张

安装JAVA运行环境JRE

如果Eclipse.exe可以正常打开,就不用安装JAVA运行环境。我的电脑在运行Eclipse.exe,不能打开,出现A Java Runtime Environment or Java Development Kit(dkmust be available in order to run eclipse. balabala......,如下图

手把手教你搭建织女星开发板RISC-V开发环境第3张

网上搜索一番,发现是没有安装JAVA运行环境,而Eclipse是基于JAVA运行的,然后找了一个jdk安装,再打开就好了。

jdk-8u101-windows-x64.exe下载

链接:https://pan.baidu.com/s/1AhZPEW03y90M2usa2L3c3w 提取码:umsr

下载完成之后,双击安装,一路Next就行,安装目录选择和Eclipse同一级。

手把手教你搭建织女星开发板RISC-V开发环境第4张

如果还不能正常打开,可以尝试在环境变量中添加JAVA_HOME变量,变量值为jre目录下的bin文件夹,我的是在:F:VEGA_BoardIDEjrein,然后重新打开Eclipse。

手把手教你搭建织女星开发板RISC-V开发环境第5张

主界面

手把手教你搭建织女星开发板RISC-V开发环境第6张

配置编译链路径

Eclipse正常打开后,还需要配置编译工具和调试软件的路径。

1.配置全局编译工具路径

选择Windows->Preferences,选择MCU->Global Build Tools Path,设置全局编译工具的路径为[INSTALL_DIR]eclipseGNU MCU EclipseBuild Tools2.12-20190422-1053in

手把手教你搭建织女星开发板RISC-V开发环境第7张

2.配置openocd调试软件路径

选择MCU-> Global OpenOCD Path,设置全局openocd调试软件路径[INSTALL_DIR]eclipseGNU MCU Eclipseopenocdin

手把手教你搭建织女星开发板RISC-V开发环境第8张

3.配置RISC-V编译工具链

选择MCU-> Global RISC-V Toolchains Path,设置全局openocd调试软件路径[INSTALL_DIR]eclipseGNU MCU Eclipse iscv32-unknown-elf-gccin

手把手教你搭建织女星开发板RISC-V开发环境第9张

升级板载调试器固件

为了能直接使用板载调试来直接调试RISC-V内核,需要把板子默认的CMSIS-DAP固件升级为JLink固件,并升级Jlink驱动,详情可以参考这篇帖子:织女星开发板调试器升级为Jlink固件,并把Jlink调试口和RISC-V调试口连接。

手把手教你搭建织女星开发板RISC-V开发环境第10张

编译下载Demo工程

1.导入Demo工程

选择File->Import,或者是按快捷键Alt+F,然后再按I键,选择导入已经存在的工程,

手把手教你搭建织女星开发板RISC-V开发环境第11张

这里我们选择RISC-V核SDK下的GPIO点灯程序,所在的位置: v32m1_sdk_riscvoards v32m1_vegadriver_examplesgpioled_output i5cy iscveclipse

在弹出的界面,输入工程所在的目录,点击完成。

手把手教你搭建织女星开发板RISC-V开发环境第12张

2.编译下载

示例程序很简单,就是让RGB中红色LED闪烁。

手把手教你搭建织女星开发板RISC-V开发环境第13张

工程名称右键选择Build Project,或者是按快捷键Ctrl+B,编译整个工程。

手把手教你搭建织女星开发板RISC-V开发环境第14张

如果没有错误,会显示

Info: Internal Builder is used for build
Info: Parallel threads used: 0

20:38:19 Build Finished. 0 errors, 0 warnings. (took 1s.876ms)

默认是编译的Debug版本,还可以选择编译Release版本。

手把手教你搭建织女星开发板RISC-V开发环境第15张

编译无误后,点击Run->Run As->2 Local C/C++ Application

手把手教你搭建织女星开发板RISC-V开发环境第16张

选择下载Debug还是Release版本的编程文件

手把手教你搭建织女星开发板RISC-V开发环境第17张

下载日志。

Open On-Chip Debugger 0.10.0+dev-00433-g849f49ca (2019-01-04-07:48)
Licensed under GNU GPL v2
For bug reports, read
	http://openocd.org/doc/doxygen/bugs.html
adapter speed: 1000 kHz
srst_only separate srst_gates_jtag srst_open_drain connect_deassert_srst
Info : mohor tap selected
Info : adv debug unit selected
Info : Option 1 is passed to adv debug unit
Info : core 0 selected
Info : add flash_bank rv32m1 rv32m1.flash0
Info : add flash_bank rv32m1 rv32m1.flash1
Warn : Failed to open device: LIBUSB_ERROR_NOT_SUPPORTED.
Info : J-Link LPCXpresso V2 compiled Sep 23 2016 12:14:15
Info : Hardware version: 1.00
Info : VTarget = 3.300 V
Info : clock speed 1000 kHz
Info : JTAG tap: rv32m1.cpu tap/device found: 0x249511c3 (mfg: 0x0e1 (Wintec Industries), part: 0x4951, ver: 0x2)
Info : adv debug unit is configured with option ADBG_USE_HISPEED
Info : Listening on port 3333 for gdb connections
Started by GNU MCU Eclipse
Info : Listening on port 6666 for tcl connections
Info : Listening on port 4444 for telnet connections
Info : accepting 'gdb' connection on tcp/3333
Info : JTAG tap: rv32m1.cpu tap/device found: 0x249511c3 (mfg: 0x0e1 (Wintec Industries), part: 0x4951, ver: 0x2)
Info : JTAG tap: rv32m1.cpu tap/device found: 0x249511c3 (mfg: 0x0e1 (Wintec Industries), part: 0x4951, ver: 0x2)
Info : JTAG tap: rv32m1.cpu tap/device found: 0x249511c3 (mfg: 0x0e1 (Wintec Industries), part: 0x4951, ver: 0x2)
Info : JTAG tap: rv32m1.cpu tap/device found: 0x249511c3 (mfg: 0x0e1 (Wintec Industries), part: 0x4951, ver: 0x2)
Info : Flash write discontinued at 0x00001424, next section at 0x000fff00
Info : JTAG tap: rv32m1.cpu tap/device found: 0x249511c3 (mfg: 0x0e1 (Wintec Industries), part: 0x4951, ver: 0x2)
Info : JTAG tap: rv32m1.cpu tap/device found: 0x249511c3 (mfg: 0x0e1 (Wintec Industries), part: 0x4951, ver: 0x2)
Info : JTAG tap: rv32m1.cpu tap/device found: 0x249511c3 (mfg: 0x0e1 (Wintec Industries), part: 0x4951, ver: 0x2)
===== RI5CY registers
(0) zero (/32): 0x00000000
(1) ra (/32): 0x00000000

3.显示效果

手把手教你搭建织女星开发板RISC-V开发环境第18张

参考资料

历史精选


欢迎关注我的个人博客www.wangchaochao.top

或微信扫码关注我的公众号

手把手教你搭建织女星开发板RISC-V开发环境第19张

免责声明:文章转载自《手把手教你搭建织女星开发板RISC-V开发环境》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇.Net Core应用框架Util介绍(五)SendMessage发送WM_COMMAND消息控制另一个程序的某一个按钮下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

界面控件工具DevExpress WinForms v21.1

DevExpress WinForms拥有180+组件和UI库,能为Windows Forms平台创建具有影响力的业务解决方案。DevExpress WinForms能完美构建流畅、美观且易于使用的应用程序,无论是Office风格的界面,还是分析处理大批量的业务数据,它都能轻松胜任! DevExpress WinFormv21.2 11月发布了正式版本,新...

windows 和office破解

office 365、2016、2019专业版、批量版或零售版都可以的,不需要密钥快速激活。 这样的软件: 1、激活成功率非常高同时激活速度非常快,几乎支持所有Vl批量授权版本的产品; 2、对于软件没有直接支持的产品你还可以通过搭建内置的KMS服务器然后进行手动激活产品; 3、支持对Windows系统以及Office办公软件备份激活信息,重装系统或软件可以...

活久见!Jmeter也能实现文件传输和发送邮件啦

本文章出自【码同学软件测试】 码同学公众号:自动化软件测试,领取资料可加:Matongxue_8 码同学抖音号:小码哥聊软件测试 Jmeter实现文件处理和邮件发送 Jmeter除了支持Http协议以外,还支持多种其他协议,包括FTP协议和SMTP/POP3协议,可以用于文件上传下载和邮件发送。Jmeter内置FTP Sampler,可以很方...

opencv笔记---contours

一 Contour Finding     Contours使用 STL-style vector<> 表示,如 vector<cv::Point>, vector<cv::Point2f>。opencv中,使用函数 cv::findContours() 寻找contours, 具体函数定义如下:     void cv...

形形色色的软件生命周期模型(1)——瀑布型、增量型

摘要:读大学时,我们曾经学习过不少软件生命周期模型,当时还不是很懂软件开发,你可能会觉得这些东西很新奇。在实际工作中,你会发现这些模型其实很难应用,与此同时你会接触到RUP、MSF等权威软件公司的生命周期模型。本文将向你介绍各种常见的软件生命周期模型及它们的优缺点,文章最后还会介绍吸取了各种模型优点的实用生命周期模型。 大纲: 1.瀑布型 2.增量型 3....

广联达计价软件的初见

  1.前期准备 可爱的计价大佬一名(必须项 记得喂食!) 广联达计价软件一套,并安装完成(具体安装参照商家的指导!) 狗一只  牢记“狗号” 笔记本一台,最好没有杀毒等软件 需要计价的工程量清单一份 2.软件层面的具体操作步骤(以广西 的市政工程投标编制投标报价为例子) 1、更新最新的软件 使用:广联达G+工作台GWS 查找最新的计价软件,并下载...