请大家推荐一个成熟,精小型的RTOS,我准备用在家电项目上
因为家电型的产品,芯片资源不是很丰富,RAM一般不大于2K,ROM在64K以下,所以请大家推荐一个,非常感谢! 不到2K RAM还跑什么RTOS……就算你辛辛苦苦裁剪出来个能跑动的,你以为还能剩下几百字节RAM给你的业务代码用?况且又是家电产品,中断驱动型编程就足够了 有个时间触发式的嵌入式系统你可以考虑下。 自己写一个算了 可以试试uSmartX,单内核大概消耗50B RAM watercat :
可以针对产品,裁剪出核心的部分。并不需要很完整的RTOS。 谢谢大家的讨论!!
yplin27 小林
uSmartX,在哪里可以找到资料? 官方网站:http://usmartx.sourceforge.net/
不过已经几年没更新过了,非抢占的,有AVR的移植 俺在Mega48上都在跑操作系统,不过很简单而已,做小东西用着还不错呢,呵呵 操作系统最少必须具备任务切换、任务间通讯、事件触发和等待、内存管理和分配这些功能
就算是成熟的RTOS,若被裁减到没有上面这些完整功能,也就不能叫操作系统了,顶多只能说【你用了某开源软件中的某部分代码】罢了
其实,没必要什么时候都往操作系统上扯,小项目自有小项目的应对方式,有辛辛苦苦裁剪和实验操作系统的功夫,换个做法恐怕项目都已经拿去赚钱了…… watercat:你所讲的问题,正是我所要寻求解决的问题。
至于家电项目,我们现在做的都是前后台系统。
之所以想用RTOS,一方面是想在产品上搭一个很好的平台,另一方面可以优化下软件结构。 不要放弃使用OS.尽量用, 同意,OS搞定一个下次用就方便了 小家电用前后台吧 个人认为,资源小的cpu不要上RTOS,没有意义.
曾经自己写了个RTOS在M64上跑,并且应用到产品上了.
后来想想,像这种单片机加操作系统真的不值得.还没裸奔来的快.
升级和修改也没裸奔方便.
如果你只是需要RTOS的时间管理,你可以自己做一个时间控制块.可以是队列方式的.
其实大多数用资源小的cpu上RTOS都是想用它的时间管理和信号同步.
这两个在裸奔的时候也很好实现.
时间管理自己用定时器做一个时间控制块.
信号就用标志位来做. 提个建议,用Protothreads,用在小家电上足够了。内存占用很小,是协作式的 用8位的项目还是感觉裸奔比较方便,改起来也轻松。
没用过OS,感觉要用起来也不简单。 要是51的话,直接使用KEIL自身带的RTX51-TINY吧
配置中断系统,小的任务调度起来不麻烦的。 建议不要用操作系统,太小的RAM,如果任务不是很复杂 还是裸奔比较方便 while(1)好了 Keil 自带的RTX51 tiny ,但是不能抢占, 而且中断处理也不是很好 有2K RAM的话, 如果任务不多, 就用RTX51 fully吧, 这个好像可以抢占, 中断处理也要好些. 学习了
页:
[1]