个人踩坑经验
代码参考这位大佬的经验,附链接: STM32标准库移植RT-Thread Nano添加FinSH与控制台
代码无需多说,移植后能够运行,下面记录自己的移植经验。
资料参考
普中rt-thread开发手册可以入门,但是想更深入了解rt-thread,毕竟是操作系统,交互控制台Finsh能够查看线程使用情况,所以看完手册后,研究Finsh控制台实现:
-
已经了解rt-thread启动流程 ;
-
去rt-thread官网找到,最新版本的“nano”,我看到的是3.1.5版了;
-
仿照开发手册,用添加文件的方法,把最新版rt-thread nano添加到模板里(模板用的是网盘的print例程,看手册就懂);
-
配置相关文件;
-
借鉴链接的代码,修改Finsh需要的输入函数: STM32标准库移植RT-Thread Nano添加FinSH与控制台;
遇到的问题
-
用pack安装的nano3.1.5,然后在Manage Runtime Environment添加kernel、finsh组件,在编译的时候找不到一些文件,而且烧录以后没有进main函数;
我手头没有调试器,只能记录现象。猜测这个问题的原因是:在Include路径中找不到文件。没配置好咯!
于是按手册的老办法:手动添加文件、配置C的Include文件路径。这样 成功 移植了最新的rt-thread nano。
-
找不到 合适的代码 。这个问题,上面贴链接了,代码我测试能用。再次感谢大佬分享的代码。
-
Finsh控制台输入没反应?
看看是不是没有加 换行 ,msh>需要接收到换行,才知道指令输入结束。sscom串口助手勾选加回车换行
若用普中串口助手,在输入一个回车,然后点击发送:
总结
这一周学习rt-thread,也算入门了,简单记录一些问题,帮助各位避坑。欢迎大家评论区交流。