如何使用c语言书写定时器1中断服务程序的首部?

如何使用c语言书写定时器1中断服务程序的首部?,第1张

单片机定时中断C语言的写法步骤》由会员分享,可在线阅读,更多相关《51单片机定时中断C语言的写法步骤(2页珍藏版)》请在人人文库网上搜索。

1、51单片机定时中断C语言的写法步骤程序说明:51单片机定时器0工作于方式一,定时50ms中断一次晶振为12M#includevoid mainTOMD = 0X01;/配置定时器0工作于方式一TH1 = (65536-50000)/256/高八位装入初值TL1 = (65536-50000)%256/低八位装入初值ET0 = 1/开定时器0中断EA = 1/开总中断TR0 = 1/启动定时器0while(1);void Timer0_int() interrupt 1/重新装初值TH1 = (65536-50000)/256/高八位装入初值TL1 = (65536-50000)%256/低八位装入初值 /*/上面是比较好理解的。如果实在要求简洁的话,看下面的,跟上面功能一样#includevoid mainTOMD = 0X01;/配置定时器0工作于方式一TH1 = 0x3c/高八位装入初值TL1 = 0xb0/低八位装入初值IE = 0x82/开总中断并开定时器0中断TR0 = 1/启动定时器0while(1);void Timer0_int() interrupt 1/重新装初值TH1 = 0x3c/高八位装入初值TL1 = 0xb0/低八位装入初值。

中断函数是不需要额外通过代码调用的

当中断条件满足,单片机会打断当前执行的语句,跳转到中断函数,然后执行完中断函数后,再次返回之前被打断的语句继续执行

中断函数中,每次都会对定时器重新初始化,即头两句对TH1和TL1的赋值,这样每50ms会再次进入一次中断函数.每20次进入中断,即经过了1秒,然后对全局变量miao自增1

而main函数则是不断对变量miao进行输出


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

原文地址: http://outofmemory.cn/yw/11348112.html

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

发表评论

登录后才能评论

评论列表(0条)

保存