定时器中断程序执行时间很长,超过定时时间,我该怎么办。求指教

定时器中断程序执行时间很长,超过定时时间,我该怎么办。求指教,第1张

具体看什么要求,一般一个中断执行时间计时毫秒, 估计是你写程序写的太多,造成PLC扫描中断周期过长,

1建议你把中断程序优化下,写到其他位置,和中断分离,这样扫描的周期 会短点

2另外,你可以考虑用定时中断啊,这样避免了中断程序没扫描完,中断就被复位。

3程序一般控制毫秒控制肯定能达到工业使用要求的,你也可以把定时时间加长点。

单片机中断入口地址间确实只有8个字节的空间,所以一般在中断地址入口放一条跳转指令,跳到其他用户程序空间去执行中断服务程序。一条跳转指令有2~3个字节就可以了。比如:LJMP INT_TIMER0 就是长跳转到INT_TIMER0,占用3个地址空间。

用时用SJMP,这个指令只占用2个字节空间。

跳转指令在C语言中,相当于GOTO。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/7773955.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-09
下一篇2023-04-09

发表评论

登录后才能评论

评论列表(0条)

    保存