单片机多任务时的思想

[复制链接]
15106|77
 楼主| yx331447791 发表于 2010-10-10 17:48 | 显示全部楼层 |阅读模式
近来感觉自己单片机方面学得太浅了,尤其在多个任务的时候,系统实时性低,响应速度慢。看了网上关于这方面的书,觉得自己思路不是很清晰,望前辈点拨
NE5532 发表于 2010-10-10 17:57 | 显示全部楼层
别霸占CPU就可以了。
 楼主| yx331447791 发表于 2010-10-10 19:16 | 显示全部楼层
能详细说说吗
singleywy 发表于 2010-10-10 19:40 | 显示全部楼层
对,是否能够了解多任务操作的思想,这是在学单片机道路上的另一个进阶的台阶
singleywy 发表于 2010-10-10 19:41 | 显示全部楼层
3# yx331447791 网上有很多资料,自己找找很多的,单单搜索关键字,RTOS,就会有很多
 楼主| yx331447791 发表于 2010-10-10 20:42 | 显示全部楼层
你们都是前辈,能谈谈你们的看法,发表一下意见也好
yewuyi 发表于 2010-10-10 21:34 | 显示全部楼层
先用百度搜索'前后台','状态机','MCU软件设计','事件驱动'等等关键字.

苦心学习这些知识3个月后再来问,估计那时就有人愿意和你稍微详细点讨论了.
 楼主| yx331447791 发表于 2010-10-10 22:24 | 显示全部楼层
赞同前辈的说法,我也照做了,看过了你上面所说的一些东西,这段时间也花时间学习了,用分配时间片的方法来完成任务切换,但是总是不理想
chengfei21 发表于 2010-10-10 23:12 | 显示全部楼层
程序只有1个死循环,其它地方绝对不允许出现等待现象就OK了,
 楼主| yx331447791 发表于 2010-10-10 23:33 | 显示全部楼层
这样也行吗?多任务的时候,很吃力的,无法达到实时性的要求
teddeng 发表于 2010-10-10 23:58 | 显示全部楼层
你最好举个你觉得比较难处理的实际例子,大家来说处理方法。多任务不是万能的,说不定你的CPU真的处理不过来呢?
 楼主| yx331447791 发表于 2010-10-11 00:05 | 显示全部楼层
嗯,teddeng说得有理,是这样的,我用一个DS18B20,一个DS1302和一个80*16点阵的一个LED显示屏(1/16扫描),目标是完成实时显示温度和时间,这个是我业余没事干,想玩玩,没想到一玩就玩不起来了:L
ayb_ice 发表于 2010-10-11 08:22 | 显示全部楼层
有这种意识
已经入门了
 楼主| yx331447791 发表于 2010-10-11 08:38 | 显示全部楼层
有解决的思路吗?
ayb_ice 发表于 2010-10-11 09:01 | 显示全部楼层
去用,去学RTOS
如果是51,可以先从RTX51 TINY开始
huangqi412 发表于 2010-10-11 09:10 | 显示全部楼层
时间最小单位秒,小于1秒的间隔读一次时间。。。
显示先计算好扫描速度要多少,定好间隔送数据刷
气温间隔几秒读1次都行。自己想办法解决DS1820时序问题。。。
还有按键要定时扫描。
杂个定间隔做这些?--------------定时器
一天要吃饭3次,睡觉1次,喝水5次。杂办?一天有24个小时,把小时做基本时间,定几个闹钟6点喝水1次,7点吃饭1次,10点喝水1次,12点吃饭1次,3点喝水1次,18点吃饭1次,22点睡觉1次。。。
22点睡觉一直睡到早上6点,中间要尿尿或者喝水杂办。。。把睡觉拆成多个小觉,1小时一小时的睡,合起来还是8个小时睡眠,或者睡觉能打断,打断后又能继续睡。。。   写代码只是体力活,去实现想法而已。
mei326 发表于 2010-10-11 09:24 | 显示全部楼层
楼上例子举的好~最后一句最为关键~
carbonxie 发表于 2010-10-11 11:23 | 显示全部楼层
huangqi412:MCU都是以流水线工作的,多任务处理就是在一段时间内分段处理!
反质子 发表于 2010-10-11 11:36 | 显示全部楼层
去精研一遍  ucosii内核源码
淘宝汪海 发表于 2010-10-11 12:41 | 显示全部楼层
你们好!我是新人,以后多多指教!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:只有站得更高,才能看得更远

0

主题

77

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部