问一个关于ucos节拍的问题

[复制链接]
4316|10
 楼主| bucker 发表于 2008-3-31 21:14 | 显示全部楼层 |阅读模式
书上说时钟节拍一般为每秒10-100次为好,节拍过快会造成系统负荷加重。但是在许多仪表中,LED数码管需要动态扫描激励,简易的矩阵键盘也需要考动态扫描来识别按键是否被人按下。这样,100Hz的节拍显然偏低了,可能还是1000HZ的节拍比较合适,但系统的任务切换负荷是否会太高呢?
sufeng983 发表于 2008-4-1 14:03 | 显示全部楼层

1

2个时钟不能分开吗?
 楼主| bucker 发表于 2008-4-1 18:37 | 显示全部楼层

问一个关于ucos节拍的问题

像LED数码管多数是点亮1ms,然后换下一个,如果时钟节拍大于1ms,就不好完成这样的任务。
ayb_ice 发表于 2008-4-1 20:56 | 显示全部楼层

不适合直接用UCOS扫描LED

可以直接用中断
zhiwei 发表于 2008-4-2 17:50 | 显示全部楼层

系统开销大是相对的

如果你的CPU够快,1mS也没有关系啊。我AVR裸奔的MainLoop一般都是1mS。
 楼主| bucker 发表于 2008-4-4 16:42 | 显示全部楼层

看来是可以用中断的方法

不过,中断服务之后系统有可能产生任务切换,还是相当于提高了时钟的节拍吧。
后学 发表于 2008-4-5 08:23 | 显示全部楼层

切换太频繁,无形中降低了CPU效率,

alex74 发表于 2008-4-5 08:39 | 显示全部楼层

中断

用中断。在中断程序里不要调用enterirq这类的系统函数,这样中断不会产生线程切换
mohanwei 发表于 2008-4-6 15:43 | 显示全部楼层

用定时中断扫描即可。不是什么都可以上os的。

 楼主| bucker 发表于 2008-4-12 10:17 | 显示全部楼层

谢谢各位

看起来让中断时不发生任务切换是个办法。
cheng1236 发表于 2008-4-12 17:34 | 显示全部楼层

huifu

  可以用中断的方式来识别按键按下
您需要登录后才可以回帖 登录 | 注册

本版积分规则

27

主题

82

帖子

1

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