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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于51單片機多機通信的交通燈控制網(wǎng)絡(luò)設(shè)計

          基于51單片機多機通信的交通燈控制網(wǎng)絡(luò)設(shè)計

          作者: 時間:2011-11-07 來源:網(wǎng)絡(luò) 收藏
          由于微機技術(shù)的飛速發(fā)展和控制系統(tǒng)的復(fù)雜化,的應(yīng)用越來越廣泛,特別在一些對工業(yè)過程的控制中,已經(jīng)成為通信控制領(lǐng)域的主流通信方式。
          本文針對目前書籍(包括教材)很少介紹的實現(xiàn)技術(shù)的情況,在交通燈控制系統(tǒng)的基礎(chǔ)上設(shè)計了一個交通燈系統(tǒng),以此為實例給出了多機通信的解決方案。

          1 多機通信的基本原理
          計算機之間的通信除了點對點通信外,還有一機對多機或多機之間的通信,構(gòu)成計算機網(wǎng)絡(luò),其中主從式多機通信是比較常用的一種方式。在主從式多機通信系統(tǒng)中,只有一臺主機,但可以有多臺從機。主機發(fā)送的信息可以傳送到各個從機或指定從機,從機發(fā)送的信息只能為主機所接收,各從機之間不能直接通信。主機通常由PC機擔(dān)任,也可用單片機擔(dān)當(dāng)(本文研究的是用單片機作主機),從機通常為單片機。 MCS-51單片機串行口的方式2和方式3具有多機通信功能,可實現(xiàn)一臺主機和若干臺從機構(gòu)成總線式的多機分布式系統(tǒng),其連接方式如圖1所示。

          a.JPG


          在多機通信中,可充分利用MCS-51單片機的多機通信控制位SM2。用作主機的單片機的SM2應(yīng)設(shè)定為0,作從機的SM2設(shè)定為1。主機發(fā)送并為從機接收的數(shù)據(jù)有兩類:一類是地址,用于指示需要和主機通信的從機的地址,由串行數(shù)據(jù)第9位為“1”標(biāo)志;另一類是數(shù)據(jù),由串行數(shù)據(jù)第9位為“0”標(biāo)志。由于所有從機的SM2=1,故每個從機總能在RI=0時收到主機發(fā)來的地址(因為串行數(shù)據(jù)第9位為“1”),并進入各自的中斷服務(wù)程序。在中斷服務(wù)程序中,每臺從機把接收到的從機地址和它的本機地址(系統(tǒng)設(shè)計時分配)進行比較。所有比較不相等的從機均從各自的中斷服務(wù)程序中退出(SM2仍為1),只有比較地址相等的從機才是被主機尋址通信的從機。被尋址從機在程序中使SM2=0,以便接收隨之而來的數(shù)據(jù)或命令(RB8=0)。上述過程進一步歸結(jié)如下:
          (1)主機的SM2=0,所有從機的SM2=1,都處于監(jiān)聽狀態(tài)(只能接收地址幀),以便接收主機發(fā)來的地址。
          (2)主機給從機發(fā)送一幀地址信息時,其中的8位是地址,第9位為1表示是地址幀。
          (3)所有從機在SM2=1、RB8=1且RI=0時,接收到主機發(fā)來的從機地址幀后,進行中斷處理,進入相應(yīng)的中斷服務(wù)程序,并和本機地址進行比較以確認(rèn)是否為被尋址從機。
          (4)被尋址的從機通過指令清除SM2,使SM2=0進入接收數(shù)據(jù)狀態(tài),可以接收主機隨后發(fā)送的數(shù)據(jù)(包括命令),并向主機發(fā)回接收到的從機地址作為響應(yīng)信號,供主機核對,實現(xiàn)主機與被尋址從機的雙機通信;未被尋址從機保持SM2=1,并退出中斷服務(wù)程序。
          (5)完成主機和被尋址從機之間的數(shù)據(jù)通信,被尋址從機在通信完成后重新使SM2=1,并退出中斷服務(wù)程序,恢復(fù)到監(jiān)聽狀態(tài),等待下次通信。

          2 交通燈硬件電路設(shè)計
          2.1 硬件電路
          城市交通控制系統(tǒng)是一個聯(lián)動的系統(tǒng),所有路口的交通燈控制系統(tǒng)由一臺中心主機控制,當(dāng)某一路口將出現(xiàn)緊急情況時(如交通管制、交通堵塞、路段維修等),單擊中心主機的對應(yīng)按鈕即可使該路口的所有紅燈亮,禁止所有普通車輛通行。本文利用Proteus軟件仿真設(shè)計了
          一臺主機控制兩臺從機的主從式多機系統(tǒng),實施時可以擴展到253臺主機,硬件電路如圖2所示。單片機U1為主機,U2、U3為從機,代表兩個路口的控制機,S1、S2為按鈕,分別與U1的P1.1、P1.0連接,當(dāng)按下時分別控制兩個路口的交通信號燈為所有紅燈亮,表示該路口出現(xiàn)緊急情況。與主機U1相連的兩個BCD數(shù)碼管用于顯示從機接收到的響應(yīng)幀,即出現(xiàn)緊急情況的路口地址號,如果接收到的響應(yīng)幀傳送出現(xiàn)錯誤,與主機發(fā)出的地址號不同時,這兩個數(shù)碼管顯示FF,當(dāng)S1和S2沒有按下時,這兩個數(shù)碼管也顯示FF。

          b.JPG


          由于串行口通信時傳輸?shù)摹?”或者“1”是通過相對于“地”的電壓區(qū)分的,因此使用串行口通信時,必須將主、從機的“地”線相連以使其具有相同的電壓參考點。


          上一頁 1 2 3 下一頁

          評論


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