首页 > 代码库 > 定时器/计数器0之定时器
定时器/计数器0之定时器
/* 效果说明: 定时器中断:通过单片机计数使程序执行 一秒中断一次,中断发生时高四位亮一秒,中断发生后又回到主程序 */ #include <reg51.h> #include <stdio.h> unsigned int i; void delay()//延时子函数 { i=1000000; while(i--);//执行一次大概要一毫秒 这里给它一秒就是中断发生时高四位亮一秒 } //中断初始化 void zhongduan1() { ET0 = 1;//启动计数器中断开关 EA = 1;//总开关 /* 定时器的核心在这 */ TMOD = 0x09; TH0 = 0x0D8; TL0 = 0x0F0; TR0 = 1;//启动定时器 } void main()//主函数 { zhongduan1();//中断初始化 while(1)//while死循环,主程序一直执行,也就是点亮低四位一直亮,中断发生时就跳出执行中断函数程序,中断发生后又回到主程序 { P0 = 0xf0;//点亮低四位 } } //中断程序 也就是中断后要执行的程序 void zhongduan() interrupt 1 { i++; if(i == 10)//让中断函数再循环10再执行其程序 { i = 0; P0 = ~0xf0;//高四位亮 delay();//延时子函数调用 变现为中断发生时所要执行程序的时间 TH0 = 0x0D8; TL0 = 0x0F0; } }
定时器/计数器0之定时器
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。