打印
[MCU]

延时时间对整个运行系统的影响

[复制链接]
2149|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Emily_1105|  楼主 | 2014-11-20 09:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
Ketose| | 2014-11-20 09:29 | 只看该作者
楼主是不是说的软件延时?
软件延时由于其自身是靠CPU指令不停的循环来延时,有很大的不确定性,比如CPU频率的依赖性,在延时的时候有中断进来,都会对软件延时造成很大的影响,致使延时不准。
所有如果有些外设通讯对时序要求很高的话,就不能彩用软件延时,而是应该用定时器延时,精确很多。

使用特权

评论回复
板凳
ayb_ice| | 2014-11-20 09:50 | 只看该作者
会造成系统阻塞,影响实时性,CPU效率低下

使用特权

评论回复
地板
ningling_21| | 2014-11-20 10:02 | 只看该作者
错误一般不会,但会造成系统响应变慢,例如 按键没反应等等

使用特权

评论回复
5
coody| | 2014-11-20 14:13 | 只看该作者
除了初始化,进入主循环后基本不用指令延时。那些比较大的控制系统,超过100个各种延时。。。。

使用特权

评论回复
6
受不了了| | 2014-11-20 14:32 | 只看该作者
路口红绿灯某个方向的车流不断,另外的方向肯定容易堵车

使用特权

评论回复
7
QuakeGod| | 2014-11-20 22:09 | 只看该作者
短的时间用延时,比如对某些慢速IO操作时,需要延时几个时钟,就只能用延时,加几个NOP,
长的时间用定时,除上面之外的,都应该用定时实现。
另外,定时用好了,可以实现很多功能呢,
举个例子,
分别有A,B两个任务需要定时运行,每1mS运行一次,每次运行0.1mS到0.2mS,要求定时精度0.01mS。
这样的话,如果做一个1mS的定时器,先运行A,接着再运行B,就会造成B的启动时刻不准,有相位抖动。如果将B提到前面,则任务A就会有抖动。
那么实际的方法,可以做一个0.5mS的定时器,奇数次调用A,偶数次调用B,这样两个任务的定时间隔和精度都能保证了。
如果有更多个任务,定时间隔要求不同,也可以合理安排。只要处理器能力满足,即可都满足。

使用特权

评论回复
8
慢慢学| | 2014-11-21 08:24 | 只看该作者
最好不要用长延时,短暂的延时可以用,我最近做的东西就是因为延时的关系,导致数据延迟特别大,让整个系统特别卡!!

使用特权

评论回复
9
jjeemm77| | 2014-11-21 09:55 | 只看该作者
系统是时钟运行的!…

使用特权

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

本版积分规则

20

主题

51

帖子

0

粉丝