當(dāng)前位置:首頁 > 通信技術(shù) > 通信技術(shù)
[導(dǎo)讀] 本文設(shè)計(jì)了一種基于無線收發(fā)芯片Si4432和C8051F930單片機(jī)的無線射頻收發(fā)系統(tǒng)。該系統(tǒng)由發(fā)送模塊和接收模塊組成。發(fā)送模塊主要將要發(fā)送的數(shù)據(jù)經(jīng)C8051F930處理后,通過Si4432發(fā)送出去;在接收模塊中,Si4432則將


    本文設(shè)計(jì)了一種基于無線收發(fā)芯片Si4432和C8051F930單片機(jī)的無線射頻收發(fā)系統(tǒng)。該系統(tǒng)由發(fā)送模塊和接收模塊組成。發(fā)送模塊主要將要發(fā)送的數(shù)據(jù)經(jīng)C8051F930處理后,通過Si4432發(fā)送出去;在接收模塊中,Si4432則將數(shù)據(jù)正確接收后通過液晶顯示出來,從而實(shí)現(xiàn)短距離的無線通信。該系統(tǒng)實(shí)現(xiàn)了低功耗、小體積、高靈敏度條件下的高質(zhì)量無線數(shù)據(jù)傳輸。


1 無線收發(fā)芯片Si4432
    Si4432芯片是Silicon Labs公司推出的一款高集成度、低功耗、多頻段的EZRadioPRO系列無線收發(fā)芯片。其工作電壓為1.9~3.6 V,20引腳QFN封裝(4 mm×4 mm),可工作在315/433/868/915 MHz四個(gè)頻段;內(nèi)部集成分集式天線、功率放大器、喚醒定時(shí)器、數(shù)字調(diào)制解調(diào)器、64字節(jié)的發(fā)送和接收數(shù)據(jù)FIFO,以及可配置的GPIO等。Si4432在使用時(shí)所需的外部元件很少,1個(gè)30 MHz的晶振、幾個(gè)電容和電感就可組成一個(gè)高可靠性的收發(fā)系統(tǒng),設(shè)計(jì)簡單,且成本低。
    Si4432的接收靈敏度達(dá)到-117 dB,可提供極佳的鏈路質(zhì)量,在擴(kuò)大傳輸范圍的同時(shí)將功耗降至最低;最小濾波帶寬達(dá)8 kHz,具有極佳的頻道選擇性;在240~960 MHz頻段內(nèi),不加功率放大器時(shí)的最大輸出功率就可達(dá)+20dBm,設(shè)計(jì)良好時(shí)收發(fā)距離最遠(yuǎn)可達(dá)2 km。Si4432可適用于無線數(shù)據(jù)通信、無線遙控系統(tǒng)、小型無線網(wǎng)絡(luò)、小型無線數(shù)據(jù)終端、無線抄表、門禁系統(tǒng)、無線遙感監(jiān)測、水文氣象監(jiān)控、機(jī)器人控制、無線RS485/RS232數(shù)據(jù)通信等諸多領(lǐng)域。


2 無線射頻收發(fā)系統(tǒng)設(shè)計(jì)
2.1 系統(tǒng)總體方案
    無線射頻收發(fā)系統(tǒng)的結(jié)構(gòu)框圖如圖1所示,由C8051F930單片機(jī)控制Si4432實(shí)現(xiàn)無線數(shù)據(jù)的收發(fā)。發(fā)送模塊中的C8051F930將數(shù)據(jù)傳送給Si4432進(jìn)行編碼處理,并以特定的格式經(jīng)天線發(fā)送給接收模塊。接收模塊對接收到的射頻信號放大、解調(diào)之后,再將數(shù)據(jù)送給主控制器C8051F930進(jìn)行相應(yīng)的處理,如送液晶顯示等。系統(tǒng)提供了按鍵和液晶(OCM12864-9)等人機(jī)交互界面,還留有RS232接口可以實(shí)現(xiàn)與PC機(jī)通信。

2.2 系統(tǒng)硬件設(shè)計(jì)
    主控芯片選用Silicon Labs公司推出的單片機(jī)C8051F930。C8051F930有4 KB的RAM和64 KB的Flash,片上集成了豐富的外圍模塊(包括串口、SPI、10位A/D轉(zhuǎn)換器等),很好地滿足了本系統(tǒng)對微控制器的要求;支持快速喚醒和最低0.9 V的供電;有多種電源管理模式(如正常模式、空閑模式、休眠模式等),內(nèi)部集成的2個(gè)內(nèi)建欠壓檢測器分別適用于休眠模式和正常模式,典型休眠模式下電流僅為50 nA。C8051F930包含1個(gè)高效率直流升壓轉(zhuǎn)換器,最多提供65 mW給內(nèi)部微控制器和其他元器件,為了減少正常模式下的電池耗電,C8051F930的省電架構(gòu)能將操作模式下的電流減小到170μA/MHz。
    C8051F930可以通過內(nèi)置增強(qiáng)型SPI對Si4432的內(nèi)部寄存器進(jìn)行讀寫操作,靈活配置各項(xiàng)參數(shù)。通過SPI接口完成對Si4432的初始化配置、讀寫數(shù)據(jù)、訪問FIFO等操作。使用4線SPI,即MOSI、MISO、SCK和nSEL。
    MOSI用于從C8051F930到Si4432的串行數(shù)據(jù)傳輸;MI-SO用于從Si4432到C8051F930的串行數(shù)據(jù)傳輸;SCK用于同步C8051F930和Si4432之間在MOSI和MISO線上的串行數(shù)據(jù)傳輸;nSEL作為片選信號,只有片選信號為低電平時(shí),對Si4432的操作才有效。硬件設(shè)計(jì)原理圖如圖2所示。

    Si4432的13~16腳是標(biāo)準(zhǔn)的SPI接口,17腳(nIRQ)是中斷狀態(tài)輸出引腳。當(dāng)FIFO溢出、有有效的數(shù)據(jù)包發(fā)送或接收、CRC錯(cuò)誤、檢測到前導(dǎo)位和同步字、上電復(fù)位等情況發(fā)生,且相應(yīng)的中斷被使能時(shí),17腳都會(huì)產(chǎn)生一個(gè)低電平以通知C8051F930有中斷產(chǎn)生。20腳(SDN)決定了Si4432芯片的工作狀態(tài)。當(dāng)SDN接地(SDN=0)時(shí),芯片處于常規(guī)工作模式;接高電平(SDN=1)時(shí),芯片處于掉電模式。掉電模式下寄存器中的內(nèi)容會(huì)丟失,且不允許SPI訪問,但芯片的電流損耗只有10 nA,功耗很低,因此適合要求極低功耗的應(yīng)用。在連接到電源后,在SDN的下降沿上電復(fù)位,根據(jù)指令轉(zhuǎn)換到其他工作模式。
    為了達(dá)到較好的通信效果,Si4432的接收低噪聲放大器匹配電路和發(fā)射功率放大器匹配電路的阻容參數(shù),應(yīng)嚴(yán)格按照數(shù)據(jù)手冊提供的參數(shù)選型。前端的分集式電路采用SKY13267,其V1腳和V2腳分別連接Si4432的GPIO1和GPIO2。通過這款交叉開關(guān)實(shí)現(xiàn)分集式天線發(fā)送和接收通道的自動(dòng)切換。


2.3 系統(tǒng)軟件設(shè)計(jì)
    軟件編程采用模塊化設(shè)計(jì)思想,系統(tǒng)中各主要功能模塊均編成獨(dú)立的函數(shù)由主程序調(diào)用。功能模塊包括:初始化程序(包括初始化C8051F930、SPI、Si4432),無線發(fā)送程序,無線接收程序等。無線發(fā)送程序負(fù)責(zé)寫入數(shù)據(jù)載荷,并根據(jù)通信協(xié)議為數(shù)據(jù)載荷加上前導(dǎo)碼、同步字、數(shù)據(jù)載荷長度及CRC校驗(yàn)字節(jié),形成數(shù)據(jù)包將其發(fā)送出去;無線接收程序負(fù)責(zé)接收并檢驗(yàn)數(shù)據(jù)包中的CRC字節(jié),以確保接收到的數(shù)據(jù)的正確性。
    無線收發(fā)模塊之間的通信是以數(shù)據(jù)包的形式發(fā)送的,本系統(tǒng)定義的數(shù)據(jù)包格式如下:

    其中,Preamble(前導(dǎo)碼)是一連串的10101010,其數(shù)量為8n位,n的大小由用戶編程決定。數(shù)據(jù)包在傳輸過程中會(huì)在每個(gè)包的前面加上可設(shè)置長度的前導(dǎo)碼;接收端為了識別幀的到來,需要前導(dǎo)碼進(jìn)行幀同步,從而確定收發(fā)系統(tǒng)之間何時(shí)發(fā)送和接收數(shù)據(jù)。SyncWord(同步字)在前導(dǎo)碼之后,要用設(shè)定好的同步字來作為同步模式的標(biāo)志碼。本系統(tǒng)設(shè)定的同步字為2個(gè)字節(jié),同步字內(nèi)容為0x2DD4,接收端在檢測到同步字后才開始接收數(shù)據(jù)。Packet Length是數(shù)據(jù)載荷長度。
    PAYLOAD(有效數(shù)據(jù)載荷)是用戶所發(fā)送的數(shù)據(jù)。CRC(CRC校驗(yàn)和)由內(nèi)置CRC校檢。Si4432內(nèi)部集成有調(diào)制/解調(diào)、編碼/解碼等功能,從而Preamble、Syncword、Packet Length和CRC都是硬件自動(dòng)加上去的,用戶只需設(shè)定數(shù)據(jù)包的組成結(jié)構(gòu)和部分結(jié)構(gòu)的具體內(nèi)容(如前導(dǎo)碼和同步字)。
    本文以半雙工通信為例,介紹通信的實(shí)現(xiàn)過程。編程環(huán)境為Silabs IDE V3.61,并在該編譯環(huán)境下測試通過。Silabs IDE集成了源代碼編輯、程序源代碼級調(diào)試程序和在系統(tǒng)Flash編程器。同時(shí)支持第三方編譯器和匯編器的使用,
    (1)初始化程序
    初始化程序包括C8051F930的初始化,SPI的初始化,以及Si4432的關(guān)于無線收發(fā)頻率、工作模式、發(fā)射速率等內(nèi)部寄存器的初始化配置。
    系統(tǒng)上電后,C8051F930處于默認(rèn)狀態(tài),根據(jù)系統(tǒng)功能需求重新進(jìn)行初始化配置。C8051F930的數(shù)字交叉開關(guān)允許將內(nèi)部數(shù)字系統(tǒng)資源映射到端口I/O引腳,可通過設(shè)置交叉開關(guān)控制寄存器,將片內(nèi)資源配置到具體的端口I/O引腳上。這一特性允許用戶根據(jù)自己的特定應(yīng)用選擇通用端口I/O和所需數(shù)字資源的組合,提高了應(yīng)用的靈活性。本系統(tǒng)中,主要配置了SPI通信的4線,液晶LCD的數(shù)據(jù)線接口、控制線接口和RS232串口數(shù)據(jù)輸入/輸出等。
    初始化SPI時(shí),可以通過對SPI1CFG寄存器和SPI1CN寄存器的配置來選擇具體使用規(guī)則。這里,選擇主SPI,4線模式,時(shí)鐘極性為低電平,在時(shí)鐘上升沿時(shí)對數(shù)據(jù)采樣;通過配置SPI1CKR寄存器,可將同步時(shí)鐘頻率設(shè)為晶振頻率的1/4。
    上電之初,Si4432也處于默認(rèn)狀態(tài),需要進(jìn)行配置才能工作。Si4432有70多個(gè)寄存器需要配置,它們決定了Si4432的工作模式,具體配置可以參考Si4432的數(shù)據(jù)手冊。Si4432的初始化是一個(gè)重要的部分,配置的恰當(dāng)與否對系統(tǒng)最終的通信效果有很大的影響。主控制器C8051F930通過SPI配置Si4432的1ch、1dh等寄存器,寫入相應(yīng)的初始化RF控制字(主要是頻率、傳輸速度、傳輸方式等);通過配置33h、34h等寄存器來設(shè)置包的結(jié)構(gòu)、前導(dǎo)碼長度、同步字內(nèi)容等。本系統(tǒng)采用同步傳輸模式,以0x2DD4作為同步模式的標(biāo)志碼,傳輸完同步字后才開始傳輸數(shù)據(jù)載荷。每次發(fā)送數(shù)據(jù)必須以同步字0x2DD4作為發(fā)送數(shù)據(jù)的同步標(biāo)志,接收端在檢測到同步字后才開始接收數(shù)據(jù)。
    (2)無線發(fā)送程序
    無線發(fā)送程序流程如圖3所示。完成C8051F930、SPI和Si4432的初始化后,配置寄存器寫入相應(yīng)的初始化RF控制字。接下來,通過配置Si4432的寄存器3eh來設(shè)置包的長度,通過SPI連續(xù)寫寄存器7fh,往TX FIFO里寫入需要發(fā)送的數(shù)據(jù)。然后打開“發(fā)送完中斷允許”標(biāo)志,將其他中斷都禁止。當(dāng)有數(shù)據(jù)包發(fā)送完時(shí),引腳nIRQ會(huì)被拉低以產(chǎn)生一個(gè)低電平從而通知C8051F930數(shù)據(jù)包已發(fā)送完畢。完成中斷使能后,使能發(fā)送功能,數(shù)據(jù)開始發(fā)送。等待nIRQ引腳因中斷產(chǎn)生而使電平拉低,當(dāng)nIRQ引腳變?yōu)榈蜁r(shí)讀取中斷狀態(tài)并拉高nIRQ,否則繼續(xù)等待。如果數(shù)據(jù)發(fā)送成功,指示燈會(huì)變亮。一次數(shù)據(jù)發(fā)送成功后,進(jìn)入下一次數(shù)據(jù)循環(huán)發(fā)送狀態(tài)。

    (3)無線接收程序
    無線接收程序流程如圖4所示。

    程序完成C8051F930、SPI接口和Si4432的初始化后,配置寄存器寫入相應(yīng)的初始化RF控制字。通過訪問寄存器7fh從RX FIFO中讀取接收到的數(shù)據(jù)。相應(yīng)的控制字設(shè)置好之后,若引腳nIRQ變成低電平,則表示Si4432準(zhǔn)備好接收數(shù)據(jù)。完成這些初始化配置后,通過寄存器4bh讀取包長度信息。
    然后,打開“有效包中斷”和“同步字檢測中斷”,將其他中斷都禁止。引腳nIRQ用來檢測是否有有效包被檢測到,若引腳nIRQ變?yōu)榈碗娖?,則表示有有效的數(shù)據(jù)包被檢測到。本系統(tǒng)用Ox2DD4作為同步模式的標(biāo)志碼,接收模塊通過檢測這個(gè)同步字來同步接收數(shù)據(jù)。最后,使能接收功能,數(shù)據(jù)開始接收。等待nIRQ引腳因中斷產(chǎn)生而使電平拉低,讀取中斷標(biāo)志位復(fù)位nIRQ引腳,使nIRQ恢復(fù)至初始的高電平狀態(tài)以準(zhǔn)備下一次中斷觸發(fā)的檢測。通過SPI讀取RX FIFO中的數(shù)據(jù),將數(shù)據(jù)送至液晶OCM12864-9顯示,之后進(jìn)入下一次數(shù)據(jù)接收狀態(tài)。


3 PCB設(shè)計(jì)的注意事項(xiàng)
    PCB設(shè)計(jì)對整個(gè)系統(tǒng)的性能影響很大。以下是設(shè)計(jì)Si4432的PCB時(shí)需要注意的地方:
    ①為了消除走線間的感性效應(yīng),應(yīng)在PCB上空余的地方盡量多布置一些過孔。為了達(dá)到較好的射頻通信效果,應(yīng)對整個(gè)PCB都覆地銅。當(dāng)提供了一個(gè)較好的RF地之后,TX/RX區(qū)域的對地敷銅區(qū)有助于減少甚至避免輻射干擾。
    ②電源接入端要添加去耦電容,且盡量靠近Si4432芯片。濾波電容也應(yīng)該盡量靠近相應(yīng)引腳,這樣可以得到更好的濾波性能。
    ③Si4432的外圍元件很少,應(yīng)盡量使用體積小的0402封裝貼片器件。其中,電感屬于關(guān)鍵器件,需選用高精度電感。
    ④Si4432的扼流電感L1應(yīng)盡量靠近Tx引腳;并聯(lián)在RXn和RXp上的電感L2在PCB平面上應(yīng)與L1垂直布局,Tx通道上的電感L1、L3、L4、L5的方向需保證互相垂直以減少耦合;Tx通道和RXn/p通道之間未布線的區(qū)域應(yīng)以接地的覆銅隔離開來,Tx通道匹配電路的布線區(qū)應(yīng)盡可能不要占用太大的板上區(qū)域。
    ⑤晶振的選擇參照以下參數(shù):等效串聯(lián)電阻是60 Ω,負(fù)載電容是12 pF,頻率準(zhǔn)確度是±20×10-6。讓晶振與芯片的晶振接入引腳盡量靠近,并用地線把時(shí)鐘區(qū)隔離起來。
    ⑥設(shè)計(jì)PCB時(shí),QFN封裝的Si4432芯片底部接地。在Si4432芯片底部打9個(gè)12 mil(1 000 mail=25.4 mm)大小的接地過孔,以確保良好的接地和散熱能力,增強(qiáng)通信可靠性。
    ⑦板上的走線盡可能不要經(jīng)過Tx/RXn/p區(qū)域,以防止匹配網(wǎng)絡(luò)的耦合效應(yīng)。


4 系統(tǒng)測試與分析
    為驗(yàn)證本無線射頻收發(fā)系統(tǒng)設(shè)計(jì)的可靠性,進(jìn)行了7組“發(fā)射模塊一接收模塊”通信實(shí)驗(yàn)。在空曠地通信距離約為1 500 m時(shí)7組“發(fā)射模塊一接收模塊”分別工作在430.50 MHz、431.50 MHz、432.50 MHz等7個(gè)中心頻率上,帶寬均取112.8 kHz,頻率偏移取士25 kHz,發(fā)送4 000個(gè)數(shù)據(jù)包,實(shí)驗(yàn)結(jié)果如表1所列。

    從表1中可以看出,在傳輸速率較低時(shí),誤碼率為0;在傳輸速率為100 kbps(或以上)時(shí),有一定的誤碼,但誤碼率低于0.075%。因此,該無線射頻收發(fā)系統(tǒng)具有傳輸距離遠(yuǎn)、穿墻能力強(qiáng)、通信誤碼率低的特點(diǎn)。


結(jié) 語
    本系統(tǒng)完全可以擴(kuò)充為一個(gè)網(wǎng)絡(luò)系統(tǒng),形成一個(gè)無線網(wǎng)絡(luò),以應(yīng)用到現(xiàn)場控制或測控系統(tǒng)中。本文所設(shè)計(jì)的無線射頻收發(fā)系統(tǒng)工作可靠、穩(wěn)定,具有很好的通用性,稍作改動(dòng)就可以應(yīng)用到小區(qū)傳呼、工業(yè)數(shù)據(jù)采集、生物信號采集、無線遙控等其他一些短距離無線通信領(lǐng)域,具有較高的市場應(yīng)用價(jià)值,為無線數(shù)據(jù)傳輸提供了一個(gè)很好的解決方案。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動(dòng)力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉