日韩欧美自拍在线观看-欧美精品在线看片一区二区-高清性视频一区二区播放-欧美日韩女优制服另类-国产精品久久久久久av蜜臀-成人在线黄色av网站-肥臀熟妇一区二区三区-亚洲视频在线播放老色-在线成人激情自拍视频

SI4432和STM32F103的高性能無線收發(fā)平臺設(shè)計

出處:互聯(lián)網(wǎng)    發(fā)布于:2011-09-04 10:31:35

  近些年來,隨著集成電路技術(shù)的發(fā)展,ISM頻段單芯片的無線數(shù)據(jù)通信IC的性能日益提高,短距離無線應(yīng)用領(lǐng)域也在不斷地擴大,其中包括消費電子、工業(yè)控制、安防、自動抄表等諸多領(lǐng)域。數(shù)據(jù)的無線收發(fā)在無線產(chǎn)品設(shè)計中占有很大的比重。為縮短產(chǎn)品設(shè)計周期以及提高產(chǎn)品的穩(wěn)定性,使產(chǎn)品設(shè)計工程師在設(shè)計過程中只需關(guān)注系統(tǒng)應(yīng)用的設(shè)計,而將數(shù)據(jù)收發(fā)交付一種成熟穩(wěn)定的收發(fā)系統(tǒng)來完成。

  1、STM32F103和SI4432芯片簡介

  STM32系列基于專為要求高性能、低成本、低功耗的嵌入式應(yīng)用專門設(shè)計的ARMCortex-M3內(nèi)核。按性能分成兩個不同的系列:STM32F103“增強型”系列和STM32F101“基本型”系列。增強型系列時鐘頻率達到72MHz,是同類產(chǎn)品中性能的產(chǎn)品;基本型時鐘頻率為36MHz,以16位產(chǎn)品的價格得到比16位產(chǎn)品大幅提升的性能,是16位產(chǎn)品用戶的選擇。兩個系列都內(nèi)置32K到128K的閃存,不同的是SRAM的容量和外設(shè)接口的組合。時鐘頻率72MHz時,從閃存執(zhí)行代碼,STM32功耗36mA,是32位市場上功耗的產(chǎn)品,相當于0.5mA/MHz。

  SI4432是Silicon Labs公司的ISM頻段收發(fā)一體芯片,輸出功率達到了+20 dBm(100 mW),具有“距離”的美譽。采用Silicon Labs EZRadioPRO系列ISM頻段無線芯片SI4432,在240-960 MHZ頻段下輸出功率可以達到+20DBm。整個網(wǎng)絡(luò)分為PC機、中繼器和節(jié)點三部分,此方案為無線工程師們使用SI4432芯片開發(fā)無線網(wǎng)絡(luò)控制系統(tǒng),提供了完整的硬件和軟件參考。

  2、硬件設(shè)計

  該平臺主要由微處理器ARM7 STM32F103和RF收發(fā)芯片SI4432組成。STM32通過SPI接口對SI4432進行初始化配置、數(shù)據(jù)收發(fā)控制等,而SI4432通過nIRQ腳將相應(yīng)的中斷發(fā)送至STM32。該平臺采用單天線進行數(shù)據(jù)的收發(fā),所以必須采用RF收發(fā)切換開關(guān)用于對SI4432的收發(fā)狀態(tài)進行切換,GPIO2控制RF切換開關(guān)為接收狀態(tài)[2]。系統(tǒng)硬件組成如圖1所示。

  為滿足用戶各種不同的設(shè)計需求,該平臺還提供串口、通用IO口和AD轉(zhuǎn)化接口。其中,AD轉(zhuǎn)化接口可以用于需要處理模擬信號的系統(tǒng),如有各種傳感器的環(huán)境監(jiān)控系統(tǒng)。

  3、軟件設(shè)計

  軟件編程采用模塊化設(shè)計思想,系統(tǒng)中各主要功能模塊均編成獨立的函數(shù)由主程序調(diào)用。功能模塊包括:初始化程序、無線發(fā)送程序和無線接收程序等。

  3.1、狀態(tài)轉(zhuǎn)化

  為了限度地降低功耗,軟件設(shè)計中采用SI4432的自動喚醒功能,在沒有數(shù)據(jù)收發(fā)時芯片處于空閑狀態(tài),定時一段時間后將狀態(tài)切換至發(fā)送或是接收,檢查是否有數(shù)據(jù)的收發(fā)。SI4432主要有四種狀態(tài):關(guān)閉、空閑、發(fā)送和接收,這些狀態(tài)在滿足一定的條件時可實現(xiàn)相互轉(zhuǎn)移,狀態(tài)轉(zhuǎn)移如圖2所示。在關(guān)閉狀態(tài)下功耗,空閑次之??臻e狀態(tài)有五種不同的模式,用戶可以根據(jù)不同的應(yīng)用靈活選擇。這些狀態(tài)或模式可以在操作模式和功能控制寄存器07H中設(shè)定,通過控制位可以從空閑狀態(tài)中的任一模式自動轉(zhuǎn)移到發(fā)送/接收狀態(tài)。不同模式/狀態(tài)下可以根據(jù)系統(tǒng)需要選擇的狀態(tài)和模式。

  3.2、無線發(fā)送程序流程

  無線發(fā)送程序負責寫入數(shù)據(jù)載荷,并根據(jù)通信協(xié)議為數(shù)據(jù)載荷加上前導(dǎo)碼、同步字、數(shù)據(jù)載荷長度等,形成數(shù)據(jù)包并將其發(fā)送出去,其流程如圖3所示。在完成 SPI和 SI4432 的初始化后,通過配置 SI4432 的寄存器3EH來設(shè)置包的長度,然后清除發(fā)送FIFO完成中斷使能后,使能發(fā)送功能,數(shù)據(jù)開始發(fā)送。當數(shù)據(jù)包發(fā)送完時,引腳nIRQ會被拉低產(chǎn)生一個低電平并通知STM32數(shù)據(jù)包已發(fā)送完畢,當nIRQ引腳變?yōu)榈蜁r讀取中斷狀態(tài)并拉高 nIRQ,否則繼續(xù)等待。數(shù)據(jù)發(fā)送成功后,關(guān)閉發(fā)送使能,進入下數(shù)據(jù)循環(huán)發(fā)送狀態(tài)。

  3.3、無線接收程序流程

  無線接收程序負責獲取有效載荷數(shù)據(jù)長度,并讀取接收FIFO中的有效數(shù)據(jù),其流程如圖4所示。在程序完成SPI和SI4432的初始化后,打開“有效包中斷”和“同步字檢測中斷”,將其他中斷都禁止,并使能接收功能。等待nIRQ引腳因中斷產(chǎn)生而被拉低,讀取中斷標志位拉高nIRQ引腳。若引腳 nIRQ 變成低電平,表示接收到有效數(shù)據(jù)包,并通過SPI訪問寄存器7 FH從接收 FIFO中讀取接收到的數(shù)據(jù),之后關(guān)閉接收使能,進入下數(shù)據(jù)接收狀態(tài)。

  4、高性能應(yīng)用設(shè)計

  在實際的產(chǎn)品應(yīng)用中,通常采用ACK握手信號、載波監(jiān)聽多路訪問/沖突防止(CSMA/CA)等機制來保證數(shù)據(jù)收發(fā)的高效、穩(wěn)定、可靠。而SI4432硬件不支持這些機制。增加本系統(tǒng)的高效適應(yīng)性,設(shè)計了以下高性能通信機制。

  4.1、基于ACK的雙向通信

  在無線數(shù)據(jù)傳輸過程中,為了確保發(fā)送過程的可靠性,發(fā)送端需要一應(yīng)答信號以確保發(fā)送數(shù)據(jù)已被準確無誤接收。本設(shè)計中,接收端也可以通過ACK數(shù)據(jù)包發(fā)送有效數(shù)據(jù)至發(fā)送端,大大提高了信道的使用率。應(yīng)答信號數(shù)據(jù)包格式如圖5所示。

  圖5中,ACK控制字節(jié)的數(shù)據(jù)格式如圖6所示。如果發(fā)送節(jié)點需要一反饋以判斷數(shù)據(jù)包是否到達目的地,則需要將應(yīng)答請求位(ACKRQ位)置1。發(fā)送完數(shù)據(jù)包以后,自動轉(zhuǎn)為接收狀態(tài),等待ACK狀態(tài)的到來并接收應(yīng)答信號數(shù)據(jù)包。如果接收節(jié)點接收到有效數(shù)據(jù)包且檢測到ACK控制字節(jié)中的ACKRQ位為1,則會自動產(chǎn)生應(yīng)答信號并且發(fā)送至發(fā)送節(jié)點。ACK控制字節(jié)中的應(yīng)答標志位(ACK位)被置1,并且有效數(shù)據(jù)為接收節(jié)點發(fā)給發(fā)送方的數(shù)據(jù)同時源地址和目的地址相互交換。具體通信過程如圖7所示。

  程序中,為了防止發(fā)送節(jié)點長時間地等待,設(shè)定只需等待固定的時間,等待的時間長短主要由實際的網(wǎng)絡(luò)參數(shù)決定:是否使能了包轉(zhuǎn)發(fā)、實際的數(shù)據(jù)速率等。若在規(guī)定的時間內(nèi),發(fā)送方未能接收到ACK數(shù)據(jù)包,則進入ACK接收錯誤狀態(tài);若成功接收將進入休眠、發(fā)送或是空閑狀態(tài)。

  使用ACK信號可以實現(xiàn)收發(fā)節(jié)點的雙向通信,能很好地解決手動切換無線收發(fā)狀態(tài)導(dǎo)致雙方互相等待的問題,同時只在需要ACK信號的應(yīng)用中才附帶應(yīng)答有效信息,減少不必要的通信過程,大大提高了系統(tǒng)的穩(wěn)定性和高效性。

  4.2、精簡的CSMA/CA發(fā)送機制

  在無線通信過程中,在一個通信域內(nèi)可能存在幾十個乃至幾百個無線終端同時工作。在這樣復(fù)雜的無線網(wǎng)絡(luò)中,無線數(shù)據(jù)發(fā)送頻繁,發(fā)生碰撞不可避免。當數(shù)據(jù)發(fā)送發(fā)生碰撞時,意味著有數(shù)據(jù)幀丟失。為了盡可能地避免由于發(fā)送數(shù)據(jù)時發(fā)生碰撞而導(dǎo)致數(shù)據(jù)幀的丟失,必須引入一種可以避免發(fā)送碰撞的機制。

  設(shè)計中參考了802.15.4中CSMA/CA的相關(guān)原理,采用非信標的方式實現(xiàn)符合系統(tǒng)要求的精簡的CSMA/CA發(fā)送機制[3]。非信標的方式即:結(jié)點若有數(shù)據(jù)要發(fā)送,需要先通過CSMA/CA機制進行信道監(jiān)測,也就是在等待一個隨機時間后,對當前信道進行監(jiān)聽,若監(jiān)測到信道空閑,就可以開始傳送數(shù)據(jù);若監(jiān)測到信道忙,則需要重新等待一個隨機時間,然后再繼續(xù)監(jiān)聽信道,具體實現(xiàn)流程如圖8[4-5]所示。步驟如下:

 ?、?、在開始發(fā)送數(shù)據(jù)之前先監(jiān)聽信道0.5 ms。如果在這段時間內(nèi)信道是空閑的(通過讀取寄存器26 H的接收信號強度(RSSI)值,則與設(shè)定的信道空閑閾值做比較來判斷,發(fā)送節(jié)點將隨機延時0或1個時隙(1時隙為1 ms)。如果信道仍然是空閑的就開始發(fā)送數(shù)據(jù);若信道變得忙碌,則跳到第㈢步驟。

 ?、?、如果在0.5 ms內(nèi)信道為忙,則發(fā)送節(jié)點每隔0.5 ms采樣RSSI值,直到RSSI值小于設(shè)定的門閾值或是采樣次數(shù)達到10次。如果采樣次數(shù)達到10次,則跳轉(zhuǎn)到步驟㈤。

  ㈢、若信道仍然為忙,則發(fā)送方將再等待一隨機時間,等待時間的大小是由下式確定:

  RandomTime = n×time[1:0]

  其中,n是0~15中的一個隨機數(shù),time[1:0]可以設(shè)定為固定的時間(0.25 ms、0.5 ms、1 ms、2 ms),可以根據(jù)應(yīng)用的需要選擇不同的值。

  ㈣、如果在這段時間內(nèi)信道是空閑的,則發(fā)送數(shù)據(jù);若忙碌則跳轉(zhuǎn)到步驟㈤。

 ?、椤⑷魢L試的次數(shù)超出限定值(MAX_TRY_NUMBER),則跳轉(zhuǎn)到步驟㈥。

 ?、辍⑷绻捎谛诺烂o法發(fā)出數(shù)據(jù),則發(fā)送節(jié)點將返回信道忙錯誤。

  為了驗證精簡CSMA/CA發(fā)送機制的性能,在空曠場地進行了多節(jié)點(1個接收4個發(fā)送節(jié)點)數(shù)據(jù)收發(fā)測試,發(fā)送5 000次,MAX_TRY_NUMBER=4,實驗結(jié)果如表1所示。

  由表1可以看出,當距離近、傳輸速率低時,兩種情況丟包率為0;當距離遠且傳輸速率高時,未使用CSMA/CA的丟包率隨著距離和速率的增加而大幅增加,而使用CSMA/CA的丟包率則很小,其性能可提高28倍。因此,使用精簡的CSMA/CA發(fā)送機制可以大大減少由于數(shù)據(jù)沖突而產(chǎn)生的丟包概率,從而提高了通信吞吐率。

  5、低功耗處理

  STM32和SI4432是模塊的耗電“大戶”,但它們都提供了低功耗運行功能。STM32支持三種省電模式:睡眠、停機和待機,并帶有自動喚醒功能。在本系統(tǒng)中STM32的常態(tài)為待機,在接收到任何中斷時,將從待機狀態(tài)切換到正常狀態(tài),在執(zhí)行完任務(wù)后,立即從正常狀態(tài)切換回待機狀態(tài)。而SI4432中集成了一個基于內(nèi)部32.768 kHz RC振蕩器的定時喚醒器,可以從睡眠模式定期喚醒芯片,而且SI4432內(nèi)部集成的功放(PA)的輸出功率是可編程的,工作電流與發(fā)射功率成正比,可根據(jù)RSSI的值來動態(tài)調(diào)整輸出功率的值,當RSSI的值大時可減小輸出功率;反之,則可增大輸出功率[2]。


  
關(guān)鍵詞:STM32無線

版權(quán)與免責聲明

凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場網(wǎng),轉(zhuǎn)載請必須注明維庫電子市場網(wǎng),http://www.hbjingang.com,違反者本網(wǎng)將追究相關(guān)法律責任。

本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點或證實其內(nèi)容的真實性,不承擔此類作品侵權(quán)行為的直接責任及連帶責任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉(zhuǎn)載時,必須保留本網(wǎng)注明的作品出處,并自負版權(quán)等法律責任。

如涉及作品內(nèi)容、版權(quán)等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。

廣告
OEM清單文件: OEM清單文件
*公司名:
*聯(lián)系人:
*手機號碼:
QQ:
有效期:

掃碼下載APP,
一鍵連接廣大的電子世界。

在線人工客服

買家服務(wù):
賣家服務(wù):
技術(shù)客服:

0571-85317607

網(wǎng)站技術(shù)支持

13606545031

客服在線時間周一至周五
9:00-17:30

關(guān)注官方微信號,
第一時間獲取資訊。

建議反饋

聯(lián)系人:

聯(lián)系方式:

按住滑塊,拖拽到最右邊
>>
感謝您向阿庫提出的寶貴意見,您的參與是維庫提升服務(wù)的動力!意見一經(jīng)采納,將有感恩紅包奉上哦!