📄 秒脉冲.c
字号:
/*------------------------------------------*/
// //
// //
// 天津工程师范学院学院 //
// 梁光林: 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 + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -