標(biāo)題: 單片機(jī)籃球場(chǎng)24秒倒計(jì)時(shí)設(shè)計(jì)。大佬們我這哪里錯(cuò)了?求助 [打印本頁(yè)]

作者: zeng0etic    時(shí)間: 2020-6-13 09:33
標(biāo)題: 單片機(jī)籃球場(chǎng)24秒倒計(jì)時(shí)設(shè)計(jì)。大佬們我這哪里錯(cuò)了?求助
程序在下: #include<reg52.h>          #include<intrins.h>          #define uint unsigned int          #define uchar unsigned char          sbit w1=P2^0;          sbit w2=P2^1;          sbit key1=P1^0;          sbit key2=P1^1;          sbit key3=P1^2;          sbit BEEP=P2^7;          uint num,num1,shi,ge,z;          uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71} ;          void delay(uint z)          {          uint x,y;          for(x=z;x>0;x--)          for(y=110;y>0;y--);          }  /*void delay1(uchar x)          {          uchar i;          while(x--)          {          for(i=0;i<13;i++){}          }          }          void beep(void)          {          uchar i;          for(i=0;i<50;i++)          {          delay1(4);          BEEP=!BEEP;          }                  }         */          void keyscan()          {          if(key1==0)          {          delay(5);           if(key1==0)           {           while(!key1);           TR0=1;           }          }                  if(key2==0)          {          delay(5) ;           if(key2==0)           {           while(!key2);           TR0=0;           while(!key3);           num1=24;           TR0=1;           BEEP=1;           }          }          }          void init()          {          num1=24;          TMOD=0x01;          TH0=(65536-50000)/256;          TL0=(65536-50000)%256;          EA=1;          ET0=1;          TR0=1;          }          void display(uchar shi,uchar ge)                          {          P0=table[shi];          w1=1;w2=0;          delay(2);          P2=table[ge];          w1=0;w2=1;          delay(3);          if(num1==0)          {          TR0=0;          BEEP=0;          }          }          void main()          {          init();          while(1)          {          keyscan();          if(num==20)          {          num=0;num1--;          }          ge=num1%10;          shi=num/10;          display(shi,ge);          }          }          void time1() interrupt 1          {          TH1=(65536-50000)/256;          TL1=(65536-50000)%256;          num++;          }

IMG_20200612_110258.jpg (5.25 MB, 下載次數(shù): 25)

IMG_20200612_110258.jpg





歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1