久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

專注電子技術(shù)學(xué)習(xí)與研究
當(dāng)前位置:單片機(jī)教程網(wǎng) >> MCU設(shè)計(jì)實(shí)例 >> 瀏覽文章

實(shí)驗(yàn)三 單片機(jī)雙機(jī)通訊試驗(yàn)

作者:佚名   來源:本站原創(chuàng)   點(diǎn)擊數(shù):  更新時間:2010年06月24日   【字體:

實(shí)驗(yàn)時間:2010.05.18

實(shí)驗(yàn)名稱:雙機(jī)通訊
 
實(shí)驗(yàn)?zāi)康模?/b>熟悉單片機(jī)串行口工作原理;掌握通信程序設(shè)計(jì)的一般方法
 
實(shí)驗(yàn)要求:按照實(shí)驗(yàn)安排準(zhǔn)時參加實(shí)驗(yàn),按照實(shí)驗(yàn)步驟操作,仔細(xì)觀察及記錄實(shí)驗(yàn)過程及結(jié)果,回答實(shí)驗(yàn)相關(guān)問題,最終根據(jù)實(shí)驗(yàn)結(jié)果撰寫實(shí)驗(yàn)指導(dǎo)書。
 
實(shí)驗(yàn)內(nèi)容:編寫一個雙機(jī)通信程序,一個作為主機(jī),一個作為從機(jī),主機(jī)對從機(jī)發(fā)送控制命令,當(dāng)主機(jī)發(fā)送turn on 時,從機(jī)如果接收正確,則向主機(jī)發(fā)送on用于應(yīng)答,并使LED燈亮(從機(jī)任選1LED燈來控制),當(dāng)主機(jī)發(fā)關(guān)turn off 時,從機(jī)如果接收正確,則使LED 燈滅。如果不是這兩個命令,則從機(jī)向主機(jī)發(fā)送error作為應(yīng)答。
 
實(shí)驗(yàn)步驟:
1、連接兩臺單片機(jī)開發(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ù)存儲到變量rd
           if(rd==TurnOn)//是亮燈命令
           {
               P0=255;//LED亮
               SBUF=On;//應(yīng)答On
               while(TI==0);TI=0; //等待發(fā)送完畢
              }
           else if(rd==TurnOff)//是關(guān)燈命令
              {
               P0=0;//LED滅
               SBUF=Off;//應(yīng)答Off
               while(TI==0);TI=0; //等待發(fā)送完畢
               }
          else 
            {
               SBUF=Error;//應(yīng)答Off
               while(TI==0);TI=0; //等待發(fā)送完畢
            }
           
    
         
     
     RI=0;
    }
void InitEs()//串口初始化函數(shù)
{
   TMOD=0x21;   
   TH1=0xF3;//波速率設(shè)置為2400
   
   TR1=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)識了一個網(wǎng)名為蘇工的網(wǎng)友,我不知道他真名,但是人很好,我把問題咨詢過他了。雖然對單片機(jī)用c程序編程,我很生疏,因?yàn)橐酝业牟锁B級編程都是匯編語言,但是,他給我解釋C程序很詳細(xì),我略有小知,很感謝蘇工,所以在這個實(shí)驗(yàn)報告引用了他的腦力勞動成果,并且在這里謝謝蘇工對我的指教。同樣感謝單片機(jī)鮮浩老師,對我單片機(jī)課程細(xì)致的傳授,使我產(chǎn)生濃厚興趣的同時真真切切的感受到學(xué)習(xí)單片機(jī)的快樂和運(yùn)用智慧操縱機(jī)器的興奮。不知道以往實(shí)驗(yàn)報告的學(xué)生有沒有我這一則小敘,但是對別人勞動成功的肯定,我認(rèn)為是我們對待知識的尊重。參考網(wǎng)址:http://www.zg4o1577.cn/mcu/791.html 
 
實(shí)驗(yàn)結(jié)果:主機(jī)對從機(jī)發(fā)送控制命令,當(dāng)主機(jī)發(fā)送turn on 時,從機(jī)如果接收正確,則向主機(jī)發(fā)送on用于應(yīng)答,并使LED燈亮(從機(jī)任選1LED燈來控制),當(dāng)主機(jī)發(fā)關(guān)turn off 時,從機(jī)如果接收正確,則使LED 燈滅。如果不是這兩個命令,則從機(jī)向主機(jī)發(fā)送error作為應(yīng)答。

相關(guān)文章

主站蜘蛛池模板: 国产精品免费一区二区 | 亚洲视频欧美视频 | 久久福利 | 精品91 | 一区二区三区亚洲 | 久久久夜| 国产视频在线观看一区二区三区 | 亚洲精品第一页 | 国产在线精品一区二区 | 亚洲日韩中文字幕一区 | 国产一区中文字幕 | 久久只有精品 | 第一av| a级网站| av先锋资源 | 91av在线免费播放 | 国产高清精品一区二区三区 | 综合久久久久 | 三级黄色片在线播放 | 久久久久久久久91 | 欧美精品欧美精品系列 | 欧美激情精品久久久久久变态 | 国产yw851.c免费观看网站 | 浴室洗澡偷拍一区二区 | aaa综合国产| 色噜噜亚洲男人的天堂 | 日本久久视频 | 9191av| 欧美日韩一区二区在线播放 | 国产一区二区三区在线观看免费 | 日韩二三区 | 精品国产乱码久久久久久图片 | 91av免费版 | 欧美精品一区二区三区在线播放 | 亚洲成人免费观看 | www.成人在线视频 | 精品欧美一区二区精品久久久 | 国产精品久久久久久久久久免费 | 狠狠综合久久av一区二区小说 | 国产精品精品视频一区二区三区 | 精品国偷自产在线 |