定时器0工作方式0-实现发光二极管1s亮灭
单片机源程序如下:
- #include<reg51.h>
- #define uchar unsigned char
- #define uint unsigned int
- sbit led1=P1^0;
- uchar num;
- void main()
- {
- TMOD=0X00; //设置定时器0工作方式0(M1M0为00)
- TH0=(8192-2000)/32; //装初值
- TL0=(8192-2000)%32;
- EA=1; //开总中断
- ET0=1; //开定时器0中断
- TR0=1; //启动定时器0
- while(1); //程序停止在这里等待中断发生
- }
- void T0_time() interrupt 1
- {
- TH0=(8192-2000)/32; // 重装初值
- TL0=(8192-2000)%32;
- num++; // num每加1次判断一次是否到20次
- if(num==20) //如果到了20次,说明1秒到了
- {
- num=0; // 然后把num清0重新再计20次
- led1=~led1; // 让发光二极管取反
- }
- }
复制代码
所有资料51hei提供下载:
定时器0工作方式0-实现发光二极管1s亮灭.rar
(13.81 KB, 下载次数: 12)
|