更多
当前位置: 首页 > 行业

RT

发布时间:2023-08-14 17:22:07 来源:个人图书馆-怪叔叔的书城

以为不会有人回复的, [s:154]


(资料图片)

重新编辑下我自己的错误, 免得误导人.

首先声明,我不是来砸场子的。只是简单描述下一个普通用户选择RTOS的过程,希望给RT-Thread的发展提供的参考。

最近工作上需要导入RTOS到SMT32F103芯片上。备选的有:RT-Thread,FreeRTOS, RTX@Keil.

选择过程:

1. 第一个被排除的是RTX,因为不知道怎么找到源代码(好像只有头文件就好),而且这也是一个学习过程。

我们不想被束缚在一个平台或芯片上。

2. 其实最开始选中的是RT-Thread。

原因:哇..全中文教材和手册,移植很方便,不用改动。准备导入了:为什么有这么多文件,我只需要有个核心而已。打开源文件一看,这个注释….

GPL2,可以接受,但同时说FreeRTOS更好,是修改版的GPL2,不需要公开自己的代码。

关于文件多的问题,其实把RTOS独立放置,不要包含到每个工程中,还是可以的。

3. 最终选择了FreeRTOS

原因: 修改版的GPL2协议,核心很小,移植也非常简单。源文件的注释很容易理解。需要的组件可以自己加上去。

中休前胡乱说一通,看的明白就看看,看不懂就算了。 [s:154]

最终给RT-Thread的建议。

把核心和组件和Drivers严格的分开,很多时候,别人只需要一个RTOS核心而已。减少核心文件数量,注释丰富点。建议:核心的授权可以参考FreeRTOS。(商业使用不用公开自己的源代码。)RT-Thread也是有免费的商业授权的.

重新删除了所有不需要的文件, 确实也不大. 附件包含KEIL工程,STM32官方库和RT-Thread核心和一些必要文件, 有需要的可以参考下.

" class="reference-link">

正在重新看RT-Thread的相关文档.目前有自己疑问还没有找到答案:

1. API函数没有注明是否可以在中断服务程序中使用, 是否所有IPC API都可以在中断中使用呢?

——> IPC的发送和释放,在IRQ函数中使用没有遇到问题。

2. Systick使用的中断优先级是多少? ~貌似最低优先级。3. 是否与FreeRTOS类似, 有个RTOS 最大优先级设置, 及低于的,可以调用RTOS的API函数, 高于的,着完全不会被打断, 也不可调用API函数.4. 很多.C文件居然没有对应的头文件, 很奇怪的做法.还是我又漏看了什么东西.5. Finsh shell 错误代码-04Finsh使用dummy()出现usage fault:SCB_CFSR_UFSR:0x02 INVSTATE,并死机。">6. Finsh使用dummy()出现usage faultSCB_CFSR_UFSR0x02 INVSTATE,并死机。

导入基本OK,进一步验证中。

上一篇:“案子不破就是欠老百姓的账”

下一篇:最后一页