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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 單片機與pc串口通信-----下位機程序

          單片機與pc串口通信-----下位機程序

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

            //MCS-51通過中斷方式接收pc機發(fā)來的字符,并回送給主機

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

            #include

            #include

            #define uchar unsigned char

            uchar xdata rt_buf[32];

            uchar r_in,t_out;

            bit r_full,t_empty;

            serial() interrupt 4 //中斷程序

            {

            if(RI && r_full)

            {

            rt_buf[r_in]=SBUF;

            RI=0;

            if(rt_buf[r_in]==0x24)

            {

            r_full=1;

            SBUF=rt_buf[t_out];

            t_empty=0;

            }

            /*接收字符為$,則接收結(jié)束;設(shè)置接收結(jié)束標志,開始發(fā)送*/

            r_in=++r_in;

            }

            else if(TI && t_empty)

            {

            TI=0;

            t_out=++t_out;

            SBUF=rt_buf[t_out];

            if(t_out==r_in)

            t_empty=1;

            /*t_out=r_in則發(fā)送完,設(shè)發(fā)送完標志t_empty*/

            }

            }

            main()

            {

            /*設(shè)置定時器T1工作于方式2,計數(shù)常數(shù)為0xfdH */

            TMOD=0x20; //TMOD:GATE C/T1 M1 M0 GATE C/T0 M1 M0 0010 0000 以TR啟動定時

            TL1=0xfd; //定時3us

            TH1=0xfd;

            SCON=0x50; //在11.0592MHz下,設(shè)置串行口波特率為9600,方式1,允許接收 01010000

            PCON=0xD0; // 11010000 波特率加倍

            IE=0x10; //00010000 允許串行中斷ES=1

            TR1=1;

            EA=1;

            r_in=t_out=0;

            t_empty =1;

            r_full=0;

            for(;;)

            {

            printf ("%s","serial communicationn"); //添加自己的程序處理代碼

            }

            }

            附上: proteus下和pc機的連接圖

            



          關(guān)鍵詞: 單片機 串口

          評論


          相關(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); })();