佳礼资讯网

 找回密码
 注册

ADVERTISEMENT

查看: 1929|回复: 10

我想学RTOS

[复制链接]
发表于 26-4-2007 02:16 PM | 显示全部楼层 |阅读模式
何从下手??
IDE那里下载~~
回复

使用道具 举报


ADVERTISEMENT

发表于 26-4-2007 06:33 PM | 显示全部楼层
原帖由 ychenfei 于 26-4-2007 02:16 PM 发表
何从下手??
IDE那里下载~~

你想学写rtos还是用rtos??
如果是想学用rtos,internet有很多free source可以下载.
回复

使用道具 举报

 楼主| 发表于 29-4-2007 01:10 PM | 显示全部楼层

回复 #2 fritlizt 的帖子

网上有很多不同的RTOS
哪个core比较好??
回复

使用道具 举报

发表于 29-4-2007 05:42 PM | 显示全部楼层

回复 #3 ychenfei 的帖子

较出名的是Salvo RTOS。

我的Project不用RTOS,几复杂都尽量不要用RTOS。。。
除非你的MCU是ARM, 很够力那种。

RTOS, 如有bug,可能不是那么容易debug的。。。
回复

使用道具 举报

发表于 30-4-2007 08:19 PM | 显示全部楼层
请问, RTOS 是 什么?
回复

使用道具 举报

发表于 1-5-2007 09:24 AM | 显示全部楼层
原帖由 GeMan 于 30-4-2007 08:19 PM 发表
请问, RTOS 是 什么?

RTOS = Real-Time Operating System

用在MCU的Multitask kernel。
好像手机, PDA里就有用很多。

用RTOS会吃很多MCU的RAM,MCU最少要1~2K的RAM,不然很难跑,或有限制。
CCS C也有RTOS build in, 但很少人用。

我不用RTOS,我用自己的Round-Robin Time Scheduling,小心设计,跑起来很像“多工”multitask,但不是,而且是有限制的。

比如:LED1 闪10Hz, LED2 闪3Hz, 中间又要读Input button, USART 等等


http://zh.wikipedia.org/wiki/%E5%AE%9E%E6%97%B6%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F
实时操作系统维基百科,自由的百科全书即時作業系統(Real-time operating system, RTOS)又稱實時作業系統,它會按照排序執行、管理系統資源,並為開發應用程式提供一致的基礎。
通常都會有最基礎的內核,以及外加上去的模組,像是檔案系統、網路協定堆疊和應用、裝置驅動程式…等模組。
RTOS的內核通常會有:
RTOS舉隅 開放原始碼非開放原始碼
回复

使用道具 举报

Follow Us
 楼主| 发表于 1-5-2007 12:52 PM | 显示全部楼层
谢谢~~
我在学着salvo...
回复

使用道具 举报

发表于 8-5-2007 06:09 PM | 显示全部楼层

回复 #7 ychenfei 的帖子

我也还在学uCOSII,真的是看到七窍只通了六窍。
回复

使用道具 举报


ADVERTISEMENT

发表于 8-5-2007 07:41 PM | 显示全部楼层
原帖由 rothmans 于 8-5-2007 06:09 PM 发表
我也还在学uCOSII,真的是看到七窍只通了六窍。

一窍不通, 哈哈。其实也是很想学rtos, 不过有时间先。
现在programming方式也是和pic斑竹的一样。Round-Robin Time Scheduling。
看起来也是很想multitasking..lol.
回复

使用道具 举报

发表于 9-5-2007 10:03 AM | 显示全部楼层
原帖由 fritlizt 于 8-5-2007 07:41 PM 发表

一窍不通, 哈哈。其实也是很想学rtos, 不过有时间先。
现在programming方式也是和pic斑竹的一样。Round-Robin Time Scheduling。
看起来也是很想multitasking..lol.


你真棒!你说你用的是 Round-Robin Time Scheduling,类似于 Multitasking,那你有没有使用什么 OS 的协助呢?你是怎么办到的。
回复

使用道具 举报

发表于 9-5-2007 12:17 PM | 显示全部楼层
原帖由 rothmans 于 9-5-2007 10:03 AM 发表


你真棒!你说你用的是 Round-Robin Time Scheduling,类似于 Multitasking,那你有没有使用什么 OS 的协助呢?你是怎么办到的。


没有用os.基本上离不开timer.用一个timer来schedule你所有的task.
比如说你要flash led1 1Hz, led2 2 Hz,同时间读取input1,如果input1有反应就亮led3.要怎样办到呢?
我是用timer generate interrupt.let say 2ms一次。 如果led1要闪1hz.那就用counter算每500ms换state 一次。 如此类推。就可以做到类是multitask的结果。
比较不好的地方是, 越多task,你的program会越便越复杂。
写过一个round robin time scheduling program. flashing led,checking keypad input, interface with hyperterminal, refresh lcd, soft real time clock. 这个就有点难写。可能我level 不够。哈哈。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

 

ADVERTISEMENT



ADVERTISEMENT



ADVERTISEMENT

ADVERTISEMENT


版权所有 © 1996-2023 Cari Internet Sdn Bhd (483575-W)|IPSERVERONE 提供云主机|广告刊登|关于我们|私隐权|免控|投诉|联络|脸书|佳礼资讯网

GMT+8, 24-12-2024 02:17 AM , Processed in 0.127789 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表