電子產(chǎn)業(yè)一站式賦能平臺

PCB聯(lián)盟網(wǎng)

搜索
查看: 3079|回復: 0
收起左側(cè)

stm嵌入式開發(fā)教程_無線通信在嵌入式系統(tǒng)中的應用

[復制鏈接]

2607

主題

2607

帖子

7472

積分

高級會員

Rank: 5Rank: 5

積分
7472
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2020-8-20 17:32:46 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
stm嵌入式開發(fā)教程_無線通信在嵌入式系統(tǒng)中的應用,嵌入式視頻誰講得好, 嵌入式視頻誰教的好, 嵌入式視頻算法, 嵌入式視頻通話, 嵌入式視頻圖像邊緣檢測算法, 嵌入式視頻推薦, 嵌入式視頻推流, 嵌入式視頻網(wǎng)盤, 嵌入式視頻網(wǎng)站, 嵌入式視頻微盤下載, 嵌入式視頻文件解碼, 嵌入式視頻下載, 嵌入式視頻下載+百度網(wǎng)盤, 嵌入式視頻下載百度云, 嵌入式視頻下載鏈接, 嵌入式視頻小車, 嵌入式視頻小車北京, 嵌入式視頻協(xié)議, 嵌入式視頻需要優(yōu)化嗎, 嵌入式視頻壓縮, 嵌入式視頻壓縮算法, 嵌入式視頻壓縮在國外的發(fā)展, 嵌入式視頻硬件接口, 嵌入式視頻怎么編輯,   

微計算機信息   摘 要:本文介紹了無線數(shù)傳模塊在嵌入式系統(tǒng)中的應用,嵌入式處理器與無線模塊的硬件接口設計,無線模塊的驅(qū)動程序的編寫,預約式點對多點無線通信的傳輸協(xié)議的制定以及實現(xiàn)。為無線通信在嵌入式系統(tǒng)中的應用提供了有效的方案。
  關鍵詞:無線通信;嵌入式系統(tǒng);協(xié)議1 引言
在傳統(tǒng)的遠程監(jiān)測系統(tǒng)中大多采用pc機作為上位機,通過rs485串行通信作為傳輸手段,因此系統(tǒng)有諸如工作不夠穩(wěn)定、連線繁多、擴展性差等缺點。
  本項目當中采用32位嵌入式芯片組成的系統(tǒng)作為上位機,其體積小、功耗小而且工作穩(wěn)定;上位機與下位機之間的傳輸采用無線傳輸方式,且上位機對下位機可配置,從而使得系統(tǒng)具有很強的擴展性。這套系統(tǒng)具有更優(yōu)的性能,可以作為現(xiàn)有系統(tǒng)的升級產(chǎn)品。2 硬件結(jié)構
  上位機嵌入式系統(tǒng)采用在工控領域有傳統(tǒng)優(yōu)勢的摩托羅拉芯片(coldfire5249)為核心,配備4mbyte閃存和16mbyte內(nèi)存的系統(tǒng),此系統(tǒng)外擴有網(wǎng)絡接口可通過局域網(wǎng)為客戶機提供數(shù)據(jù)服務。通過無線模塊與下位機進行數(shù)據(jù)交換,獲取遠程數(shù)據(jù),下達客戶機對遠程對象的控制命令。  下位機采用基于8051的單片機系統(tǒng),他的主要功能是采集現(xiàn)場的數(shù)據(jù)以備上位機查詢,執(zhí)行上位機轉(zhuǎn)發(fā)來的用戶指令。其中溫度傳感器采用ds18b20。
  無線通信模塊采用ptr2000,ptr2000是收發(fā)一體的工作在國際通用數(shù)傳頻段433mhz的無線通信模塊。他最高傳輸速率可以達到20kbit/s,功耗低,待機狀態(tài)下僅為8ua,可以直接與cpu的串口連接使用。ptr2000的引腳定義如表1。  ptr2000的硬件連接非常簡單,由3個通用i/o口分別控制txe,pwr,cs。di, do與cpu的串口連接。txe為1時,為發(fā)送狀態(tài),txe為0時,為接收狀態(tài)。狀態(tài)轉(zhuǎn)換需要5毫秒。pwr為0時,為節(jié)電待機狀態(tài),此時模塊無法進行接收或者發(fā)送。3 線通信協(xié)議及其軟件結(jié)構
3.1 通信協(xié)議研究
  在本系統(tǒng)中,網(wǎng)關(嵌入式系統(tǒng))與下位機(單片機系統(tǒng))之間采用無線通信方式。無線通信由于其無需布線、便于安裝、檢修升級容易、管理簡單、靈活性強等諸多優(yōu)點已經(jīng)得到廣泛應用,但是無線傳輸在傳輸過程中難以避免的會產(chǎn)生誤碼,而且產(chǎn)生誤碼的幾率要遠遠大于有線網(wǎng)絡,并且誤碼的產(chǎn)生與多方面的因素有關,因此有很大的不確定性。所以我們必須采用一種差錯控制機制,但是我們不需要也很難實現(xiàn)太過于復雜的方法,我們可以采用停止等待協(xié)議來實現(xiàn)差錯控制。此外,我們必須采用校驗機制以確定何時需要重傳,crc校驗碼的檢錯能力很強,它除了能檢查出離散錯外,還能檢查出突發(fā)錯?紤]到硬件和傳輸?shù)拈_銷問題,使用crc16校驗碼。
本系統(tǒng)當中我們所采用的無線數(shù)傳模塊是ptr2000,ptr2000靈敏性很高,因此在無載波的情況下在接收端會產(chǎn)生隨機的數(shù)據(jù),在通信協(xié)議中必須在有效數(shù)據(jù)前加上兩個或多個固定的前導字符作為同步信號,使得接收端能夠辨別出有效數(shù)據(jù)的開始。

  本系統(tǒng)中所采用的是一點對多點的無線通信模式,因此必須選擇一種多址方式來實現(xiàn)點對多點通信,常用多址方式有時分多址(tdma)、頻分多址(fdma)、碼分多址(cdma)等,其中fdma為每一路通信提供一個不同的頻段,易于實現(xiàn),但是需要比較大的頻段資源,而且抗干擾能力差。cdma是采用不同的編碼來區(qū)分不同的信道,抗干擾能力強,但是傳輸開銷非常大,而且實現(xiàn)也比較復雜。tdma在同一時間內(nèi)只有一個信道可以通信,抗干擾能力較強,傳輸開銷較小,而且實現(xiàn)比較容易,雖然實時性較差,但是由于溫度的物理特性,此系統(tǒng)的實時性要求不高,所以可以采用時分多址(tdma)來實現(xiàn)。
3.2 通信協(xié)議制定  其中前導字符可采用0xaa、0xaa、0xff、0x00共4字節(jié),其中前兩個字節(jié)為同步信號,后兩個字節(jié)為幀開始標志,接收端只要能夠接收到0xaa、0xaa、0xff、0x00就可以認為新的一幀開始了;幀類型(4位)分為數(shù)據(jù)幀、有序數(shù)據(jù)幀、控制命令幀、確認幀等多種幀類型;幀編號(4位)為可選項與幀類型相關,只有幀類型是有序數(shù)據(jù)幀時才有效;地址(1字節(jié))標明數(shù)據(jù)幀的目的地址;有效數(shù)據(jù)長度不定;校驗為2字節(jié)crc16校驗碼;結(jié)束標志為0x00。
  由于linux串行通信中有許多ascii碼是作為控制字符來使用,因此,對以上幀當中除了前導字符和結(jié)束標志外的數(shù)據(jù)進行base64編碼。

3.3 通信協(xié)議的實現(xiàn)
嵌入式系統(tǒng)端軟件結(jié)構
  首先,在嵌入式操作系統(tǒng)中,由于通常只能在內(nèi)核態(tài)才能對硬件進行訪問,所以軟件必須通過驅(qū)動程序來操作硬件,在這里ptr2000可以看作一個串口設備來使用,但是,ptr2000是一個半雙工的通信模塊,發(fā)送接收狀態(tài)由txe來控制,因此,要對默認的串口驅(qū)動程序進行一些修改,在串口驅(qū)動程序中的write函數(shù)完成發(fā)送功能,我們需要在其中加入一個通用對i
回復

使用道具 舉報

發(fā)表回復

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

關閉

站長推薦上一條 /1 下一條


聯(lián)系客服 關注微信 下載APP 返回頂部 返回列表