打印

弱问一句

[复制链接]
1276|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
gdpbeyond|  楼主 | 2008-1-12 11:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
      
    嵌入式系统的系统时钟都是用一个定时器实现.我的问题时这个定时器的中断优先级怎么设?设的小的话,系统时钟会不会受影响而不准?比它高的优级级的中断多的话会不会对它影响很大?这个问题如何处理才比较合理?本人刚接触嵌入式系统,菜鸟一个,还请匠人和其它大侠们不吝赐教!先谢过!

相关帖子

沙发
dld2| | 2008-1-12 11:58 | 只看该作者

这个中断优先级一般比较低

甚至可以不用中断。需要的时候查询一下计数值。
如果没有对时间非常敏感的事情,被其它高优先级中断影响了没有什么关系。没有累计误差即可。

如果还担心,用用就知道了。

还有,牢记一个原则,中断中不要干太多事情。

使用特权

评论回复
板凳
mohanwei| | 2008-1-12 12:09 | 只看该作者

一般最低,因为定时往往不需要很准,尤其是处理按键

,LED闪烁……

使用特权

评论回复
地板
gdpbeyond|  楼主 | 2008-1-12 12:12 | 只看该作者

re

谢谢楼上两位!不过我还是有点有不明白,因为嵌入式系统一般实时性要好一些,用查询的话怎么能保证?再说这样不是效率更低吗?谢谢!

使用特权

评论回复
5
dld2| | 2008-1-12 12:31 | 只看该作者

Re

实时性高低来自对系统的要求。低实时性的任务不需要采用高实时的方法去处理。
查询的效率并不低。嵌入式系统中大量使用中断和查询相结合的方式做事情。

使用特权

评论回复
6
gdpbeyond|  楼主 | 2008-1-12 12:42 | 只看该作者

re 楼上

谢谢楼上!蛮有道理的!
   一般这个定时器怎么设会比较合理一点,有什么原则吗?
   中断里少做事情,是为了减小这个中断对系统时钟定时器的影响吗?
    多谢!

使用特权

评论回复
7
dld2| | 2008-1-12 13:03 | 只看该作者

Re

1、一般的实时操作系统有一个时钟节拍。周期在10ms到100ms,不用再低了。裸奔时的系统定时器起的作用和这个时钟节拍类似。

2、中断少做事情问题。
比如系统中有一个串口,需要接收消息帧并处理。
有几个按键,需要扫描并处理。
处理按键和消息帧时,都会更新LCD的显示,而更新显示所消耗的时间比较长。
我们用一个串口中断接收消息。如果在中断中去显示,可能导致按键没有被扫描到。所以,串口中断中接收到的数据被放在缓冲区中,在主程序中查询缓冲区并处理。
同样,用系统定时器中断来扫描按键,扫描到后也不直接处理;而是把键值保存下来,到主程序中去查询处理。这样可以避免串口丢数据。
这样,按键和串口数据都不会丢失,都能得到及时处理。这个及时是指能否满足你的系统要求。

嵌入式系统是定制系统。一切根据系统要求。特殊情况下也可打破一般原则。

使用特权

评论回复
8
gdpbeyond|  楼主 | 2008-1-12 13:23 | 只看该作者

re 楼上

多谢,多谢!
   听君一席话,省了十本书!
   呵呵!再次感谢!

使用特权

评论回复
9
dld2| | 2008-1-12 13:28 | 只看该作者

不谢

俺也做工频仪器仪表方面的东西。算是同行,嘿嘿。

使用特权

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

本版积分规则

41

主题

216

帖子

0

粉丝