文档下载 文档下载导航
设为首页 | 加入收藏
搜索 请输入内容:  
 导航当前位置: 文档下载 > 所有分类 > 工程科技 > 电子/电路 > 单片机C语言6位数码管显示时间程序
侵权投诉

单片机C语言6位数码管显示时间程序

#include<reg52.h>
#include<intrins.h>
#define uint unsigned int
#define uchar unsigned char
uchar count;
sbit s1=P1^0;
sbit s2=P1^1;
sbit s3=P1^2;
sbit s4=P1^3;
sbit s5=P1^4;
sbit s6=P1^5;

uchar DSY_CODE[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
uchar Digits_of_8DSY[]={0,0,55,0,0,55,0,0} ;
void delay(uint m)
{
int i,j;
for(i=0;i<m;i++)
for(j=0;j<110;j++);
}
void key()
{
if(P1!=0xff)
{
IE=0;
TR0=0;

if(s1==0)
{
delay(300);
Digits_of_8DSY[0]++;
if(Digits_of_8DSY[0]==10)
Digits_of_8DSY[0]=0;
}
if(s2==0)
{
delay(300);
Digits_of_8DSY[1]++;
if(Digits_of_8DSY[1]==6)
Digits_of_8DSY[1]=0;
}

if(s3==0)
{
delay(300);
Digits_of_8DSY[3]++;
if(Digits_of_8DSY[3]==10)
Digits_of_8DSY[3]=0;
}
if(s4==0)
{
delay(300);
Digits_of_8DSY[4]++;
if(Digits_of_8DSY[4]==6)
Digits_of_8DSY[4]=0;
}
if(s5==0)
{
delay(300);
Digits_of_8DSY[6]++;
if(Digits_of_8DSY[7]!=2)
{
if(Digits_of_8DSY[6]==10)
Digits_of_8DSY[6]=0;
}
else
if(Digits_of_8DSY[6]==4)
Digits_of_8DSY[6]=0;
}
if(s6==0)
{
delay(300);
Digits_of_8DSY[7]++;

if(Digits_of_8DSY[6]==0||Digits_of_8DSY[6]==1||Digits_of_8DSY[6]==2||Digits_of_8DSY[6]==3)
{
if(Digits_of_8DSY[7]==3)
Digits_of_8DSY[7]=0;
}
else
{
if(Digits_of_8DSY[7]==2)
Digits_of_8DSY[7]=0;
}

}
}
if(P1==0xff)
{
IE=0x82;
TR0=1;

}
}
void main()
{
uchar i,j;

P0=0x00;
P2=0xff;
count=0;
TMOD=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
IE=0x82;
TR0=1;
while(1)
{
key();
j=0x7f;
for(i=7;i!=-1;i--)
{
j=_crol_(j,1);
P2=j;
P0=DSY_CODE[Digits_of_8DSY[i]];
delay(2);
}
}

}
void time0() interrupt 1
{
uchar i;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
if(++count!=20) return;
count=0;
Digits_of_8DSY[0]++ ;
for(i=0;i<=7;i++)
{
if(Digits_of_8DSY[0]==10)
{
Digits_of_8DSY[0]=0;
Digits_of_8DSY[1]++;
if(Digits_of_8DSY[1]==6)
{
Digits_of_8DSY[1]=0;
Digits_of_8DSY[3]++;
if(Digits_of_8DSY[3]==10)
{
Digits_of_8DSY[3]=0;
Digits_of_8DSY[4]++;
if(Digits_of_8DSY[4]==6)
{
Digits_of_8DSY[4]=0;
Digits_of_8DSY[6]++;
if(Digits_of_8DSY[6]==10)
{
Digits_of_8DSY[6]=0;
Digits_of_8DSY[7]++;
}
if(Digits_of_8DSY[7]==2&&Digits_of_8DSY[6]==4)
{
Digits_of_8DSY[6]=0;
Digits_of_8DSY[7]=0;
}
P0=DSY_CODE[Digits_of_8DSY[i]];
}
}
}
}
else break;
}
}

第1页

你可能喜欢

  • LM7805中文资料
  • LED数码管动态显示
  • 单片机数码管显示实验
  • 数码管动态显示程序
  • 单片机按键程序
  • 稳压电源电路
  • 工程电路
  • lm317中文资料

热门文档

相关文档

站点地图 | 文档上传 | 侵权投诉 | 手机版
本站所有资源均来自互联网,本站只负责收集和整理,均不承担任何法律责任,如有侵权等其它行为请联系我们.
文档下载 Copyright 2013 doc.guandang.net All Rights Reserved.  -  email