<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > C51二位數(shù)碼管顯示程序設(shè)計(jì)

          C51二位數(shù)碼管顯示程序設(shè)計(jì)

          作者: 時間:2016-11-27 來源:網(wǎng)絡(luò) 收藏

          #define uint unsigned int
          #define uchar unsigned char
          sbit k1=P2^0;
          sbit k2=P2^1;
          uint code table[]={0X00,0X80,0X10,0X90,0X20,0XA0,0X30,0XB0,0X40,0XC0};
          void delay(uint z)
          {
          uint a,b;
          for(a=z;a>0;a--)
          {
          for(b=z;b>0;b--);
          }
          }
          void main()
          {
          int c=99,t,shi,ge;
          for(t=99;t>0;t--)
          {
          shi=c/10;
          ge=c;
          k1=0,k2=1;
          P1=table[shi];
          delay(300);
          P1=0XFF;

          k2=0,k1=1;
          P1=table[ge];
          delay(200);
          P1=0XFF;
          k1=0,k2=0;
          c--;
          if(c==0)
          c=99;

          本文引用地址:http://www.ex-cimer.com/article/201611/322475.htm


          }
          }

          回答:

          肯定不同時的啊 因?yàn)槟闶秋@示為十再顯示個的

          其實(shí)所謂的同時顯示就是循環(huán)掃描 時間間隔短了 自然看著就是同時了

          你要做的就是在顯示延時的同時顯示一下十位 再顯示一下個位 而不是顯示完一個再顯示另一個

          最好的做法是放在中斷中 這樣能確保顯示效果

          bit flag;

          int shi ,ge;

          這三個為外部變量在延時的過程中調(diào)用這個函數(shù) 應(yīng)該就OK了

          void showled()

          {

          if (flag==0)

          {

          P1=table[shi];k2=1,k1=0;

          }

          else

          {

          P1=table[ge];k2=0,k1=1;

          }

          flag=~flag;

          }



          評論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();