标题: QX-mini51 数码管60计数 [打印本页]

作者: sevenroe    时间: 2018-10-25 22:12
标题: QX-mini51 数码管60计数
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit d1=P2^0;
sbit d2=P2^1;
sbit led1=P1^0;
uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
void delayms(uint);
void display(uchar,uchar);
uchar n,n1,n2,shi,ge;
void main()
{
  TMOD=0x11;
  TH0=(65536-45872)/256;
  TL0=(65536-45872)%256;
  TH1=(65536-45872)/256;
  TL1=(65536-45872)%256;
  EA=1;
  ET0=1;
  ET1=1;
  TR0=1;
  TR1=1;
  while(1)
  {
    display(shi,ge);
  }   
}
void display(uchar shi,uchar ge)   //???
{
  d2=1;
  d1=0;
  P0=table[shi];
  delayms(5);
  d1=1;
  d2=0;
  P0=table[ge];
  delayms(5);
  d2=1;
  delayms(5);
}
void delayms(uint xms)      //???
{
  uint i,j;
  for(i=xms;i>0;i--)
   for(j=110;j>0;j--);
}
void T0_time()interrupt 1
{
  TH0=(65536-45872)/256;
  TL0=(65536-45872)%256;
  n1++;
  if(n1==4)
  {
   n1=0;
   led1=~led1;
  }
}
void T1_time() interrupt 3     //??????????????
{
  TH1=(65536-45872)/256;
  TL1=(65536-45872)%256;
  n2++;
  if(n2==20)
  {
   n2=0;
   n++;
   if(n==60)
    n=0;
   shi=n/10;
   ge=n%10;
  }
}







欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1