本次移植的开发板为KD233(基于K210芯片),开发环境为Ubuntu
安装工具链
链接:https://github.com/ilg-archived/riscv-none-gcc/releases
下载gnu-mcu-eclipse-riscv-none-gcc-8.2.0-2.2-20190521-0004-centos64.tgz
这里不要使用kendryte官方的toolchain,无法完成,原因还没搞清楚。
下载后将工具解压
$ sudo mv gnu-mcu-eclipse-riscv-none-gcc-8.2.0-2.2-20190521-0004-centos64.tgz /opt
$ cd /opt
$ sudo tar -zxvf gnu-mcu-eclipse-riscv-none-gcc-8.2.0-2.2-20190521-0004-centos64.tgz
打开~/.bashrc文件,在文件末尾添加如下一行,将 /opt/kendryte-toolchain/bin 目录添加到PATH环境变量,并更新生效
export PATH=$PATH:/opt/gnu-mcu-eclipse/riscv-none-gcc/8.2.0-2.2-20190521-0004/bin
$ source ~/.bashrc
链接:https://www.rt-thread.org/page/download.html
选择自己喜欢的方式下载。
首先配置scons编译时用的工具链路径。在下载好的rtt源码下找到k210的bsp,路径如下:\rt-thread\bsp\k210,打开文件夹中的rtconfig.py
# toolchains options
ARCH ='risc-v'
CPU ='k210'
CROSS_TOOL ='gcc'
if os.getenv('RTT_ROOT'):
RTT_ROOT = os.getenv('RTT_ROOT')
else:
RTT_ROOT = r'../..'
if os.getenv('RTT_CC'):
CROSS_TOOL = os.getenv('RTT_CC')
if CROSS_TOOL == 'gcc':
PLATFORM = 'gcc'
EXEC_PATH = r'/opt/gnu-mcu-eclipse/riscv-none-gcc/8.2.0-2.2-20190521-0004/bin'
else:
print('Please make sure your toolchains is GNU GCC!')
exit(0)
#if os.getenv('RTT_EXEC_PATH'):
# EXEC_PATH = os.getenv('RTT_EXEC_PATH')
需要修改2个地方:一是EXEC_PATH,改为第一步中工具链的路径;二是最后两行代码用#注释掉,防止与env中默认指向内部的arm-gcc工具链的路径冲突。
在RTT源码下/rt-thread/bsp/k210路径打开终端,开启配置界面
$ scons --menuconfig
使用该命令后会安装及初始化 Env 工具,并在 home 目录下面生成 “.env” 文件夹,此文件夹为隐藏文件夹,切换到 home 目录,使用 la 命令可查看所有目录和文件。
$ la ~/.env
env.sh local_pkgs packages tools
运行 env.sh 配置环境变量
$ source ~/.env/env.sh
使用 pkgs --update 命令下载软件包到 BSP 目录下的 packages 文件夹里
$ pkgs --update
然后输入命令code .(不要漏掉后面的空格和点),召唤VSCode
$ code .
点击TERMINAL。现在VSCode中的终端就变成了env工具,可以直接在这个终端中进行env的一些操作。这里我们要先输入指令,scons --target=vsc -s,如下图
这条指令能将在env中配置产生的头文件的搜索路径添加到vs code中,每次使用完env中的menuconfig功能后都要记得使用这个指令更新一下配置,否则可能会出现找不到头文件的错误。
在vs code的终端中输入“scons”并按回车,等待一会儿要是没有error,显示scons: done building targets.就成功完成编译了,工程文件夹中就会多出一个bin文件
下载kflash.py,链接:https://github.com/kendryte/kflash.py
解压kflash.py-master.zip到任意文件夹(你喜欢哪里就解压到哪里),电脑连接KD233并上电。
在解压后的kflash.py-master文件夹下打开终端,下载bin文件(路径根据你的源码所在路径输入)
$ sudo python3 kflash.py -t /media/zhaojs0622/Data/rt-thread/bsp/k210/rtthread.bin
参考文章:
1、在sipeed maix go上用上rt-thread以及vs code
https://blog.csdn.net/qq_40688292/article/details/103927710
2、在 Ubuntu 平台开发 RT-Thread
https://www.rt-thread.org/document/site/application-note/setup/qemu/ubuntu/an0005-qemu-ubuntu/
3、K210命令行开发环境搭建指南
https://forum.kendryte.com/topic/216/k210-q-a/2