1 / 7
文档名称:

单片机跑马灯.doc

格式:doc   大小:36KB   页数:7页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

单片机跑马灯.doc

上传人:文库旗舰店 2020/12/10 文件大小:36 KB

下载得到文件列表

单片机跑马灯.doc

文档介绍

文档介绍:#include<>
#define ulong unsigned long
char tab[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//共阳数码管数字码
char tab_dp[10]={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x70,0x10};//共阳数码管数字码(带小数点)
#define LED P0 //P0为数码管的段选
#define LIGHT P1 //P1为时分秒位的指示灯
#define WS P2 //P2为数码管的位选
sbit time_change=P3^0; //P3^0为“调时”按键
sbit time_choose=P3^1; //P3^1为“选择时分秒”按键
sbit time_inc=P3^2; //P3^2为“增加”按键
sbit time_ok=P3^3; //P3^3为“完成”按键
ulong t;
ulong sec,min,hour,sec_ge,sec_shi,min_ge,min_shi,hour_ge,hour_shi; //定义秒,分,时,秒的个位,十位,分的个位,十位,时的个位,十位
int choose_n; //按下“选择时分秒”按键的次数
int flag; //定义“调时”按键的标志位
//---------------------------------------------------------------------
void init();
void display();
void delay(int);
void time_modify();
//---------------------------------------------------------------------
void main()
{
init();
while(1)
{
TR0=1;
display();
time_modify();
}
}
//---------------------------------------------------------------------
void init()
{
WS=t=LIGHT=choose_n=0;
sec_ge=sec_shi,min_ge,min_shi,hour_ge,hour_shi=sec=min=hour=flag=0;
TMOD=0x01; //定义定时器0工作与方式1
TH0=(65536-5536)/256; //定时器赋初值
TL0=(65536-5536)%256;
EA=1; //开总中断和T0中断
ET0=1;
}
//--------------------------------延时子函数------------------------------------
void delay(int x)
{
int i,j;
for(i=x;i>0l;i--)
for(j=255;j>0;j