搭建rtthread+QEMU环境
-
直接去官网下载 RT-Thread源码和env
-
启动env
在env目录下env.bat
-
cd 到rt-thread目录下bsp/qemu-vexpress-a9目录下,直接运行scons编译
- 然后输入qemu就能运行了
RT-Thread 支持 Finsh,用户可以在命令行模式使用命令操作。输入 help
或按 tab 键可以查看所有支持的命令。如下图所示,左边为命令,右边为命令描述。
如下图所示,比如输入list_thread
命令可以查看当前运行的线程,以及线程状态和堆栈大小等信息。输入list_timer
可以查看定时器的状态。
运行 RT-Thread 文件系统
输入 list_device
可以查看注册到系统的所有设备。如下面图片所示可以看到虚拟的 sd 卡 “sd0” 设备,接下来我们可以使用 mkfs sd0
命令格式化 sd 卡,执行该命令会将 sd 卡格式化成 FatFS 文件系统。FatFs 是专为小型嵌入式设备开发的一个兼容微软 fat 的文件系统,采用 ANSI C 编写,采用抽象的硬件 I/O 层以及提供持续的维护,因此具有良好的硬件无关性以及可移植性。
了解 FatFS 详细信息请点击链接:http://elm-chan.org/fsw/ff/00index_e.html
第一次格式化 sd 卡后文件系统不会马上装载上,第二次启动才会被正确装载。我们退出虚拟机,然后在 Env 命令行界面输入 qemu.bat
重新启动虚拟机及工程,输入 ls
命令可以看到新增了 Directory 目录,文件系统已经装载上,然后可以使用 RT-Thread 提供的其他命令体验文件系统ls
网络搭建
-
打开 qemu-vexpress-a9 BSP 目录下的 qemu.bat 文件。在-sd sd.bin的位置后添加
-net nic -net qemu,ifname=qemu
配置。其中 ifname=qemu 的意思是网卡的名称是 qemu。 -
输入 qemu 命令后再输入 ifconfig 命令查看网络状态,如果能获取到ip则表示网络连接成功。