《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > 基于SI4432的高性能無線收發應用平臺設計
基于SI4432的高性能無線收發應用平臺設計
來源:電子技術應用2010年第12期
張 玲, 劉九維, 何 偉
重慶大學 通信工程學院, 重慶 400030
摘要: 針對無線產品設計中的產品可靠性、功耗、有效距離和成本問題,設計了一款基于SI4432和STM32F103的高性能無線收發應用平臺。設計中實現了ACK雙向通信、精簡CSMA/CA發送機制,增強了系統的可靠性,減少了由于數據沖突造成的數據丟失現象,可滿足不同的應用需求。實驗表明,該平臺簡化了無線產品的設計,可應用于安防、無線抄表、無線傳感器網絡等系統。
中圖分類號: TN92
文獻標識碼: A
文章編號: 0258-7998(2010)12-0124-04
Design of high-performance wireless transceiver application platform based on SI4432
ZHANG Ling, LIU Jiu Wei, HE Wei
College of Communication Engineering, Chongqing University, Chongqing 400030, China
Abstract: Against the reliability, power consumption, valid transmit range and costs which are greatly concerned in the design of wireless products, in this paper a high-performance wireless transceiver application platform based on STM32F103 and SI4432 is designed and SI4432. In order to meet the needs of different applications, designed the ACK bidirectional communication and the streamlined sending mechanisms based on CSMA/CA, which increased the stability of the system and reduced the data loss caused by data conflict. Experiments show that the platform can simplify the design of wireless products, so it can be widely used in home security,wireless meter reading, sensor networks and other systems.
Key words : STM32F103; SI4432; ACK bidirectional communication; CSMA/CA

    近些年來,隨著集成電路技術的發展,ISM頻段單芯片的無線數據通信IC的性能日益提高,短距離無線應用領域也在不斷地擴大,其中包括消費電子、工業控制、安防、自動抄表等諸多領域。數據的無線收發在無線產品設計中占有很大的比重。為縮短產品設計周期以及提高產品的穩定性,使產品設計工程師在設計過程中只需關注系統應用的設計,而將數據收發交付一種成熟穩定的收發系統來完成。為此,本文設計了一種基于SI4432+STM32F103的高性能無線收發平臺。
1 STM32F103和SI4432芯片簡介
 STM32系列是采用ARM CortexTM-M3 內核的閃存微控制器,所有功能都具有業界最優的功耗水平。在結合了高性能(最高72 MHz頻率)、低功耗(睡眠、停機和待機模式)和低電壓(可2.0 V~3.6 V供電)特性[1]的同時保持了高度的集成性能和簡易的開發特性,為用戶提供最大程度的靈活性。
    SI4432是Silicon Labs公司的ISM頻段收發一體芯片,最大輸出功率達到了+20 dBm(100 mW),具有&ldquo;距離之王&rdquo;的美譽(空曠距離可達2 000 m)。SI4432具有特有的連續頻率覆蓋范圍(240 MHz~960 MHz)、寬工作電壓(+1.8 V~+3.6 V)、高靈敏度(在BER<0.1%, 數據速率2.0 kb/s時為-118 dBm)等特點,還集成了一些可節省應用成本的特性,如喚醒定時器、溫度傳感器、發射和接收數據FIFO、高性能ADC[2],這些特性可大幅簡化系統設計師的工作,并允許使用低端的微控制器。高集成度使得外圍僅需一個30 MHz的晶體和幾個用于匹配/濾波的無源器,因此非常適用于對尺寸和成本敏感的大批量生產中的應用。
2 硬件設計
    該平臺主要由微處理器ARM7 STM32F103(以下簡稱STM32)和RF收發芯片SI4432組成。STM32通過SPI接口對SI4432進行初始化配置、數據收發控制等,而SI4432通過nIRQ腳將相應的中斷發送至STM32。該平臺采用單天線進行數據的收發,所以必須采用RF收發切換開關用于對SI4432的收發狀態進行切換, 其中GPIO1控制RF切換開關為發送狀態,GPIO2控制RF切換開關為接收狀態[2]。系統硬件組成如圖1所示。

    為滿足用戶各種不同的設計需求,該平臺還提供串口、通用IO口和AD轉化接口。其中,AD轉化接口可以用于需要處理模擬信號的系統,如有各種傳感器的環境監控系統。
3 軟件設計
    軟件編程采用模塊化設計思想,系統中各主要功能模塊均編成獨立的函數由主程序調用。功能模塊包括:初始化程序(初始化SPI、 SI4432)、無線發送程序和無線接收程序等。
3.1狀態轉化
    為了最大限度地降低功耗,軟件設計中采用SI4432的自動喚醒功能,在沒有數據收發時芯片處于空閑狀態,定時一段時間后將狀態切換至發送或是接收,檢查是否有數據的收發。SI4432主要有四種狀態:關閉、空閑、發送和接收,這些狀態在滿足一定的條件時可實現相互轉移,狀態轉移如圖2所示。在關閉狀態下功耗最低,空閑次之。空閑狀態有五種不同的模式,用戶可以根據不同的應用靈活選擇。這些狀態或模式可以在操作模式和功能控制寄存器07H中設定,通過在寄存器07H中設定txon/rxon控制位可以從空閑狀態中的任一模式自動轉移到發送/接收狀態。不同模式/狀態下轉換需要的時間和功耗都不相同,可以根據系統需要選擇最佳的狀態和模式。

3.2 無線發送程序流程
    無線發送程序負責寫入數據載荷,并根據通信協議為數據載荷加上前導碼、同步字、數據載荷長度等,形成數據包并將其發送出去,其流程如圖3所示。在完成 SPI和 SI4432 的初始化后,通過配置 SI4432 的寄存器3EH來設置包的長度,然后清除發送FIFO,并通過SPI連續寫寄存器7FH將待發送數據寫入發送 FIFO(字節數小于64 B),最后打開&ldquo;發送完中斷允許&rdquo;標志,將其他中斷都禁止。完成中斷使能后,使能發送功能,數據開始發送。當數據包發送完時,引腳nIRQ會被拉低產生一個低電平并通知STM32數據包已發送完畢,當nIRQ引腳變為低時讀取中斷狀態并拉高 nIRQ,否則繼續等待。一次數據發送成功后,關閉發送使能,進入下一次數據循環發送狀態。


3.3 無線接收程序流程
    無線接收程序負責獲取有效載荷數據長度,并讀取接收FIFO中的有效數據,其流程如圖4所示。在程序完成SPI和SI4432的初始化后,打開&ldquo;有效包中斷&rdquo;和&ldquo;同步字檢測中斷&rdquo;,將其他中斷都禁止,并使能接收功能。等待nIRQ引腳因中斷產生而被拉低,讀取中斷標志位拉高nIRQ引腳。若引腳 nIRQ 變成低電平,表示接收到有效數據包,通過寄存器4 BH讀取包長度信息,并通過SPI訪問寄存器7 FH從接收 FIFO中讀取接收到的數據,之后關閉接收使能,進入下一次數據接收狀態。

4 高性能應用設計
    在實際的產品應用中,通常采用ACK握手信號、載波監聽多路訪問/沖突防止(CSMA/CA)等機制來保證數據收發的高效、穩定、可靠。而SI4432硬件不支持這些機制。為了增加本系統的高效適應性,設計了以下高性能通信機制。
4.1 基于ACK的雙向通信
    在無線數據傳輸過程中,為了確保發送過程的可靠性,發送端需要一應答信號以確保發送數據已被準確無誤接收。本設計中,接收端也可以通過ACK數據包發送有效數據至發送端,大大提高了信道的使用率。應答信號數據包格式如圖5所示。

    圖5中,ACK控制字節的數據格式如圖6所示。如果發送節點需要一反饋以判斷數據包是否到達目的地,則需要將應答請求位(ACKRQ位)置1。發送完數據包以后,自動轉為接收狀態,等待ACK狀態的到來并接收應答信號數據包。如果接收節點接收到有效數據包且檢測到ACK控制字節中的ACKRQ位為1,則會自動產生應答信號并且發送至發送節點。應答信息數據包中,ACK控制字節中的應答標志位(ACK位)被置1,并且有效數據為接收節點發給發送方的數據(當不需要發送有用數據時,全部用0x00填充),同時源地址和目的地址相互交換。具體通信過程如圖7所示。

    程序中,為了防止發送節點長時間地等待,設定只需等待固定的時間,等待的時間長短主要由實際的網絡參數決定:是否使能了包轉發、實際的數據速率等。若在規定的時間內,發送方未能接收到ACK數據包,則進入ACK接收錯誤狀態;若成功接收將進入休眠、發送或是空閑狀態。
 使用ACK信號可以實現收發節點的雙向通信,能很好地解決手動切換無線收發狀態導致雙方互相等待的問題,同時只在需要ACK信號的應用中才附帶應答有效信息,減少不必要的通信過程,大大提高了系統的穩定性和高效性。
4.2 精簡的CSMA/CA發送機制
 在無線通信過程中,在一個通信域內可能存在幾十個乃至幾百個無線終端同時工作。在這樣復雜的無線網絡中,無線數據發送頻繁,發生碰撞不可避免。當數據發送發生碰撞時,意味著有數據幀丟失。為了盡可能地避免由于發送數據時發生碰撞而導致數據幀的丟失,必須引入一種可以避免發送碰撞的機制。
  設計中參考了802.15.4中CSMA/CA的相關原理,采用非信標的方式實現符合系統要求的精簡的CSMA/CA發送機制[3]。非信標的方式即:結點若有數據要發送,需要先通過CSMA/CA機制進行信道監測,也就是在等待一個隨機時間后,對當前信道進行監聽,若監測到信道空閑,就可以開始傳送數據;若監測到信道忙,則需要重新等待一個隨機時間,然后再繼續監聽信道,具體實現流程如圖8[4-5]所示。步驟如下:
  (1)在開始發送數據之前先監聽信道0.5 ms。如果在這段時間內信道是空閑的(通過讀取寄存器26 H的接收信號強度(RSSI)值,則與設定的信道空閑閾值做比較來判斷,發送節點將隨機延時0或1個時隙(1時隙為1 ms)。如果信道仍然是空閑的就開始發送數據;若信道變得忙碌,則跳到第(3)步驟。
  (2)如果在0.5 ms內信道為忙,則發送節點每隔0.5 ms采樣一次RSSI值,直到RSSI值小于設定的門閾值或是采樣次數達到10次。如果采樣次數達到10次,則跳轉到步驟(5)。
  (3)若信道仍然為忙,則發送方將再等待一隨機時間,等待時間的大小是由下式確定:
    RandomTime = n&times;time[1:0]
其中,n是0~15中的一個隨機數,time[1:0]可以設定為固定的時間(0.25 ms、0.5 ms、1 ms、2 ms),可以根據應用的需要選擇不同的值。
  (4)如果在這段時間內信道是空閑的,則發送數據;若忙碌則跳轉到步驟(5)。
    (5)若嘗試的次數超出限定值(MAX_TRY_NUMBER),則跳轉到步驟(6)。
  (6)如果由于信道忙無法發出數據,則發送節點將返回信道忙錯誤。

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

    由表1可以看出,當距離近、傳輸速率低時,兩種情況丟包率為0;當距離遠且傳輸速率高時,未使用CSMA/CA的丟包率隨著距離和速率的增加而大幅增加,而使用CSMA/CA的丟包率則很小,其性能最大可提高28倍。因此,使用精簡的CSMA/CA發送機制可以大大減少由于數據沖突而產生的丟包概率,從而提高了通信吞吐率。
5 低功耗處理
    STM32和SI4432是模塊的耗電&ldquo;大戶&rdquo;,但它們都提供了低功耗運行功能。STM32支持三種省電模式:睡眠、停機和待機,并帶有自動喚醒功能。在本系統中STM32的常態為待機,在接收到任何中斷時,將從待機狀態切換到正常狀態,在執行完任務后,立即從正常狀態切換回待機狀態。而SI4432中集成了一個基于內部32.768 kHz RC振蕩器的定時喚醒器,可以從睡眠模式定期喚醒芯片,而且SI4432內部集成的功放(PA)的輸出功率是可編程的,工作電流與發射功率成正比,可根據RSSI的值來動態調整輸出功率的值,當RSSI的值大時可減小輸出功率;反之,則可增大輸出功率[2]。
    本文設計的無線收發模塊可用于一對一、一對多以及網狀網近距離無線通信環境中,系統工作穩定可靠,具有很好的通用性。因STM32自帶ADC,SI4432自帶溫度傳感器,稍作改動就可以應用到安防、自動抄表、傳感器網絡、無線遙控等一些短距離無線通信場合。該平臺具有較高的應用價值,為無線數據傳輸提供了一個很好的解決方案。
參考文獻
[1] STMicroelectronics Inc. STM32F10xxx_reference_manual[R]. 2008.
[2] Silicon Laboratories Inc. Si4432 user&prime;s manual[R].2009.
[3] IEEE Std 802. part 15.4: wireless medium access control (MAC) and physical layer(PHY) specifications for lowrate wirelesspersonal area networks(WPANs)[S]. IEEE,  2006.
[4] Silicon Laboratories Inc. EZMACPRO user&prime;s guide[R].  2009.
[5] 鄭朝霞,鄒雪城,姜天杰,等. WSN中CSMA/CA協處理器的軟硬協同設計[J]. 固體電子學研究與進展,
2009,29(1):132-137.

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲视频一区在线| 亚洲曰本av电影| 国产精品一区久久久| 欧美日韩mv| 欧美精品免费视频| 欧美精品首页| 欧美日韩高清在线| 欧美日韩国产综合在线| 欧美美女福利视频| 欧美人成在线| 欧美日韩国产三区| 欧美特黄视频| 国产精品久久亚洲7777| 国产精品免费看| 国产精品日日做人人爱 | 欧美精品一区二区三区蜜桃| 欧美高清在线视频| 欧美国产视频在线观看| 欧美国产日韩xxxxx| 欧美剧在线免费观看网站| 欧美区在线播放| 欧美日韩在线视频观看| 国产精品久久| 国产亚洲欧美另类一区二区三区| 国产综合视频| 亚洲国产成人精品久久| 亚洲精品一区在线观看| 一区二区三区久久| 亚洲免费在线视频| 欧美一区二区在线| 亚洲国产成人91精品| 日韩一级成人av| 亚洲欧美日韩在线高清直播| 欧美在线不卡视频| 美女视频网站黄色亚洲| 欧美日韩国产综合视频在线观看| 国产精品成人在线观看| 国产视频一区二区三区在线观看| 在线播放豆国产99亚洲| 亚洲精品日本| 亚洲男人的天堂在线aⅴ视频| 久久国产精品一区二区三区| 亚洲三级影院| 亚洲影音一区| 久久久久女教师免费一区| 欧美国产精品人人做人人爱| 欧美视频中文字幕| 国产一区深夜福利| 亚洲精品在线观看免费| 亚洲一区二区三区四区中文 | 亚洲一本视频| 亚洲高清一区二区三区| 一区二区欧美在线观看| 亚洲欧美日本日韩| 另类酷文…触手系列精品集v1小说| 欧美激情一区二区三区在线视频观看 | 一区二区免费在线播放| 欧美一区久久| 欧美区日韩区| 国产亚洲精品一区二区| 亚洲精品欧美| 欧美在线一区二区三区| 一本久道久久综合中文字幕| 久久成人免费日本黄色| 欧美另类极品videosbest最新版本| 国产欧美日韩专区发布| 亚洲欧洲美洲综合色网| 欧美尤物一区| 亚洲一区二区三区免费视频| 久久婷婷国产麻豆91天堂| 欧美性猛交视频| 在线观看日产精品| 亚洲欧美日韩国产一区二区| 99精品国产热久久91蜜凸| 久久精品30| 国产精品你懂的在线| 在线不卡中文字幕| 亚洲欧美综合v| 亚洲少妇自拍| 欧美二区在线| 国内激情久久| 亚洲欧美精品一区| 亚洲午夜羞羞片| 欧美国产日韩一二三区| 国产一区二区三区在线观看免费视频 | 久久成人综合视频| 亚洲男人的天堂在线观看| 欧美大片在线观看一区二区| 国产视频在线一区二区 | 亚洲人成啪啪网站| 久久九九精品| 国产麻豆精品久久一二三| 日韩写真视频在线观看| 亚洲理论在线观看| 免费日韩成人| 国内外成人在线| 亚洲女同精品视频| 亚洲欧美电影在线观看| 欧美日韩视频在线一区二区 | 日韩视频在线免费观看| 亚洲欧洲一二三| 老司机免费视频一区二区| 国产性色一区二区| 午夜精品福利一区二区三区av| 亚洲丝袜av一区| 欧美日韩免费在线| 亚洲精品一区二区三区蜜桃久| 亚洲肉体裸体xxxx137| 麻豆精品视频在线观看视频| 国产在线视频欧美| 午夜一区在线| 欧美一级欧美一级在线播放| 国产精品久久久久婷婷| 在线视频中文亚洲| 亚洲午夜电影网| 欧美午夜片在线免费观看| 一区二区三区日韩精品视频| 宅男噜噜噜66一区二区| 欧美日韩成人| 一区二区高清视频在线观看| 在线天堂一区av电影| 欧美激情精品久久久久久黑人 | 在线亚洲精品| 亚洲一区二区少妇| 欧美视频在线观看免费网址| 日韩视频永久免费| 亚洲一区二区三区午夜| 国产精品久久久久久久久搜平片 | 久久一区欧美| 亚洲第一网站免费视频| 亚洲国产婷婷香蕉久久久久久| 模特精品在线| 亚洲毛片视频| 亚洲你懂的在线视频| 国产伦精品一区二区三区免费迷 | 欧美性做爰毛片| 亚洲午夜视频| 久久成人精品一区二区三区| 国产日韩欧美中文| 久久综合给合久久狠狠色| 国产一区 二区 三区一级| 性久久久久久| 久久一区二区三区超碰国产精品| 好看的av在线不卡观看| 亚洲第一福利视频| 欧美高清一区| 一本综合久久| 一本色道久久综合亚洲二区三区| 国产精品videosex极品| 午夜欧美大片免费观看| 久热精品在线视频| 亚洲乱码国产乱码精品精可以看 | 亚洲视频视频在线| 久久电影一区| 亚洲第一狼人社区| 亚洲午夜久久久久久尤物| 国产精品美腿一区在线看 | 亚洲国产成人在线播放| 欧美大片在线看免费观看| 99re6这里只有精品视频在线观看| 亚洲一级片在线看| 国产一区二区丝袜高跟鞋图片| 亚洲欧洲在线播放| 国产精品久久久久av| 久久精品午夜| 欧美日韩一区在线观看视频| 午夜国产欧美理论在线播放 | 国产一区二区三区四区五区美女 | 欧美亚洲一区二区三区| 女人色偷偷aa久久天堂| 日韩一级欧洲| 久久久99国产精品免费| 亚洲裸体视频| 久久久久久9| 艳妇臀荡乳欲伦亚洲一区| 久久精品国产第一区二区三区| 亚洲黄色精品| 欧美一区二区三区另类| 亚洲人成绝费网站色www| 欧美有码在线视频| 最新国产成人av网站网址麻豆| 午夜精品久久久久久久| 亚洲国产毛片完整版| 亚洲欧美一级二级三级| 伊人婷婷久久| 欧美在线视频导航| 亚洲精品日韩在线| 久久久久久高潮国产精品视| 亚洲精一区二区三区| 久久久久天天天天| 亚洲深夜福利视频| 欧美丰满高潮xxxx喷水动漫| 欧美一区精品| 国产精品a久久久久| 亚洲日本欧美天堂| 好吊视频一区二区三区四区| 亚洲欧美激情精品一区二区| 亚洲国产精品美女| 久久久亚洲成人| 亚洲欧美在线观看|