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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > C51:串口通信接收與發(fā)送

          C51:串口通信接收與發(fā)送

          作者: 時間:2016-11-09 來源:網(wǎng)絡 收藏
          假設要發(fā)送一組數(shù)據(jù) Send[10]

          一般采用查詢發(fā)送(循環(huán)發(fā)送)方式:
          unsigned char Send[10]; //發(fā)送量
          unsigned char i; //循環(huán)量
          for(i=0;i<10;i++)
          {
          SBUF= Send[i]; //發(fā)送
          while(TI==0); //等待發(fā)送完成
          TI=0; //清標志
          }

          采用中斷發(fā)送方式:
          unsigned char Send[10]; //發(fā)送量
          unsigned char num; //發(fā)送數(shù)據(jù)量
          unsigned char *p; //發(fā)送用指針

          //發(fā)送時:
          num=10; //定義發(fā)送數(shù)據(jù)量
          p=&Send ; //取首地址
          SBUF=*p; //發(fā)送第一個數(shù)據(jù),啟動發(fā)送中斷
          //中斷代碼:
          void ComInt() interrupt 4
          {
          if(RI) RI=0; //接收中斷略;

          if(TI) //發(fā)送中斷處理
          {
          TI=0; //清標志
          num--; //計數(shù)減1
          p++; //指針加1
          if(num >0) SBUF=*p; //數(shù)據(jù)繼續(xù)發(fā)送至全部發(fā)完
          }
          }

          中斷發(fā)送優(yōu)點:省去循環(huán)等待時間,以上面例子為例,9600bps時查詢發(fā)送約占用單片機10ms多,而中斷發(fā)送只占單片機幾十微秒(單片機速度越快

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

          ,占用時間越少)。
          中斷發(fā)送缺點:代碼稍復雜,發(fā)送過程不易控制。



          評論


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