• Home
  • Annotate
  • current directory
Name Date Size #Lines LOC

..21-Aug-2025-

applications/21-Aug-2025-

drivers/21-Aug-2025-

figures/21-Aug-2025-

freedom-e-sdk/21-Aug-2025-

.config A D21-Aug-202544.6 KiB1,3611,255

Kconfig A D21-Aug-2025300 1812

Makefile A D21-Aug-202580 85

README.md A D21-Aug-20254.8 KiB188107

SConscript A D21-Aug-2025423 1915

SConstruct A D21-Aug-2025806 3224

openocd.cfg A D21-Aug-20251,006 3528

openocd.sh A D21-Aug-2025361 62

rtconfig.h A D21-Aug-20257.5 KiB38765

rtconfig.py A D21-Aug-20251.8 KiB6448

README.md

1# HIFIVE1 #
2
3## 简介
4
5[HIFIVE1](https://www.sifive.com/products/hifive1/) 是由 SiFive 公司推出的全球首款基于开源指令集 RISC-V 架构的商用 SoC Freedom E310 的开发板。
6
7![1538284005769](figures/board.png)
8
9
10
11### 板载资源:
12
13| 硬件 | 描述 |
14| -- | -- |
15|Soc| SiFive Freedom E310 (FE310) |
16| 内核    | SiFive E31 RISC-V Core                                      |
17| 架构       |  32-bit RV32IMAC                                         |
18| 主频       | 320+ MHz                                              |
19| 性能 | 1.61 DMIPs/MHz, 2.73 Coremark/MHz            |
20|SRAM| 16KB |
21|Flash| 16MB QSPI + 16KB 指令Cache |
22
23## 编译说明
24
25### 下载 Freedom Studio
26
27Freedom Studio 是 SiFive 公司推出的一个集成开发环境,用来编写和调试基于 SiFive 处理器的软件。内嵌了编译好的 RISC-V GCC 工具链、OpenOCD、以及一些示例和文档。
28
29下载地址:[官网下载](https://www.sifive.com/products/tools/)
30
31![1538295358180](figures/dowmload.png)
32
33下载成功之后,解压到和 rt-thread 源码同一目录下
34
35![1538295750998](figures/untar.png)
36
37### 配置工具链
38
39工具链就在解压开的 IDE  `F:\FreedomStudio\SiFive\riscv64-unknown-elf-gcc-20171231-x86_64-w64-mingw32\bin` 目录下。
40
41在源码  `rt-thread/bsp/hifive1/` 目录下,运行 env 工具,输入下面的命令设置 gcc 工具链路径
42
43```
44set RTT_EXEC_PATH=F:\FreedomStudio\SiFive\riscv64-unknown-elf-gcc-20171231-x86_64-w64-mingw32\bin
45```
46
47或者通过`scons --exec-path="GCC工具链路径"`命令,在指定工具链位置的同时直接编译。
48
49### 添加环境变量
50
51将 **工具链**和**编译工具**的路径 添加到环境变量里,输入命令如下
52
53```
54set path=%path%;工具链的路径;编译工具的路径;
55```
56
57例如:
58
59```
60set path=%path%;F:\FreedomStudio\SiFive\riscv64-unknown-elf-gcc-20171231-x86_64-w64-mingw32\bin;F:\FreedomStudio\build-tools\bin
61```
62
63![1538296570129](figures/env.png)
64
65### 从 env 工具打开 IDE
66
67利用 cd 命令,切换到解压开的 IDE 目录
68
69![1538296766437](figures/cd.png)
70
71输入 Freedom Studio 按 Tab 键 自动补全,然后按回车运行 IDE。
72
73![1538296878924](figures/open_ide.png)
74
75在弹出的窗口输入 workspace 创建工作空间,然后点击启动打开 IDE。
76
77![1538296978929](figures/ide.png)
78
79### 导入工程
80
81在菜单栏点击 `File->Import`
82
83![1538297215062](figures/import.png)
84
85按照下面的图片导入工程
86
87![1538297303505](figures/import2.png)
88
89![1538297553367](figures/import3.png)
90
91
92
93### 编译
94
95![1538297679868](figures/build.png)
96
97然后等待编译完成
98
99![1538297922206](figures/builded.png)
100
101
102
103
104## 烧写及执行
105
106### 安装驱动
107
1081. 使用 Micro USB 线连接电脑和开发板。
109
1102. 然后双击安装 IDE 目录 `F:\FreedomStudio\SiFive\Drivers` 下的驱动文件
111
112### 添加字符串定义
113
114点击菜单栏 `Window->preferences`  按下图的步骤将 字符串 `cross_prefix` 定义为 `riscv64-unknown-elf-`
115
116![1538298633528](figures/string.png)
117
118### 配置 Debug 参数
119
120选中生成的 `rtthread.elf` 文件,右键配置 Debug 参数,如下图所示
121
122![1538298914673](figures/debug.png)
123
124按下图新建一个 Debug 选项
125
126![1538299063801](figures/debug1.png)
127
128打开 `Debugger` 选项卡 添加如下参数
129
130```
131-f openocd.cfg
132
133set mem inaccessible-by-default off
134set arch riscv:rv32
135set remotetimeout 250
136```
137
138如下图所示:
139
140![1538299273874](figures/debug2.png)
141
142打开 `startup` 选项卡,去掉**主机模式**和**复位命令**
143
144![1538299521246](figures/debug3.png)
145
146然后待程序停止在 main 函数处,然后点击继续运行程序就运行起来了。
147
148![1538299736730](figures/run.png)
149
150### 运行结果
151
152下载程序之后,连接串口(115200-N-8-1),可以看到RT-Thread的输出信息:
153
154```
155 \ | /
156- RT -     Thread Operating System
157 / | \     3.0.4 build May 30 2018
158 2006 - 2018 Copyright by rt-thread team
159msh >
160```
161
162## 4. 驱动支持情况及计划
163
164| 驱动 | 支持情况  |  备注  |
165| ------ | ----  | :------:  |
166| UART | 支持 | UART0_RX/TX:GPIO 16/17 |
167
168
169### 4.1 IO在板级支持包中的映射情况
170
171| IO号 | 板级包中的定义 |
172| -- | -- |
173| GPIO19 | LED_GREEN |
174| GPIO21 | LED_BLUE |
175| GPIO22 | LED_RED |
176
177## 5. 联系人信息
178
179维护人:
180- [tanek](https://github.com/liangyongxiang)
181
182## 6. 参考
183
184* [HIFIVE1 Info](https://www.sifive.com/products/hifive1/)
185* [HIFIVE1 Software Development Tools](https://www.sifive.com/products/tools/)
186* [hifive1-getting-started-guide](https://www.sifive.com/documentation/boards/hifive1/hifive1-getting-started-guide/)
187* [hifive1-schematics](https://www.sifive.com/documentation/boards/hifive1/hifive1-schematics/)
188