<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ī)雙機(jī)通訊試驗(yàn)

          單片機(jī)雙機(jī)通訊試驗(yàn)

          作者: 時(shí)間:2012-10-20 來(lái)源:網(wǎng)絡(luò) 收藏
          實(shí)驗(yàn)名稱:
          實(shí)驗(yàn)?zāi)康模菏煜?a class="contentlabel" href="http://www.ex-cimer.com/news/listbylabel/label/單片機(jī)">單片機(jī)串行口工作原理;掌握通信程序設(shè)計(jì)的一般方法
          實(shí)驗(yàn)要求:按照實(shí)驗(yàn)安排準(zhǔn)時(shí)參加實(shí)驗(yàn),按照實(shí)驗(yàn)步驟操作,仔細(xì)觀察及記錄實(shí)驗(yàn)過(guò)程及結(jié)果,回答實(shí)驗(yàn)相關(guān)問(wèn)題,最終根據(jù)實(shí)驗(yàn)結(jié)果撰寫實(shí)驗(yàn)指導(dǎo)書(shū)。
          實(shí)驗(yàn)內(nèi)容:編寫一個(gè)雙機(jī)通信程序,一個(gè)作為主機(jī),一個(gè)作為從機(jī),主機(jī)對(duì)從機(jī)發(fā)送控制命令,當(dāng)主機(jī)發(fā)送turn on 時(shí),從機(jī)如果接收正確,則向主機(jī)發(fā)送on用于應(yīng)答,并使LED燈亮(從機(jī)任選1LED燈來(lái)控制),當(dāng)主機(jī)發(fā)關(guān)turn off 時(shí),從機(jī)如果接收正確,則使LED 燈滅。如果不是這兩個(gè)命令,則從機(jī)向主機(jī)發(fā)送error作為應(yīng)答。
          實(shí)驗(yàn)步驟:
          1、連接兩臺(tái)開(kāi)發(fā)板的串行通信線,注意共地連接
          2、設(shè)定A機(jī)為發(fā)送方
          3、設(shè)定B機(jī)為接收方
          4、設(shè)定雙方接收與發(fā)送波特率
          5、各自編制收發(fā)程序
          6、發(fā)送數(shù)據(jù)調(diào)試
          錄入程序:
          #include/*命令定義*/#define TurnOn  1#define TurnOff 2/*應(yīng)答定義*/#define On      3#define Off     4#define Error     4/////////////////顯示sbit k1=P1^3;/*第1位數(shù)碼管共陰端*/sbit k2=P1^2;/*第2位數(shù)碼管共陰端*/sbit k3=P1^1;/*第3位數(shù)碼管共陰端*/sbit k4=P1^0;/*第4位數(shù)碼管共陰端*/unsigned char rd=0;//串口數(shù)據(jù)接收暫存變量void RxdInterrupt() interrupt 4 using 2//串口中斷函數(shù){rd=SBUF;//接收數(shù)據(jù)存儲(chǔ)到變量rdif(rd==TurnOn)//是亮燈命令{P0=255;//LED亮SBUF=On;//應(yīng)答Onwhile(TI==0);TI=0; //等待發(fā)送完畢}else if(rd==TurnOff)//是關(guān)燈命令{P0=0;//LED滅SBUF=Off;//應(yīng)答Offwhile(TI==0);TI=0; //等待發(fā)送完畢}else {SBUF=Error;//應(yīng)答Offwhile(TI==0);TI=0; //等待發(fā)送完畢}RI=0;}void InitEs()//串口初始化函數(shù){TMOD=0x21;   TH1=0xF3;//波速率設(shè)置為2400TR1=1; SCON=0XD0; ES=1;//串口中斷允許}main(){InitEs();//串口初始化EA=1;  k1=k2=k3=k4=0;//關(guān)閉數(shù)碼管P0=0;//LED滅while(1){}} 
          程序參考及鳴謝:我在網(wǎng)上認(rèn)識(shí)了一個(gè)網(wǎng)名為蘇工的網(wǎng)友,我不知道他真名,但是人很好,我把問(wèn)題咨詢過(guò)他了。雖然對(duì)用c程序編程,我很生疏,因?yàn)橐酝业牟锁B(niǎo)級(jí)編程都是匯編語(yǔ)言,但是,他給我解釋C程序很詳細(xì),我略有小知,很感謝蘇工,所以在這個(gè)實(shí)驗(yàn)報(bào)告引用了他的腦力勞動(dòng)成果,并且在這里謝謝蘇工對(duì)我的指教。同樣感謝單片機(jī)鮮浩老師,對(duì)我單片機(jī)課程細(xì)致的傳授,使我產(chǎn)生濃厚興趣的同時(shí)真真切切的感受到學(xué)習(xí)單片機(jī)的快樂(lè)和運(yùn)用智慧操縱機(jī)器的興奮。不知道以往實(shí)驗(yàn)報(bào)告的學(xué)生有沒(méi)有我這一則小敘,但是對(duì)別人勞動(dòng)成功的肯定,我認(rèn)為是我們對(duì)待知識(shí)的尊重。參考網(wǎng)址:http://www.51hei.com/mcu/791.html
          實(shí)驗(yàn)結(jié)果:主機(jī)對(duì)從機(jī)發(fā)送控制命令,當(dāng)主機(jī)發(fā)送turn on 時(shí),從機(jī)如果接收正確,則向主機(jī)發(fā)送on用于應(yīng)答,并使LED燈亮(從機(jī)任選1LED燈來(lái)控制),當(dāng)主機(jī)發(fā)關(guān)turn off 時(shí),從機(jī)如果接收正確,則使LED 燈滅。如果不是這兩個(gè)命令,則從機(jī)向主機(jī)發(fā)送error作為應(yīng)答。


          關(guān)鍵詞: 單片機(jī) 雙機(jī)通訊

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