?? myproj.c
字號:
#include <reg52.h>
typedef unsigned char BYTE;
BYTE Num;
BYTE Times;
BYTE TAB[16]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E};
void Delay(int nCount);
void DispNum(void);
void DispLed(void);
void main()
{
SP=0x60;
Num=0x01;
Times=0x10;
P2=0x00;
P0=0xff;
TMOD=0x21;
TH1=0xfd;
TL1=0xFd;
TH0=0x00;
TL0=0x00;
SCON=0x50;
PCON=0x00;
IE=0xd7;
IT1=1;
IT0=1;
TR1=1;
TR0=1;
RI=0;
while(1)
{
DispLed();
DispNum();
}
}
void serial(void) interrupt 4//定義串行口中斷處理子程序
{
ES=0;
if(TI)
TI=0;
while(RI)
{
ACC=SBUF;
RI=0;
Num=ACC;
if(Num==0x00)
TR0=0;
else
{
TH0=0xff;
TL0=0xff;
Times=0x10;
TR0=1;
}
}
ES=1;
}
void TimeSec(void) interrupt 1//定義串行口中斷處理子程序
{
TR0=0x0;
TL0=0x00;
TH0=0x00;
if(--Times<=0)
{
Num+=0x1;
Times=0x10;
}
TR0=0x1;
}
void Int0Add(void) interrupt 0//定義串行口中斷處理子程序
{
EX0=0;
Num+=1;
EX0=1;
}
void Int1Dec(void) interrupt 2//定義串行口中斷處理子程序
{
EX1=0;
Num-=1;
EX1=1;
}
void DispNum(void)
{
BYTE i,j;
i=Num/0x10;
j=Num%0x10;
P0=TAB[i];
P2=0x40;
Delay(500);
P0=TAB[j];
P2=0x20;
Delay(500);
}
void DispLed(void)
{
P2=0x80;
P0=Num;
Delay(500);
}
void Delay(int iCount)
{
while(--iCount);
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -