📄 dj.c
字号:
#include<reg51.h>
#define uchar unsigned char
uchar code dispcode[11]={0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,0x0a};
uchar code disbitcode[8]={0xf0,0xe0,0xd0,0xc0,0xb0,0xa0,0x90,0x80};//位选//
unsigned char num[8]={10,10,10,10,10,10,10,10};
uchar dis_b=0x00; //数码显示的位//
uchar dis_r=0x00; //数码显示的段//
uchar data sec=0;
uchar data min=0;
unsigned int cou=0;
/*********************时间显示****************************/
/********************定时器0*********************************/
void time0(void) interrupt 1
{
cou++;
if(cou==1000)
{
cou=0;
sec++;
if(sec==60)
{
sec=0;
min++;
if(min==60)
min=0;
}
}
num[2]=sec%10;
num[1]=sec/10;
num[0]=min%10;
P2=dispcode[num[7-dis_r]]|disbitcode[dis_b];
dis_r++;
dis_r &=0x07;
dis_b++;
dis_b &=0x07;
TH0=0xfc;
TL0=0x18;
}
void main(void)
{
TMOD=0x01; // 定时/计数器0,1工作于方式1
TH0=0xd8; // 预置定时常数55536(d8f0),产生10ms时基信号
TL0=0xf0;
EA=1; // 开总中断
ET0=1; // 定时/计数器0允许中断
TR0=1; // 开闭定时/计数器0
while(1);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -