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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 單片機(jī)與上位機(jī)的串口通信

          單片機(jī)與上位機(jī)的串口通信

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




          照片名稱:串口發(fā)送數(shù)據(jù)十六進(jìn)制aa



          照片名稱:串口通信輸入十六進(jìn)制aa



          照片名稱:串口通信輸入十六進(jìn)制aa

          #include
          #define uchar unsigned char
          #define uint unsigned int         //宏定義
          sbit duan=P2^6;            //位聲明
          sbit wei=P2^7;
          uchar code sz[]={            //數(shù)碼管顯示數(shù)組
          0x3f,0x06,0x5b,0x4f,
          0x66,0x6d,0x7d,0x07,
          0x7f,0x6f,0x77,0x7c,
          0x39,0x5e,0x79,0x71};
          uchar num,bai,shi,ge;          //申明四個全局變量
          void ys(uint x)            //延時函數(shù)
          {
          uint z,y;
          for(z=x;z>0;z--)
          for(y=110;y>0;y--);
          }
          void main()             //主函數(shù)
          {
          REN=1;              //打開允許串口數(shù)據(jù)接收位
          SM1=1;             //選擇工作方式1 SM0=0(默認(rèn)) SM1=1
          TR1=1;             //打開定時器1
          TMOD=0x20;          //設(shè)定定時器1的工作方式為工作方式2
          TH1=0xfd;           //設(shè)定波特率為9800,給定時器1高八位裝永久值253,當(dāng)?shù)诎宋灰绯龊笥捎布詣淤x值給低八位
          TL1=0xfd;           //給定時器第八位賦初值
          EA=1;            //打開總中斷
          ES=1;            //打開串口中斷
          duan=0;            //關(guān)閉段選鎖存器
          wei=0;            //關(guān)閉位選鎖存器
          while(1)            //進(jìn)入大循環(huán)--一直調(diào)用數(shù)碼管動態(tài)掃描
          {
          P0=sz[bai];
          duan=1;
          duan=0;
          P0=0xfe;
          wei=1;
          wei=0;
          bai=num/100;
          shi=num%100/10;
          ge=num%10;
          ys(5);

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

          P0=sz[shi];
          duan=1;
          duan=0;
          P0=0xfd;
          wei=1;
          wei=0;
          bai=num/100;
          shi=num%100/10;
          ge=num%10;
          ys(5);

          P0=sz[ge];
          duan=1;
          duan=0;
          P0=0xfb;
          wei=1;
          wei=0;
          bai=num/100;
          shi=num%100/10;
          ge=num%10;
          ys(5);
          }
          }

          void ck() interrupt 4        //串口中斷函數(shù)
          {
          RI=0;             //軟件將RI清零
          P1=SBUF;         //將收到的數(shù)據(jù)賦給P1口的發(fā)光二極管
          num=SBUF;          //將收到的數(shù)據(jù)賦給變量num
          ES=0;         //暫時關(guān)閉串口中斷
          SBUF=num;         //將收到的數(shù)據(jù)賦值給SBUF
          while(!TI);          //檢測數(shù)據(jù)是否發(fā)送完畢,數(shù)據(jù)發(fā)送完畢時TI將被置1
          TI=0; //用軟件將TI清零等待
          ES=1;         //重新打開串口中斷
          }


          上一頁 1 2 下一頁

          評論


          技術(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); })();