RISC-V技术论坛
直播中

jf_15811252

3年用户 249经验值
擅长:嵌入式技术
私信 关注

【兆易创新GD32VF103R-START开发板试用体验】基于MRS开发环境的RT-Thread Nano移植

本帖最后由 jf_15811252 于 2022-5-20 09:42 编辑

       测评开发板的主控是GD32VF103RBT6,128Kflash以及32Kram,看着这个资源,跑操作系统已经完全够了,于是就开始动手移植RT-Thread Nano ,这个操作系统对 RAM 与 ROM 的开销非常小,在支持 semaphore 和 mailbox 特性,并运行两个线程 (main 线程 + idle 线程) 情况下,ROM 和 RAM 依然保持着极小的尺寸,RAM 占用约 1K 左右,ROM 占用 4K 左右 ,所以直接开始移植。
      本次以MounRiver Studio(MRS)开发环境为例,这个开发环境比较友好,方便入手,也比较好用。 准备一个可以直接运行的裸机工程,这里以刚开始新建的工程为例。MRS开发环境新建工程可以参考:https://bbs.elecfans.com/jishu_2280948_1_1.html
       下载RT-Thead Nano 3.15版本的源码,然后在自己的工程中新建rt-thread文件夹用来存放rt-thread nano 的相关文件。
1.jpg
2.jpg

接下来打开源码,将src、libcpu以及include直接复制到自己工程下的rt-thread下,然后在源码文件夹下找到bsp文件夹,这个文件夹存放的是板级支持包,将board.c和rtconfig.h复制到自己的工程下
3.jpg
接下来打开libcpu文件夹,将里面的arm文件夹删掉
4.jpg
打开risc-v文件夹,只保留bumblebee文件夹和common文件夹
5.jpg
接下来打开工程,右击工程点击刷新或者按F5刷新
6.jpg
接下来只需添加头文件路径即可
7.jpg
添加完成如下所示
8.jpg
接下来添加汇编路径
9.jpg
添加完成如下
10.jpg
接下来点击编译,会发现汇报错,内容是找不到rtconfig.h,这里不知道什么原因,找了好久没找到,找了一种解决方法即把这个文件屏蔽,将内容复制到rtconfig.h中
报错


11.jpg
屏蔽
12.jpg
内容复制到rtconfig.h中
13.jpg
在次编译,0警告,0错误
14.jpg
接下来找到risc-v文件夹下,将main改为entry,因为在risc-v中启动代码是在entry函数中

xiugai.jpg
在主函数中,将操作系统的头文件添加到main.c中,然后将裸机延时函数改为操作系统延时函数
15.jpg
在次编译,0错误,0警告,然后将程序下载到开发板中,程序正常运行,rt-thread nano在这块板子上已经跑起来了


QQ短视频20220519202431

  • 15.jpg

回帖(2)

dianzi

2022-5-20 10:18:16
移植编译居然不报错,不科学  
3 举报
  • jf_15811252: 报错了啊
  • jf_15811252: 看你在什么时候编译,我移植了好几次,最后一次写的文章,所以我是在把前面遇到问题报错的地方解决了在进行编译的
  • dianzi 回复 jf_15811252: 哈哈哈 就是说啊 移植怎么能不报错呢

舒家生

2023-9-4 09:48:41
大佬,移植的时候board.c里面的内容不用修改吗
举报

更多回帖

发帖
×
20
完善资料,
赚取积分