函数不被调用还能运行吗?

函数不被调用还能运行吗?,第1张

你应该指的是中断服务函数:就是后缀为interrup的函数!这种函数是不能被调用的!但是只要相应的中断打开!

比如程序中的

ET0=1指的是定时器T0中断打开EA=1代表总中断打开!

TR0=1 指启动定时器0

这样的话对应的中断服务函数就会在定时器溢出后!触发中断中断服务函数就会被执行!

interrupt 后面的数字代表中断类型

0代表外部中断0

1代表定时器T0中断

2代表外部中断1

3代表定时器T1中断

4代表串口中断 普通的51单片机主要就是这5个中断!

子程序是:需要时才调用。系统程序控制OB1不断的循环扫描,当子程序中被激活执行定时器计时后,子程序激活状态是一直被保持的。每当扫描到此子程序时都会检测该定时器是否计时完成。如计时时间未到,激活此子程序的条件不存在了,OB1会则不会扫描此子程序。以上是子程序的条件调用状态。如果此子程序是无条件调用状态,则是每个周期都会扫描此子程序,其中的定时器是否激活,则取决于这定时器的激活条件是否满足。我想你应该明白了。


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

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

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

发表评论

登录后才能评论

评论列表(0条)

    保存