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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > proteus與keil Cx51的單片機仿真(串行通信口)

          proteus與keil Cx51的單片機仿真(串行通信口)

          作者: 時間:2016-11-24 來源:網(wǎng)絡 收藏
          單片機串行口工作于方式0,通過74LS164實現(xiàn)串并轉換,來控制共陽極數(shù)碼管的顯示,當按下K01按鈕顯示2010,按下K02鍵顯示1987,按下K03鍵顯示0606,按下K04鍵顯示1988,按下K05鍵顯示1224。其中數(shù)字顯示可由自己設定.

          電路圖:

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



          C程序:

          #include
          #include
          #include
          #define uchar unsigned char//宏定義
          sbit P1_1=P1^1;
          sbit P1_2=P1^2;
          sbit P1_3=P1^3;
          sbit P1_4=P1^4;
          sbit P1_5=P1^5;
          sbit P2_0=P2^0;
          uchar code discode[]={0x03,0x9f,0x25,0x0d,0x99,0x49,0x41,0x1f,0x01,0x09};//串行方式下共陽極數(shù)碼管段碼表0~9
          unsigned char leddis[4]={0,1,2,3};//顯存,有幾個數(shù)碼管進行定義
          void display(void)//數(shù)碼管顯示函數(shù)
          {
          unsigned char count;//數(shù)碼管個數(shù)
          P2_0=0;//P2.0引腳輸出清零信號,對74LS164清零
          _nop_();
          _nop_();//延時,保證清零完成
          P2_0=1;//結束對74LS164清零
          for(count=4;count>0;count--)
          {
          SBUF=discode[leddis[count-1]];
          while(TI==0);TI=0;
          }
          }
          void main()
          {
          SCON=0x00;//設定UART的工作方式為方式0
          leddis[0]=0;leddis[1]=1;leddis[2]=2;leddis[3]=3;//顯示內(nèi)容初始化
          display();//顯示函數(shù)
          while(1)
          {
          if(P1_1==0)//K01按下,即P1_1被按下,顯示2010
          {leddis[0]=2;leddis[1]=0;leddis[2]=1;leddis[3]=0;
          display();
          P1_1=1;}
          if(P1_2==0)//K02按下,即P1_2被按下,顯示1987
          {leddis[0]=1;leddis[1]=9;leddis[2]=8;leddis[3]=7;
          display();
          P1_2=1;}
          if(P1_3==0)//K03按下,即P1_3被按下,顯示0606
          {leddis[0]=0;leddis[1]=6;leddis[2]=0;leddis[3]=6;
          display();
          P1_3=1;}
          if(P1_4==0)//K04按下,即P1_4被按下,顯示1988
          {leddis[0]=1;leddis[1]=9;leddis[2]=8;leddis[3]=8;
          display();
          P1_4=1;}
          if(P1_5==0)//K05按下,即P1_5被按下,顯示1224
          {leddis[0]=1;leddis[1]=2;leddis[2]=2;leddis[3]=4;
          display();
          P1_5=1;}
          }
          }




          評論


          技術專區(qū)

          關閉
          看屁屁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); })();