rt-thread-official/bsp/hifive1
Meco Man 8b0610fc34 [bsp][readme] 增加scons --exec-path=xxx 命令的使用说明 2022-10-10 09:42:44 +08:00
..
applications [bsp][applications][sconscript] 整理统一sconscript格式 (#6481) 2022-10-03 10:43:08 -04:00
drivers [console] 解决在没有定义RT_USING_DEVICE的情况下使用device报错的问题 2022-01-09 00:20:32 +08:00
figures [bsp][hifive1]更新 README,添加编译及下载运行方法 2018-09-30 18:07:57 +08:00
freedom-e-sdk [BSP] Update Hifive1 BSP with unified RV porting. 2018-12-08 10:42:40 +08:00
.config update the project for RT-Thread_V4.1.1 2022-08-16 19:38:48 +08:00
Kconfig [bsp][Kconfig]在bsp的Kconfig中select组件初始化与user main的选项 2019-09-11 12:06:43 +08:00
Makefile [bsp][hifive1] add Makefile file 2018-09-30 10:33:34 +08:00
README.md [bsp][readme] 增加scons --exec-path=xxx 命令的使用说明 2022-10-10 09:42:44 +08:00
SConscript [bsp] add new bsp: hifive1 2018-05-31 14:58:59 +08:00
SConstruct [update] CFLAGS 2021-12-17 14:28:40 +08:00
openocd.cfg [bsp] add new bsp: hifive1 2018-05-31 14:58:59 +08:00
openocd.sh [bsp] add new bsp: hifive1 2018-05-31 14:58:59 +08:00
rtconfig.h update the project for RT-Thread_V4.1.1 2022-08-16 19:38:48 +08:00
rtconfig.py [BSP] Update Hifive1 BSP with unified RV porting. 2018-12-08 10:42:40 +08:00

README.md

HIFIVE1

简介

HIFIVE1 是由 SiFive 公司推出的全球首款基于开源指令集 RISC-V 架构的商用 SoC Freedom E310 的开发板。

1538284005769

板载资源:

硬件 描述
Soc SiFive Freedom E310 (FE310)
内核 SiFive E31 RISC-V Core
架构 32-bit RV32IMAC
主频 320+ MHz
性能 1.61 DMIPs/MHz, 2.73 Coremark/MHz
SRAM 16KB
Flash 16MB QSPI + 16KB 指令Cache

编译说明

下载 Freedom Studio

Freedom Studio 是 SiFive 公司推出的一个集成开发环境,用来编写和调试基于 SiFive 处理器的软件。内嵌了编译好的 RISC-V GCC 工具链、OpenOCD、以及一些示例和文档。

下载地址:官网下载

1538295358180

下载成功之后,解压到和 rt-thread 源码同一目录下

1538295750998

配置工具链

工具链就在解压开的 IDE F:\FreedomStudio\SiFive\riscv64-unknown-elf-gcc-20171231-x86_64-w64-mingw32\bin 目录下。

在源码 rt-thread/bsp/hifive1/ 目录下,运行 env 工具,输入下面的命令设置 gcc 工具链路径

set RTT_EXEC_PATH=F:\FreedomStudio\SiFive\riscv64-unknown-elf-gcc-20171231-x86_64-w64-mingw32\bin

或者通过scons --exec-path="GCC工具链路径"命令,在指定工具链位置的同时直接编译。

添加环境变量

工具链编译工具的路径 添加到环境变量里,输入命令如下

set path=%path%;工具链的路径;编译工具的路径;

例如:

set path=%path%;F:\FreedomStudio\SiFive\riscv64-unknown-elf-gcc-20171231-x86_64-w64-mingw32\bin;F:\FreedomStudio\build-tools\bin

1538296570129

从 env 工具打开 IDE

利用 cd 命令,切换到解压开的 IDE 目录

1538296766437

输入 Freedom Studio 按 Tab 键 自动补全,然后按回车运行 IDE。

1538296878924

在弹出的窗口输入 workspace 创建工作空间,然后点击启动打开 IDE。

1538296978929

导入工程

在菜单栏点击 File->Import

1538297215062

按照下面的图片导入工程

1538297303505

1538297553367

编译

1538297679868

然后等待编译完成

1538297922206

烧写及执行

安装驱动

  1. 使用 Micro USB 线连接电脑和开发板。

  2. 然后双击安装 IDE 目录 F:\FreedomStudio\SiFive\Drivers 下的驱动文件

添加字符串定义

点击菜单栏 Window->preferences 按下图的步骤将 字符串 cross_prefix 定义为 riscv64-unknown-elf-

1538298633528

配置 Debug 参数

选中生成的 rtthread.elf 文件,右键配置 Debug 参数,如下图所示

1538298914673

按下图新建一个 Debug 选项

1538299063801

打开 Debugger 选项卡 添加如下参数

-f openocd.cfg

set mem inaccessible-by-default off
set arch riscv:rv32
set remotetimeout 250

如下图所示:

1538299273874

打开 startup 选项卡,去掉主机模式复位命令

1538299521246

然后待程序停止在 main 函数处,然后点击继续运行程序就运行起来了。

1538299736730

运行结果

下载程序之后,连接串口(115200-N-8-1)可以看到RT-Thread的输出信息

 \ | /
- RT -     Thread Operating System
 / | \     3.0.4 build May 30 2018
 2006 - 2018 Copyright by rt-thread team
msh >

4. 驱动支持情况及计划

驱动 支持情况 备注
UART 支持 UART0_RX/TXGPIO 16/17

4.1 IO在板级支持包中的映射情况

IO号 板级包中的定义
GPIO19 LED_GREEN
GPIO21 LED_BLUE
GPIO22 LED_RED

5. 联系人信息

维护人:

6. 参考