秒脉冲.c

来自「这是本人在学习51单片机时练习的C程序 lgl_5923@163.com」· C语言 代码 · 共 56 行

C
56
字号
/*------------------------------------------*/
//                                          //
//                                          //
//              天津工程师范学院学院        //
//            梁光林: lgl_5923@163.com      //
//                                          //
//                                          //
/*-----------------------------------------*/




/*通过定时器T0工作方式1,16位计时,每溢出一次50MS
配合软件定时给主程序提供秒脉冲M位*/

#include <reg51.h>


bit m;//主程序秒脉冲标志位

timer1() interrupt 1//秒脉冲程序
{
static n;//设置一个表态变量以保证每次中断后值不变

TH0=(65530-50000)/256;//重设初值,50MS
TL0=(65530-50000)%256;

n++;
if(n==20)//到1秒M溢出
{
n=0;
m=!m;

}
}


main()//主程序
{
P1=0xff;
TH0=(65536-50000)/256;//重设初值,50MS
TL0=(65536-50000)%256;

TMOD=0x01;//定时器T0工作方式1,16位计时
ET0=1;
EA=1;
TR0=1;
while(1)//循环主程序
			if(m==1)
          {
			 m=0;//到1清零
          P1=!P1;
          }
			 
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?