微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 单片机 定时器 中断

单片机 定时器 中断

时间:10-02 整理:3721RD 点击:
在51单片机中,使用定时器。定时时间到后,执行主程序。在执行主程序的过程中,定时器是不是又开始计时,还是停止计时,等待主程序执行完了,然后再开始计时呢?如果主程序执行的时间大于定时器定时的时间,当第一次定时器中断来时,主程序执行,但是到定时器第二次定时中断来时,假设主程序没有执行完了。那么现在主程序该怎么执行呢?

只要设定的时间一到就进入你的定时器中,执行完后再回跳入定时器前的那条语句

如果定时器执行的时间大于定时器的时间则一直在定时器中

关键是主程序执行的时间大于定时器的定时时间,那么在主程序执行中,定时中断来了,应该从头执行吗?还是主程序执行时,定时器先停止,不起作用,等待主程序执行完了,才开始定时?你的意见呢

谢谢分享谢谢分享

谢谢分享谢谢分享

那么在主程序执行中,定时中断来了,应该从头执行吗?     :定时器中断来了,是在定时器中得指令从头执行到定时器中的最后一条语句
还是主程序执行时,定时器先停止,不起作用,等待主程序执行完了,才开始定时?   :定时器是不会停止得,除非你关闭了定时器。他是一直在执行到了时间就进入定时器,
就跟c中得调用差不多

晕  不管你执行到哪里  中断来的时候  进入中断程序时  不是要重新装初值么TH0=(65536-X)/256;TL0=(65536-X)%256  重新装初值之前不是要先关掉定时器么TR0=0;(所以啊  进入中断时  定时计数器是停止计时的。)
中断程序执行到末尾的时候才重新打开定时计数器TR0=1;  当跳出中断的时候计数器重新开始计时  从中断直接跳到主程序之前被中断的地方继续执行  你的原话“定时时间到后,执行主程序。”   这个说法有问题啊   主程序是正事  中断只是意外事件  应该是执行主程序的过程中穿插中断事件  你不能中断事件中穿插主程序吧  这不本末倒置了吗

谢谢分享的好资料

所以说,在执行中断程序时,定时器还是在计时吗

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top