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

          新聞中心

          EEPW首頁 > 手機與無線通信 > 設(shè)計應(yīng)用 > 基于嵌入式系統(tǒng)的網(wǎng)絡(luò)環(huán)境模擬器的設(shè)計(06-100)

          基于嵌入式系統(tǒng)的網(wǎng)絡(luò)環(huán)境模擬器的設(shè)計(06-100)

          ——
          作者:西安電子科技大學(xué)ISN國家重點實驗室 曲紳維 張茜 陳彥輝 時間:2008-04-03 來源:電子產(chǎn)品世界 收藏

            鍵盤控制模塊

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

            鍵盤控制模塊與AT91RM9200的IO口相連,AT91RM9200利用查詢方式,監(jiān)測相應(yīng)IO引腳有無電平變化,然后進行相應(yīng)的處理。鍵盤控制模塊可以控制節(jié)點移動,并且可以選擇節(jié)點的移動速度。同時也可以預(yù)設(shè)幾種網(wǎng)絡(luò)拓撲結(jié)構(gòu),利用鍵盤直接選擇一種拓撲結(jié)構(gòu),節(jié)點能按照選擇的移動速度,移動到相應(yīng)的位置。

            系統(tǒng)的軟件實現(xiàn)

            的軟件分兩個模塊,一個模塊用來實現(xiàn)網(wǎng)絡(luò)環(huán)境的模擬,另一個模塊用來實現(xiàn)相關(guān)信息在LCD上的顯示。對于網(wǎng)絡(luò)中的每個節(jié)點,都有一個端口與其對應(yīng),在程序中每個的端口都有一個結(jié)構(gòu)體與其對應(yīng)。

            網(wǎng)絡(luò)環(huán)境的模擬

            在網(wǎng)絡(luò)環(huán)境模擬器中,網(wǎng)絡(luò)環(huán)境的模擬主要有:物理層無線傳輸、網(wǎng)絡(luò)拓撲變化、提供同步信號等方面。

            模擬無線信道傳輸

            模擬物理層傳輸主要有三方面,一、網(wǎng)絡(luò)節(jié)點發(fā)送數(shù)據(jù),其它節(jié)點當滿足接收條件時應(yīng)該能收到數(shù)據(jù);二、要模擬節(jié)點數(shù)據(jù)傳輸速率;三、模擬節(jié)點間傳輸路徑上誤碼。

            在真實的網(wǎng)絡(luò)環(huán)境中,一個網(wǎng)絡(luò)中的節(jié)點能夠接收到另一個節(jié)點的數(shù)據(jù),需要滿足的條件有:一個節(jié)點是發(fā)狀態(tài),另一個是收狀態(tài),并且兩個節(jié)點處在同一個信道上,而且接收方應(yīng)該處在發(fā)射方的功率覆蓋范圍之內(nèi)。在網(wǎng)絡(luò)環(huán)境模擬器中的模擬是這樣做的,網(wǎng)絡(luò)環(huán)境模擬器和網(wǎng)絡(luò)中節(jié)點的數(shù)據(jù)交互有兩種類型:控制信息和數(shù)據(jù)信息。網(wǎng)絡(luò)節(jié)點利用控制信息給網(wǎng)絡(luò)環(huán)境模擬器對應(yīng)的端口設(shè)置相應(yīng)的狀態(tài),數(shù)據(jù)信息是網(wǎng)絡(luò)節(jié)點與其它節(jié)點之間收發(fā)的數(shù)據(jù)。網(wǎng)絡(luò)環(huán)境模擬器依靠串口的RTS和 CTS的引腳電平來判斷是哪種類型的信息,利用串口的TX和RX來收發(fā)信息實體。在每次處理過程中,網(wǎng)絡(luò)環(huán)境模擬器可以根據(jù)先前每個網(wǎng)絡(luò)節(jié)點發(fā)來的的相關(guān)信息,把從每個網(wǎng)絡(luò)節(jié)點接收的數(shù)據(jù)發(fā)送給滿足接收條件的其它網(wǎng)絡(luò)節(jié)點。

            在網(wǎng)絡(luò)環(huán)境模擬器中,我們利用AT91RM9200的定時器中斷來模擬節(jié)點間的數(shù)據(jù)傳輸速率。每次中斷處理完后向每個端口發(fā)送一個字節(jié)數(shù)據(jù)。假設(shè)我們要模擬短波信道的2.4Kbps—4.8Kbps信道速率,利用AT91RM9200的定時器中斷,每隔1/300秒或1/150秒產(chǎn)生一次中斷,在中斷里我們通過TL16C554A讀出各個網(wǎng)絡(luò)節(jié)點的串口數(shù)據(jù),這個過程相當于網(wǎng)絡(luò)節(jié)點發(fā)送數(shù)據(jù),并進行相應(yīng)的處理,得出網(wǎng)絡(luò)中哪些節(jié)點可以收到,然后再通過TL16C554A向?qū)?yīng)的各個網(wǎng)絡(luò)節(jié)點的串口發(fā)送數(shù)據(jù),這個過程相當于網(wǎng)絡(luò)節(jié)點接收數(shù)據(jù)。這樣相當于網(wǎng)絡(luò)節(jié)點每隔1/300秒或1/150秒收發(fā)一個字節(jié)數(shù)據(jù),即傳輸速率為2.4Kbps~4.8Kbps。

            在任意傳輸路徑上可以加誤碼,且誤碼率可以控制,通過對從每個端口讀回的數(shù)據(jù)取反,便實現(xiàn)了誤碼的要求,只要周期性的控制誤碼開關(guān),就可以使傳輸路徑上的數(shù)據(jù)的得到不同的誤碼。

            同步信號的提供

            網(wǎng)絡(luò)模擬器能夠為每個網(wǎng)絡(luò)節(jié)點發(fā)送同步信號,為MAC層協(xié)議的調(diào)試提供支持,例如TDMA、跳頻等。節(jié)點可以用每次網(wǎng)絡(luò)環(huán)境模擬器發(fā)來的數(shù)據(jù)作為時間基準,這樣全網(wǎng)的節(jié)點時間基準就是一樣的了。同時網(wǎng)絡(luò)環(huán)境模擬器可以在特定時間,給每個節(jié)點發(fā)送一個時間同步信號,實現(xiàn)同步,為TDMA協(xié)議的調(diào)試帶來了很大的便利。

            LCD信息顯示

            LCD上可以顯示相關(guān)信息,先實現(xiàn)畫點、畫線、畫矩形等基本繪圖函數(shù),我們要顯示相應(yīng)的圖形可以用這些基本繪圖單元組合起來。在網(wǎng)絡(luò)環(huán)境模擬器的中斷處理過程中設(shè)置相應(yīng)的狀態(tài),例如,收發(fā)狀態(tài)、碰撞狀態(tài)和節(jié)點位置坐標,然后更新顯示狀態(tài)隊列,在主程序中執(zhí)行顯示程序,只要按照顯示狀態(tài)隊列中的信息畫圖就可以了。

            結(jié)語

            研制的具有16個端口的網(wǎng)絡(luò)環(huán)境模擬器,可以實現(xiàn)數(shù)據(jù)終端之間的任意連通關(guān)系,支持信道數(shù)據(jù)傳輸速率可變及傳輸路徑上加不同的誤碼。通過網(wǎng)絡(luò)環(huán)境模擬器,模擬網(wǎng)絡(luò)拓撲結(jié)構(gòu)的動態(tài)變化,可以在LCD上清楚地觀察節(jié)點之間數(shù)據(jù)收發(fā)歷程及節(jié)點是否碰撞的信息。

            網(wǎng)絡(luò)環(huán)境模擬器為研究分組無線網(wǎng)的自組織自適應(yīng)功能、驗證網(wǎng)絡(luò)協(xié)議提供了一個良好的平臺,基于該網(wǎng)絡(luò)環(huán)境模擬器已經(jīng)實現(xiàn)了TDMA協(xié)議及AODV路由協(xié)議的開發(fā),驗證了方案的正確性。

          linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

          上一頁 1 2 3 4 5 下一頁

          評論


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