立即注册 登录
返回首页

uid:258975的个人空间

日志

秒表数码管显示

已有 437 次阅读2017-12-8 10:50

#include <reg52.h>
#define uint unsigned int 
#define uchar unsigned char
uint m;           //Ñ-»·′Îêy
uchar n;          //¾ßìåêy×Ö
sbit a=P2^2;
sbit b=P2^3;
sbit c=P2^4;
sbit k1=P3^2;
uchar code NumData[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};     //0-9μÄÂëÖμ
//uchar code NumData[]={0x6f,0x7f,0x07,0x7d,0x6d,0x66,0x4f,0x5b,0x06,0x3f};     //0-9μÄÂëÖμ

void delay(unsigned int x)   //Ñóê±
{
unsigned int i,j;
for(i=x;i>0;i--)
for(j=114;j>0;j--)
;
}
void show(uchar dat)      //μúò»¸öêyÂë1ü
{
a=1;b=0;c=0;
  P0=dat;
delay(3);
}

void show1(uchar dat)       //μú¶t¸öêyÂë1ü
{
a=0;b=1;c=0;
P0=dat;
delay(3);
}

void show3(uchar dat)      //μú3¸öêyÂë1ü
{
a=1;b=1;c=0;
  P0=dat;
delay(3);
}

void show4(uchar dat)      //μú4¸öêyÂë1ü
{
a=0;b=0;c=0;
  P0=dat;
delay(3);
}

void inti()            //¶¨ê±Æ÷ía2¿ÖD¶Ï0
{
TMOD=0x01;          //·½ê½1
TH0=0x23;             //¶¨ê±Æ÷3õÖμ
TL0=0x99;
EA=1;               //¿a×üÖD¶Ï
IT0=1;              //ía2¿ÖD¶Ï0ϽμÑØ′¥·¢·½ê½
EX0=1;              //¿aía2¿ÖD¶Ï0
ET0=1;             //¿a¶¨ê±Æ÷T0ÖD¶Ï
TR0=1;             //1ض¨ê±Æ÷T0
}

void outcut() interrupt 0        //ía2¿ÖD¶Ï0ÖD¶Ï¿ØÖÆ
{
delay(10);
if(k1==0)
TR0=~TR0;                  //¿ØÖƶ¨ê±Æ÷¿a1Ø
}

void outcut1() interrupt 1         //¶¨ê±Æ÷T0ÖD¶Ï¿ØÖÆ
{
TH0=0x23;                   //Öظ33õÖμ
TL0=0x99;
n++;
if(n%2==0)              //ÿ1y100ms
{
m++;
n=0;
if(m==9999)
m=0;
}
}

void show2()
show3(NumData[m/1000%10]);             //°ùλ
show1(NumData[m/100%10]);             //ê®Î»
show(NumData[m/10%10]);               //¸öλ  |0x01
show4(NumData[m/1%10]);               //oáÃë
}

void main()
{
inti();
while(1)
show2();
}

路过

鸡蛋

鲜花

握手

雷人

评论 (0 个评论)

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

返回顶部