你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32上移植freertos,最终移植完成的效果比裸机好在哪里

[复制链接]
月霜寒 提问时间:2017-4-17 17:20 /
阅读主题, 点击返回1楼
收藏 1 评论24 发布时间:2017-4-17 17:20
24个回答
月霜寒 回答时间:2017-4-21 09:08:15
modu8888 发表于 2017-4-20 21:27
首先,那种裸奔时的标志变量不再需要了。就是在主循环反复查询,并置0的。这样的变量不多,但看着 ...

恩,我试着改改,我这老程序全局变量特别多,程序中全是if套if,看着头疼
jtc_88 回答时间:2017-4-21 10:06:41
技术的演进 都是 实际需求驱动的,用不用 RTOS 不是拍脑袋 用不用的,当前后台解决不了了,或多任务实时性要求,前后台代码不管是编写维护都相当困难时,RTOS不是万能的 只是解决了 一个方向的问题。RTOS的调度思想是需要学习理解透彻,对项目开发 思想性的 帮助很大。个人见解。

评分

参与人数 1蝴蝶豆 +2 收起 理由
STMCU + 2

查看全部评分

月霜寒 回答时间:2017-4-21 11:55:45
jtc_88 发表于 2017-4-21 10:06
技术的演进 都是 实际需求驱动的,用不用 RTOS 不是拍脑袋 用不用的,当前后台解决不了了,或多任务实时性 ...

对对,很对,我现在就是开始学习这个系统
yueda 回答时间:2017-11-27 15:16:01
肯定是谁有谁都的好处,主要还是看实际应用吧,有些裸板就搞定的就不用系统,而有些可能裸板的话效率太低或不能瞒住需求了,就搞个系统
kylongmu 回答时间:2017-11-28 01:06:33
裸机:不论你走一小步,还是一大步都会扯着蛋疼,尤其是其可控性随着任务的复杂度呈指数增长,直到你崩溃。
OS:起步较难,准备工作量甚至超过了一些小任务功能需求,对于初学者感觉是一座大山,但是随着任务复杂性的增长,可以进行线程切割,变量隔离,使得新增加工作的难度总是与开始时一样。
时序要求:很多外设都是可以设定为定时器同步,而定时器时钟源可以来自于同一个时钟,更精确的时序逻辑建议用cpld实现,硬要算指令周期来写ARM软件的建议你还是别干这行了,因为你具有FPGA设计的天赋。

评分

参与人数 1蝴蝶豆 +2 收起 理由
STMCU + 2

查看全部评分

lee-340192 回答时间:2019-5-24 09:18:41
能不用就不要用,所有的设计都是越简单越好,越简单越强大

评分

参与人数 1蝴蝶豆 +2 收起 理由
STMCU + 2

查看全部评分

caidyap 回答时间:2019-5-28 15:40:46
难点的上操作系统吧,要不然时序问题确实难

评分

参与人数 1蝴蝶豆 +2 收起 理由
STMCU + 2

查看全部评分

longforljy 回答时间:2019-6-13 13:27:47
我觉得你们都没明白,当一个程序越来越复杂之后,操作系统的出现是必然的
但,操作系统VS裸机,并不是一个谁对谁错的问题
裸机程序,新手和老手写的,就天差地别
操作体统,小型的和大型的,也天差地别(小型的比如PT Thread,大型的比如Linux、Android)

你用一个大型的操作系统,只是仅仅实现一个跑马灯?怕不是有病吧
你裸机程序去实现一个王者荣耀?怕不是也有病吧

所以,究竟是裸机,还是操作系统,要看程序的体量,功能的复杂度

其实,可以类比人类社会的发展,从 个体-->小型部落-->城邦-->国家-->全球化
当体量大之后,体制的出现是一定的。没有规则和标准,大家按自己的思路瞎搞,就没效率可言,永远是一个单打独斗的原始社会

所以,裸机程序,往往是出现在一些小公司、小产品上,基本都是一个程序员就包揽了
而一些大型的产品,都是有ISO标准,协议的,不上操作系统?上千人如何协作开发?还有上下游的公司如何协作开发?

要想参与大型的项目,就去学习操作系统吧,否则永远只能小打小闹的搞些小产品,上不了台面
当然,操作系统很多,先从简单的入手,基本理论入手,打好基础
然后调查好你想从事的行业,是用什么操作系统的,再针对性地学习行业要求的操作系统

当然,这里我也不否定即使只是 一个裸机程序员,也能拿高薪
但请相信我,他能拿高薪,不是因为他是一个裸机程序员,而是因为他有其他方面的技术积累
longforljy 回答时间:2019-6-13 13:44:42
一个老程序员,要考虑代码的可读性、可移植性,也要考虑关键代码的运行效率
当一个代码去到几十上百K之后,就可以考虑上个简单的小型系统了(比如PT thread),协助你管理代码,提高可读性和可移植性
这些小型系统,并没有复杂的任务调度,内存管理。但是可以改善你的代码结构,几十上百K的程序,用这些就够了(其实就是不能像个新手一样,想到什么写什么了,要先规划,再敲代码)

抢占式的RTOS这些,算是较完整的小型操作系统了,如果没吃透,那就没必要用在一些小产品上
如果吃透了,随你喜欢~
xiaojie0513 回答时间:2019-6-18 14:12:02
实时性、阻塞机制、这两点就够了,还有各个任务的独立互不干扰
12

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版