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

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 單片機(jī)通過(guò)串口中斷與電腦連接通信

          單片機(jī)通過(guò)串口中斷與電腦連接通信

          作者: 時(shí)間:2012-02-19 來(lái)源:網(wǎng)絡(luò) 收藏

          本實(shí)驗(yàn)實(shí)現(xiàn)實(shí)驗(yàn),和計(jì)算機(jī)進(jìn)行 *
          首先接受聯(lián)機(jī)信號(hào),然后接受計(jì)算機(jī)的相關(guān)控制信號(hào) *
          本實(shí)驗(yàn)中,采用發(fā)送不同的字符給計(jì)算機(jī)來(lái)模擬接收到的不同的計(jì)算機(jī)控制命令 *
          擴(kuò)展,可以實(shí)現(xiàn)不同的功能 *
          * *
          *
          * *
          ********************************************************************************/

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

          #include
          #define uchar unsigned char

          uchar time,b_break,b_break_3;
          uchar buf;

          void waitsend()
          {
          while(!TI)
          {
          };
          TI = 0;
          }
          //串行程序
          void int_s(void) interrupt 4 {
          ES = 0; //關(guān)閉串行中斷
          RI = 0; //清除串行接受標(biāo)志位
          buf = SBUF; //從緩沖區(qū)取得數(shù)據(jù)
          P1 = buf; //數(shù)據(jù)送往p1口顯示出來(lái)
          if(buf == 255) SBUF = 255; //發(fā)送聯(lián)絡(luò)信號(hào)
          else{
          switch(buf)
          {
          case 1: SBUF = 'M',waitsend();break; //如果接受到1,發(fā)送字符'M'給計(jì)算機(jī)
          case 2: SBUF = 'C',waitsend();break; //如果接受到2,發(fā)送字符'C'給計(jì)算機(jī)
          case 3: SBUF = 'S',waitsend();break; //如果接受到3,發(fā)送字符'S'給計(jì)算機(jī)
          case 4: SBUF = '5',waitsend();break; //如果接受到4,發(fā)送字符'5'給計(jì)算機(jī)
          case 5: SBUF = '1',waitsend();break; //如果接受到5,發(fā)送字符'1'給計(jì)算機(jī)

          default: SBUF = 'n',waitsend();break; //如果接受到其它數(shù)據(jù),發(fā)送n給計(jì)算機(jī)

          }
          }
          ES = 1; //允許中斷

          }

          void main(void) {

          P0 = 0;
          P2 = 255; //關(guān)閉數(shù)碼管顯示

          EA=1;
          SCON=0x50;PCON=0X80;
          TMOD=0x20;ES = 1;
          TL1=TH1=0xf3;TR1=1; //串口工作在模1,波特率4800@12Mhz)

          while(1);
          //無(wú)限循環(huán)等待串行中斷
          }



          評(píng)論


          相關(guān)推薦

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