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

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

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

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

[復(fù)制鏈接]

2607

主題

2607

帖子

7472

積分

高級(jí)會(huì)員

Rank: 5Rank: 5

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

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

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

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

發(fā)表回復(fù)

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

本版積分規(guī)則

關(guān)閉

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


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