开发环境
软件
- ubuntu20.04
- VMware Workstation
硬件
- RDC2022纪念版开发板
- 全志D1s芯片
材料下载
首先打开虚拟机,创建一个目录存放本次测试的代码,然后克隆RT-Smart用户态代码。
| |

在userapps目录下克隆RT-Thread仓库代码
| |

Riscv工具链配置
进入userapps/tools,运行 get_toolchain.py 的脚本,会下载对应的工具链并展开到 userapps\tools\gun_gcc 目录。
| |

返回上一级,刷新工具链环境,同时记住这里的EXEC_PATH工具链路径,后面需要修改为此路径
| |

内核环境编译
scons安装
环境编译会用到scons,所以我们先下载scons
| |
查看scons版本信息可判断是否安装成功

env工具安装
依次执行以下程序:
| |
内核编译
使用 scons 命令进行编译,编译成功后会在 userapps/rt-thread/bsp/allwinner/d1s 目录下生成 sd.bin,这个文件就是我们需要烧录到开发板中的文件,它包括了 uboot.dtb,opensbi,rtthread.bin。
| |
此时直接编译会报错,因为工具链路径还没有修改

我们复制上面的工具链路径,vi命令修改rtconfig.py,这里的路径依据你自己的工具链路径

再次执行scons命令编译

程序烧录
我这里采用的是从TF卡作为启动方式。
1、首先准备一张容量在128G的空白TF卡
2、格式化TF卡,并使用ubuntu的gparted工具重新分区
如果没有下载该工具可使用下面的命令进行下载:
| |
启动该工具
| |
这里我使用的是一张64G的TF卡,扇区大小为512字节,同时我们需要预留8M的前空间,并且分区的文件系统格式为fat32

3、接下来进行程序的烧录
首先进入userapps/rt-thread/bsp/allwinner/d1s/tools,执行命令:
| |

返回上一级,再次执行命令:
| |

到此烧录工作已完成。
启动RT-Smart
我们将刚刚烧录好程序的TF卡直接插入到开发板卡槽,并连接开发板UART端口进行串口查看验证。
此处注意串口波特率为500000

简单测试下MSH命令:

到此就测试结束啦,欢迎大家讨论交流。
