c语言sscanf函数的用法是什么
333
2022-11-30
【RED-V】运行 RT-Thread 操作系统
准备工作
BSP
目前 RT-Thread 官方仓库还没有提供 Sparkfun RED-V 开发板的 BSP 包,想尝试的小伙伴可以先克隆我的!
仓库地址:Freedom Studio 集成的 riscv64-unknown-elf-gcc 编译工具链。因此,在开始之前,您还需要安装 Freedom Studio 集成开发环境。
特别地,如果您想在 Freedom Studio 导入并编译工程,可能需要下载 v2019.08.1 版本才行。
FreedomStudio-2019-08-1-lin64FreedomStudio-2019-08-1-win64FreedomStudio-2019-08-1-mac64
Linux
如果您和我一样使用 Linux 系统,可以直接通过命令行进行编译。只需要修改该 BSP 的 rtconfig.py 配置文件中编译工具链路径。
if CROSS_TOOL == 'gcc': PLATFORM = 'gcc' EXEC_PATH = r'/opt/FreedomStudio/SiFive/riscv64-unknown-elf-gcc-8.3.0-2020.04.1/bin/'
并确保 Makefile 中的 scons 配置正确即可。
#scons := python ${SCONS}\scons.pyscons = sconsall: @$(scons)clean: @$(scons) -c
Windows
假设工具链的默认位置为 SiFive/riscv64-unknown-elf-gcc-8.3.0-2019.08.0/bin/ 目录。运行 Env 工具,根据实际情况,输入以下命令设置环境变量:
set RTT_EXEC_PATH=工具链的路径set path=%path%;工具链的路径
例如:
set RTT_EXEC_PATH=C:\FreedomStudio-2019-08-1-win64\SiFive\riscv64-unknown-elf-gcc-8.3.0-2019.08.0\binset path=%path%;C:\FreedomStudio-2019-08-1-win64\SiFive\riscv64-unknown-elf-gcc-8.3.0-2019.08.0\bin
从 Env 工具打开 IDE
在 Env 中使用 cd 命令切换到 FreedomStudio 解压后的目录中,再执行 FreedomStudio.exe 文件启动 IDE。例如:
cd C:\FreedomStudio-2019-08-1-win64FreedomStudio.exe
导入工程
以下步骤适用于 Windows 和 Linux 系统(MacOS 没有测试过)。
编译
当窗口输出 Build Finished ,左侧文件列表出现 rtthread.elf 文件时,即为编译成功。
另外,如果使用 Linux 命令行编译,当配置好 BSP 后,直接在 sparkfun-redv 目录执行 scons 即可完成编译。
rudy@Latitude-3400:~/workspace/Projects/rt-thread/bsp/sparkfun-redv$ sconsscons: Reading SConscript files ...scons: done reading SConscript files.scons: Building targets ...scons: building associated VariantDir targets: buildCC build/applications/led/led.oCC build/applications/main.oCC build/drivers/board.oCC build/drivers/drv_gpio.oCC build/drivers/drv_usart.oCC build/drivers/interrupt.o...LINK rtthread.elfriscv64-unknown-elf-objcopy -O binary rtthread.elf rtthread.binriscv64-unknown-elf-objcopy -O ihex rtthread.elf rtthread.hexriscv64-unknown-elf-size rtthread.elf text data bss dec hex filename 73113 288 6279 79680 13740 rtthread.elfscons: done
运行 RT-Thread
如果您通过 Linux 命令行编译成功,只需要将 rtthread.hex 拖曳进 HiFive U 盘即可。如果想通过 FreedomStudio 下载、调试,请参照如下步骤。
配置 Debug 参数
使用 type-c usb 数据线连接电脑与开发板。右键列表中的 rtthread.elf 文件,选择 Debug As->1 As JLink launch。
运行结果
下载程序之后,连接串口(115200-N-8-1),可以看到 RT-Thread 的输出信息:
可以看到板载的蓝色 LED 灯以 1Hz 频率闪烁,按下 Tab 键可以查看 RT-Thread 内置的命令。
msh >RT-Thread shell commands:give_me_five - Show the SiFive logomemcheck - check memory datamemtrace - dump memory trace informationclear - clear the terminal screenversion - show RT-Thread version informationlist_thread - list threadlist_sem - list semaphore in systemlist_event - list event in systemlist_mutex - list mutex in systemlist_mailbox - list mail box in systemlist_msgqueue - list message queue in systemlist_mempool - list memory pool in systemlist_timer - list timer in systemlist_device - list device in systemhelp - RT-Thread shell help.ps - List threads in the system.free - Show the memory usage in
执行 ps 查看系统线程运行情况:
msh >psthread pri status sp stack size max used left tick error-------------------- --- ------- ---------- ---------- ------ ---------- ---tshell 20 running 0x00000140 0x00001000 22% 0x00000007 000tidle0 255 ready 0x000000f0 0x00000400 23% 0x00000016 000main 85 ready 0x00000140 0x00000800 20% 0x00000013 -02
执行 list_device 查看系统设备:
msh >list_devicedevice type ref count-------------------------------- -------------------- ----------dusart Character Device 2
另外,该 BSP 还内置了一个 give_me_five 命令:
好啦!关于 RT-Thread 和 RISC-V 的更多内容,我们后面再一起探索。今天就先到这里啦~
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~