Eighth Cup microcontroller Class Code Blue Bridge

// add their own drive

#include <1302.h>
#include <DS18B20.h>
U16 Duan code [] = {0x3F, 0x06,0x5b, 0x4F, 0x66,0x6d, 0x7D, 0x07,
     0x7F, 0x6F, 0x77,0x7c, 0x39,0x5e, 0x79 , 0x71,0x00,0X40};
U8 Yi, ER, San, Si, Wu, Liu, Qi, BA;
U8 shizhongshezhicishu = 0;? // ou sheaths ???? ??
U8 naozhong [. 3] = {0, } 0,0;
U16 dingshishijian;
U16 dingshishijian1;
U8 kongzhishanshuo;
U8 naozhongcishu;
U8 Jia, Jian;
U8 chucunshijian [. 3];
U8 Kai;
void Delay1ms ();
void the display ();
void Delay200ms()  //@11.0592MHz
{
 unsigned char i, j, k;
 _nop_();
 _nop_();
 i = 9;
 j = 104;
 k = 139;
 do
 {
  do
  {
   while (--k);
  } while (--j);
 } while (--i);
}
 
void Timer0Init(void)  //[email protected]
{
 AUXR |= 0x80;  //?????1T??
 TMOD &= 0xF0;  //???????
 TL0 = 0xCD;  //??????
 TH0 = 0xD4;  //??????
 TF0 = 0;  //??TF0??
 TR0 = 0;
     EA=1;
   ET0=1;//???0????
  TMOD &= 0x0F;  //???????
 TL1 = 0xCD;  //??????
 TH1 = 0xD4;  //??????
 TF1 = 0;  //??TF1??
 TR1 = 0;
  ET1=1;
}
     void Delay10ms()  //@11.0592MHz
{
 unsigned char i, j;
 i = 108;
 j = 145;
 do
 {
  while (--j);
 } while (--i);
}
void Delay1ms()  //@11.0592MHz
{
 unsigned char i, j;
 _nop_();
 _nop_();
 _nop_();
 i = 11;
 j = 190;
 do
 {
  while (--j);
 } while (--i);
}
void allinit()
{
  P2=0xa0;
 P0=0x00;
 P2=0x80;
 P0=0xff;
}
void display()//陏??1?醸???
{
   P2=0xc0;
 P0=0x80;
 P2=0xff;
 P0=~duan[ba];
 Delay1ms(); 
 P2=0xc0;
 P0=0x40;
 P2=0xff;
 P0=~duan[qi];
 Delay1ms();P2=0xc0;
 P0=0x20;
 P2=0xff;
 P0=~duan[liu];
 Delay1ms();P2=0xc0;
 P0=0x10;
 P2 = 0xFF;
 P0 = ~ Duan [Wu];
 Delay1ms (); P2 = 0xC0;
 P0 = 0x08;
 P2 = 0xFF;
 P0 = ~ Duan [Si];
 Delay1ms (); P2 = 0xC0;
 P0 = 0x04;
 P2 = 0xFF;
 P0 = ~ Duan [San];
 Delay1ms ();
 P2 = 0xC0;
P0 = 0x02;
 P2 = 0xFF;
 P0 = ~ Duan [ER];
 Delay1ms ();
 P2 = 0xC0;
 P0 = 0x01;
 P2 = 0xFF;
 Duan = ~ P0 [Yi];
 Delay1ms ();
}
void juzhen()//??????
{
 u8 dat;
 kai=0;
 jia=0;
 jian=0;
 if(P30==0)
 {
    Delay10ms() ;
   if(P30==0)
   {
     dat=4;kai=1;
   }
   while(P30==0)
   {
     
   }
 
 }
 
  if(P31==0)
 {
    Delay10ms() ;
   if(P31==0)
   {
     dat=3;
    kai=1;
   }
   while(P31==0)
   {
     
   }
 
 }
 
  if(P32==0)
 {
    Delay10ms(); 
   if(P32==0)
   {
     dat=2;kai=1;
   }
   while(P32==0)
   {
     
   }
 
 }
 
  if(P33==0)
 {
    Delay10ms() ;
   if(P33==0)
   {
     dat=1;
    kai=1;
   }
 }
 if(dat==4&&naozhongcishu==0)
 {
   P14 =. 1;
  P17 = 0;
   shizhongshezhicishu + =. 1;
 }
  IF (shizhongshezhicishu ==. 4)
 {
    shizhongshezhicishu = 0;
 }
 IF (DAT ==. 3 && shizhongshezhicishu == 0)
 {
   naozhongcishu + =. 1;
 }
 IF (naozhongcishu ==. 4)
 {
   = 0 naozhongcishu;
 }
 IF (DAT == 2)
 {
    Jia =. 1;
 }
 IF (!! == DAT. 1 && (|| naozhongcishu shizhongshezhicishu = 0 = 0))
 {
  the while (P33 == 0)
  {
    Jian. 1 =;
  }
 }
 
  IF (P33 shizhongshezhicishu == 0 &&! = naozhongcishu. 1 &&! =. 1)
  {
   the while (P33 == 0)
   {
  Yi = 16; ER = 16; San = 16; Si = 16; Wu = 16;
    DAT = zuizhong ();
  Liu = DAT / 100; Qi = DAT / 10% 10; BA = DAT% 10;
  the display () ;
   }
}
}
void shanshuo // () ?? E //
// {
// Yi = 16; ER = 16; San = 16; Si = 16; Wu = 16; Liu = 16; Qi = 16; BA = 16;
// }
void shanshuo1 ()
 
{
 chucunshijian [0] = chucunshijian [0] + Jia-Jian;
 
 TR0 =. 1;
  Yi = 16; ER = 16; San =. 17; Si = chucunshijian [. 1] / 16; Wu = chucunshijian [. 1 ] 16%; Liu =. 17; Qi = chucunshijian [2] / 16; BA = chucunshijian [2] 16%;
}
shanshuo2 void ()
{TR0 =. 1; chucunshijian [. 1] = chucunshijian [. 1] + Jia-Jian;
yi = chucunshijian [0] / 16 ; er = chucunshijian [0]% 16; san = 17; si = 16; wu = 16; liu = 17; qi = chucunshijian [2] / 16; ba = chucunshijian [2]% 16;
}
shanshuo3 void ()
{TR0 =. 1; chucunshijian [2] = chucunshijian [2] + Jia-Jian;
 yi = chucunshijian [0] / 16 ; er = chucunshijian [0]% 16; san = 17; si = chucunshijian [1] / 16; wu = chucunshijian [1]% 16; liu = 17; qi = 16; ba = 16;
}
void zhengchang ()
{
  Yi = chucunshijian [0] / 16; ER = chucunshijian [0]% 16; San =. 17; Si = chucunshijian [. 1] / 16; Wu = chucunshijian [. 1]% 16; Liu = . 17; Qi = chucunshijian [2] / 16; BA = chucunshijian [2]% 16;
}
void zhengchang1 ()
{
  Yi = Shijian [0] / 16; ER = Shijian [0]% 16; San =. 17; Si = Shijian [. 1] / 16; Wu Shijian = [. 1] 16%; Liu =. 17; Qi = Shijian [2] / 16; BA = Shijian [2] 16%;
}
sanshanshuo void ()
{
   chucunshijian [0] = Shijian [0];
 chucunshijian [. 1] = Shijian [. 1];
 chucunshijian [2] = Shijian [2];
 Switch (shizhongshezhicishu)
 {Case. 1: 
    
   IF (kongzhishanshuo == 0)
   {
      shanshuo1 ();
    
   }
   the else IF (kongzhishanshuo ==. 1)
   {
      zhengchang ();
   }
 
   BREAK;
  
  
 Case 2:
  
   IF (kongzhishanshuo == 0)
   {
      shanshuo2 ();
   }
   the else IF (= kongzhishanshuo . 1 =)
   {
      zhengchang ();
   }
  BREAK;
  
  Case. 3:
  
   IF (kongzhishanshuo == 0)
   {
      shanshuo3 ();
   }
   the else IF (kongzhishanshuo ==. 1)
   {
      zhengchang ();
   }
  BREAK;
 } 
 Write (0x8e, 0x00) ;
 Write (0x80, chucunshijian [0]);
  Write (0x82, chucunshijian [. 1]);
 Write (0x84, chucunshijian [2]);
 Write (0x8e, 0x80);
}
void naozhongkongzhi ()
{
 
    Yi = naozhong [0] / 10; ER = naozhong [0]% 10; San =. 17; Si = naozhong [. 1] / 10;
  Wu = naozhong [. 1]% 10; Liu =. 17; Qi = naozhong [2] / 10; BA = naozhong [ 2]% 10;
 
 
}
void naozhongxianshi ()
{
 TR0 =. 1;
  IF (naozhongcishu ==. 1 && kongzhishanshuo == 0)
 {
  naozhong [0] = naozhong [0] + Jia-Jian;
   naozhongkongzhi ();
 }
  the else IF (naozhongcishu = ==. 1. 1 && kongzhishanshuo =)
   {
Yi = 16; ER = 16; San =. 17; Si = naozhong [. 1] / 10;
  Wu = naozhong [. 1]% 10; Liu =. 17; Qi = naozhong [2] / 10; BA = naozhong [2]% 10;
   }
   
     IF (naozhongcishu == 2 && kongzhishanshuo == 0)
 {
    naozhong [. 1] = naozhong [ . 1] + Jia-Jian;
   naozhongkongzhi ();
 }
  the else IF (naozhongcishu == 2 && kongzhishanshuo ==. 1)
   {
      Yi = naozhong [0] / 10; ER = naozhong [0]% 10; San =. 17; Si = 16;
  = 16 Wu; Liu =. 17; Qi = naozhong [2] / 10; BA = naozhong [2] 10%;
   }
   
     IF (naozhongcishu kongzhishanshuo == == 0 &&. 3)
 {
    naozhong [2] = naozhong [2] + jia- Jian;
   naozhongkongzhi ();
 }
  the else IF (naozhongcishu ==. 3 && kongzhishanshuo ==. 1)
   {
      Yi = naozhong [0] / 10; ER = naozhong [0]% 10; San =. 17; Si = naozhong [. 1] / 10;
  Wu = naozhong [. 1]% 10; Liu =. 17; Qi = 16; BA = 16;
   }
}
void naozhongxiang ()
{  
 P2 = 0xCF;
  P0 = 0xFF;
  P2 = 0xFF;
  P0 = 0xFF;
 TR1 =. 1;
  the while ( . 1)
 {
      P2 = 0x80;
  P0 = 0x00;
   Delay200ms ();
  P2 = 0x80;
  P0 = 0xFF;
  Delay200ms ();
  Juzhen ();
  IF (Kai ==. 1)
  {
    BREAK;
  }
 }
 dingshishijian = 0;
 TR1 = 0 ;
}
void main ()
{
 Timer0Init ();
 WR (); 
  allinit ();
 the while (. 1)
 {
  Juzhen ();
Re ();

  
  IF (shizhongshezhicishu == 0 && naozhongcishu == 0)
  {
     zhengchang1 (); 
  }
   the else {
  sanshanshuo ();
  naozhongxianshi ();
   }
// moshixuanze ();
// Re ();
   the display ();
  
  IF (Shijian [0] = naozhong = [0] && Shijian [. 1] == naozhong [. 1] && Shijian [2] == naozhong [2])
  {
     naozhongxiang ();
  }
 }
}
void ding0()interrupt 1
{
   0xCD = TL0; // ??????
 TH0 is = 0xD4;
 
  dingshishijian ++;
 IF (1000 dingshishijian == == 0 && kongzhishanshuo)
 {
 kongzhishanshuo =. 1;
  dingshishijian = 0;
 }
 the else IF (dingshishijian == == 1000 && kongzhishanshuo. 1)
 {
    = 0 kongzhishanshuo;
  dingshishijian = 0;
 }
}
void ding1()interrupt 3
{
 TL1 = 0xCD; 
 TH1 = 0xD4;
    //??????
 
  ++ dingshishijian1;
 
}

Guess you like

Origin www.cnblogs.com/a1113775906/p/12121693.html
Recommended