打印

贫僧请教匠人:有关程序架构

[复制链接]
5241|26
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
elec921|  楼主 | 2009-11-14 08:08 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
匠人你好,贫僧做单片机有点时间了,但是一直是裸奔。裸奔的方式一般是前后台、状态机。俺是本科僧,当初《操作系统》这门课上课时光睡觉了。最近看了本讲单片机上的软件的结构,比如桌面系统、实时系统、等等。不是很懂啊。牵扯到了任务调度,就是在51单片机上实现抢占式任务调度、合作式任务调度等。貌似跟咱的状态机不太一样。
他是在超级循环里一个TASK函数,调用各个任务,根据任务的紧急程度、时间什么的,不太懂啊,匠人帮忙给各位菜鸟讲讲在单片机(比如说51或者AVR或者ARM7之类的)如何实现这个方法,也就是除了前后台、状态机之外的程序架构?????
贫僧携师太及全家先谢谢了昂~

相关帖子

沙发
ejack| | 2009-11-14 08:14 | 只看该作者
贫僧携师太及全家先谢谢了昂~


:L好嚣张的破戒僧……

使用特权

评论回复
板凳
elec921|  楼主 | 2009-11-14 08:25 | 只看该作者
8:39分,还没有回复,贫僧要送小孩去幼儿园了,挂机在线等ing~~~

使用特权

评论回复
地板
ZRL700424| | 2009-11-14 09:25 | 只看该作者
暂时还没遇到一定要用操作系统才能解决的案子

使用特权

评论回复
5
yewuyi| | 2009-11-14 10:03 | 只看该作者
在51单片机上实现抢占式任务调度、合作式任务调度未必就是OS,通常来说,使用前后台或者状态机也一样可以实现某种意义上的抢占式任务调度、合作式任务调度

使用特权

评论回复
6
思考| | 2009-11-14 11:28 | 只看该作者
LZ有点个性,呵呵

使用特权

评论回复
7
leolle| | 2009-11-14 13:59 | 只看该作者
直接拉UCOS出来用不就完了吗

使用特权

评论回复
8
g19860529| | 2009-11-14 14:19 | 只看该作者
1、通过将应用程序分割成若干独立的任务,RTOS使得应用程序的设计过程大为减化。
2、使用可剥夺性内核时,所有时间要求苛刻的事件都得到了尽可能快捷、有效的处理。
3、通过有效的服务,如信号量、邮箱、队列、延时、超时等,RTOS使得资源得到更好的利用。
上面的三句话是在ucos的教材上抄的,感觉很精辟。就是那个很火的ucos教程,忘了名字了。
做的第一个项目就用到了ucos,有些感想的。本想些出来可又说不清楚。楼主的问题一两句也说不清楚,等高手了。

使用特权

评论回复
9
elec921|  楼主 | 2009-11-14 16:27 | 只看该作者
本帖最后由 elec921 于 2009-11-14 16:37 编辑

如图,这是对超级循环的评价,我是想让高手讲讲除了前后台方式还有啥好的结构??难道大家都是这样?

未命名.JPG (28.4 KB )

未命名.JPG

使用特权

评论回复
10
yewuyi| | 2009-11-14 16:44 | 只看该作者
除了前后台方式还有基于事件触发的方式和RTOS

使用特权

评论回复
11
古道热肠| | 2009-11-14 17:02 | 只看该作者
用uc/OSII吧!实时性很好,最好用ARM平台,最少也要在16位机跑,才不会喊内存吃紧.

使用特权

评论回复
12
elec921|  楼主 | 2009-11-14 21:18 | 只看该作者
谢谢!偶做完这个项目就学UC/OS2

使用特权

评论回复
13
elec921|  楼主 | 2009-11-14 21:19 | 只看该作者
除了前后台方式还有基于事件触发的方式和RTOS
yewuyi 发表于 2009-11-14 16:44

貌似我看的这本书是“时间触发”方式。基于事件触发的方式和RTOS,给介绍本书看看,谢了!

使用特权

评论回复
14
程序匠人| | 2009-11-14 21:33 | 只看该作者
你这个贫僧还真是够贫的。

使用特权

评论回复
15
大碗拉面| | 2009-11-14 23:28 | 只看该作者
要不匠人的下一份手记就写这个吧~~·

使用特权

评论回复
16
ligping| | 2009-11-15 11:47 | 只看该作者
呵呵,支持楼主。

使用特权

评论回复
17
huangqi412| | 2009-11-15 14:03 | 只看该作者
:L好嚣张的破戒僧……
ejack 发表于 2009-11-14 08:14
;P

使用特权

评论回复
18
常来21IC| | 2009-11-15 23:28 | 只看该作者
笨科僧飘过

使用特权

评论回复
19
yewuyi| | 2009-11-16 08:31 | 只看该作者
一般MCU上说时间触发多数都是前后台。

当然,个人认为,不管是前后台还是时间触发还是OS,都离不开时间触发,你的那本时间触发的书,可能就是很久以前的那本外译本,似乎是个老外写的,那本书写的不错,但基本上还是没有脱离前后台的影子,其实不管是前后台还是事件触发,真正实际用的时候,多数都是混用的,没有绝对的非此即彼的含义。

使用特权

评论回复
20
cwei8545| | 2009-11-16 12:20 | 只看该作者
还是裸奔好

使用特权

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

本版积分规则

247

主题

2921

帖子

8

粉丝