📄 t0定时中断.c
字号:
include <reg51.h>
//8字LED的连接方法
//P0.7 P.06 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0
// H G F E D C B A
unsigned char code ledcode[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,
0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e}; //数码管段码表
unsigned char js100ms,jsgw,jssw,t0100ms,t0sm;
void time0(void);
void main(void)
{
js100ms=0x00;
jsgw=0x00;
jssw=0x00;
t0100ms=0x14;
tosm=0x01; //从第一个LED开始显示
TH0=0xee;
TL0=0x00;
TMOD=0x01;
TR0=1;
while(1)
{}
}
void time0(void) interrupt 1
{
TH0=0xee;
TL0=0x00;
to100ms--;
if(t0100ms==0x00)
{
t0100ms=0x14;
js100ms++;
if(js100ms==0x0a)
{
js100ms-0x00;
jsgw++;
if(jsgw==0x0a)
{
jsgw=0x00;
jssw++;
if(jssw==0x0a)
{jssw=0x00;}
}
}
}
t0sm++;
if(t0sm==0x04)
{t0sm=0x01;}
P0=0xff;
switch(t0sm)
{
case 0x01: { P2=0xdf;P0=ledcode[js100ms];}break;
case 0x02: { P2=0xef;P0=ledcode[jsgw]&0x7f;}break;
case 0x03: { P2=0xf7;P0=ledcode[jssw];}break;
default: break;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -