打印

单片机什么时候有必要用操作系统

[复制链接]
5101|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
FAQ|  楼主 | 2018-7-3 11:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 FAQ 于 2018-7-3 11:39 编辑

使用操作系统显而易见的好处是让系统来管理时间片。不需要自己关注定时逻辑。

这里的操作系统指的是ucos、freertos之类嵌入式实时操作系统。




1,那么问题来了,哪些场合适合用系统,哪些不适合?
2,如果程序要求时间时序很严格,很占用CPU资源。绝大部分时间都在做某一件事,是不是就不适合采用系统。比如某些解码功能,比如类似红外38K解码,如果没有硬件解码支持,纯粹软件IO中断解码。这将很占用资源。
3,那些要求时序精度在几百纳秒误差的可以级联的LED灯驱动芯片,这种如果没有内部硬件外设支持,纯粹IO口模拟的话就会很消耗资源,基本上一个单片机只能做一件事就不能在做其他事情了。
4,还有很多类似的要么是要求时序很严格,要么很占用延时时间的。总之很占用CPU资源的是不是就不适合采用系统。
5,并发任务多并不怕,可以分时轮寻,最怕的是某些任务要求时序严格,占用时间长。

这上面的是我的个人理解,总之那些很影响程序结构的功能,将会很有可能导致不适合采用系统,不知道对不对。

或者你可以举几个例子,哪种情况产品不适合操作系统,哪种适合操作系统,这样最明了。


相关帖子

沙发
ayb_ice| | 2018-7-3 13:08 | 只看该作者
大部分情况可以不要

使用特权

评论回复
板凳
ssmm1228| | 2018-7-3 18:18 | 只看该作者
同问。做单片机五年了,没用过操作系统。全部裸跑。

使用特权

评论回复
地板
雪山飞狐D| | 2018-7-3 23:50 | 只看该作者
确实大部分不需要,需要操作系统的说明程序复杂度和速度要求大于了一定级别
只能直接上arm+高速DDR+Linux了。。。。。

使用特权

评论回复
5
雪山飞狐D| | 2018-7-3 23:50 | 只看该作者
确实大部分不需要,需要操作系统的说明程序复杂度和速度要求大于了一定级别
只能直接上arm+高速DDR+Linux了。。。。。

使用特权

评论回复
6
eydj2008| | 2018-7-4 23:04 | 只看该作者
用OS 在于简化编程, 当然肯定资源要多占用
所有DELAY 都可以用OS_DELAY 去处理其它任务
不用OS 你得查询是不是时间节点到了 再执行这个任务

使用特权

评论回复
7
efen| | 2018-7-6 11:56 | 只看该作者
看需求吧,例如五个串口作主,一个串口连接多个设备作从,怎么避免主串口访问下面多个设备冲突

使用特权

评论回复
8
motor666| | 2018-7-7 16:20 | 只看该作者
efen 发表于 2018-7-6 11:56
看需求吧,例如五个串口作主,一个串口连接多个设备作从,怎么避免主串口访问下面多个设备冲突 ...

也很简单:在一个定时器中断里分别做5个串口发送程序,一个发送,其它都会等待的。

使用特权

评论回复
9
ddllxxrr| | 2020-1-16 12:01 | 只看该作者
越来越觉得单片机没有必要用操作系统,几个任务不能协调工作,甚至不如不用操作系统的简单

使用特权

评论回复
10
dirtwillfly| | 2020-1-16 12:55 | 只看该作者
ddllxxrr 发表于 2020-1-16 12:01
越来越觉得单片机没有必要用操作系统,几个任务不能协调工作,甚至不如不用操作系统的简单  ...

我也是这样认为的。
要么项目够复杂,就上linux,要么就前后台裸奔

使用特权

评论回复
11
lihui567| | 2020-1-31 16:46 | 只看该作者
感觉在多任务多中断的情况下,裸机跑也可以,但是操作系统可能更方便一些

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

FAQ

226

主题

2024

帖子

9

粉丝