STM32上移植freertos,最终移植完成的效果比裸机好在哪里
在STM32上移植freertos操作系统,最终效果到底比裸机好在哪里,各位有没有做过对比的?月霜寒 发表于 2017-4-20 17:27
奥,我现在做的一个项目就是老程序有特别多的全局变量,请问怎样才能有效的减少全局变量的使用呢? ...
首先,那种裸奔时的标志变量不再需要了。就是在主循环反复查询,并置0的。这样的变量不多,但看着心里不舒服。
其次,在一个任务使用的变量且不大(不是大数组的),可以放在任务函数内作为局部变量。
再次,仅在2个或3个任务内使用的变量(且不大),可分别设为任务函数中的局部变量,并通过队列(queue)传递。要同时传递几个变量,可以拼接为16位或32位的信息传递。——指针我还没用过。
全局变量并不能被全部消灭,使用操作系统后,能将全局变量有效的控制起来。
我用stm32cubemx配置后,参考https://wenku.baidu.com/view/849305faba1aa8114531d938.html (注意搜索并阅读系列7篇)例程就能改写老的项目软件,不用再深究操作系统而应用起来。
我没有对比过
因为freeRTOS是有任务调度能力的,编程的时候可以多个任务同时开启,需要考虑的是任务之间的协调关系
而如果是裸机的话,需要对工程的运行时序先有个很清晰的框架,最好可以一气呵成
我是倾向于选择freeRTOS的,因为划分好功能模块后会有更强的可读性:lol 能够支持多任务,任务抢占,相对来说,CPU利用率有所提高,个人见解 时间利用率高 前后都是宝贵的时间资源!晚上好。 团队合作怎样充分利用这宝贵的资源?都是生手团队...摸着前行 不知道,我只知道,操作系统不是万能,有些程序还是裸机的好 而且操作系统占内存,不好好管理,肯定不行的。所以我对操作系统保持观望太度。能不用就不用 能用裸机的就不要扯RTOS 多任务,信号量,主要还是看需求