當前位置:首頁 > 通信技術(shù) > 通信技術(shù)
[導讀]闡述在低功耗應用中,利用MSP430和nRF905組成一種無線數(shù)據(jù)傳輸系統(tǒng)的設計方案。

摘  要:闡述在低功耗應用中,利用MSP430和nRF905組成一種無線數(shù)據(jù)傳輸系統(tǒng)的設計方案。首先對核心芯片的選型和關(guān)鍵使用方法進行簡單說明,然后介紹系統(tǒng)硬件和軟件的設計,其中著重介紹如何對nRF905進行控制,并給出相關(guān)程序源代碼。
關(guān)鍵詞:無線數(shù)據(jù)傳輸 低功耗 MSP430 nRF905


    在特殊環(huán)境的數(shù)據(jù)測控應用中,無線數(shù)據(jù)傳輸已經(jīng)越來越廣泛地被運用。MSP430+nRF905的組合特別適合于低功耗、短距離(1OO~200 m)、小數(shù)據(jù)量的無線數(shù)傳系統(tǒng)。MSP430 CPU在低功耗應用方面有很大優(yōu)勢,nRF905無線收發(fā)芯片具有功耗低、控制簡單、可自動處理字頭和CRC校驗的優(yōu)點,兩者結(jié)合組成的數(shù)傳系統(tǒng)可以在很多產(chǎn)品中得到應用。


1 MSP430簡介
    MSP430是TI公司新推出的16位系列單片機,在電池供電的低功耗應用中具有獨特的優(yōu)勢。其工作電壓在1.8~3.6 V之間,正常工作時功耗可控制在2OOμA左右,低功耗模式時可實現(xiàn)2μA甚至O.1μA的低功耗。MSP430具有非常高的集成度,通常在單個芯片上集成有12位的A/D、比較器、多個定時器、片內(nèi)USART、看門狗、片內(nèi)振蕩器、大量的I/O端口及大容量的片內(nèi)存儲器,一般單片就可以滿足大多數(shù)的應用需要。在低功耗應用中設計程序時,最好采用以下方法:CPU在初始化完成后,處于低功耗工作模式,在有外部事件發(fā)生時喚醒進入中斷服務程序,完成后重新進入低功耗模式,照此循環(huán)往復,可以最大限度地降低功耗。較差等。上述問題經(jīng)過精心設計是可以避免和解決的,所以基于GPRS的設計仍具有無可比擬的優(yōu)勢。


2 nRF905簡介
    nRF905是挪威Nordik公司推出的單片射頻收發(fā)器芯片,工作電壓為1.9~3.6 V,32引腳QFN封裝(5 mm×5 mm),工作于433/868/915 MHz 3個ISM頻道(可以免費使用)。nRF905可以自動完成處理字頭和CRC(循環(huán)冗余碼校驗)的工作,可由片內(nèi)硬件自動完成曼徹斯特編碼/解碼,使用SPI接口與微控制器通信,配置非常方便。其功耗非常低,以一10 dBm的輸出功率發(fā)射時電流只有11 mA,在接收模式時電流為12.5 mA。nRF905傳輸數(shù)據(jù)時為非實時方式,即發(fā)送端發(fā)出數(shù)據(jù),接收端收到后先暫存于芯片存儲器內(nèi),外面的MCU可以在需要時再到芯片中去取。nRF905一次的數(shù)據(jù)傳輸量最多為32 B。

2.1 nRF905的工作模式及設置

    nRF905有兩種工作模式和兩種節(jié)能模式,分別為掉電模式、待機模式、ShockBurst TM接收模式和Shock—Burst TM發(fā)送模式。這幾種模式由外界CPU通過控制nRF905的3個引腳PWR_UP、TRX_CE和TX_EN的高低電平來決定,如表1所列。


    外界MCU通過SPI總線配置nRF905的內(nèi)部寄存器,讀寫數(shù)據(jù)時必須把其置為待機或掉電模式。nRF905在待機模式時功耗為40,μA,在掉電模式時功耗為2.5 μA。

2.2 nRF905的狀態(tài)輸出

    nRF905有3個引腳用于狀態(tài)輸出,分別是:CD(載波檢測)、AM(地址匹配)和DR(數(shù)據(jù)就緒),均為高電平有效。nRF905在處于接收模式時,若檢測到接收頻率段的載波,就置CD為高;接著檢測載波數(shù)據(jù)中的地址字節(jié),若與本身已配置的接收地址相同,則置AM為高;若再檢測到接收數(shù)據(jù)中的CRC校驗正確,則存儲有效數(shù)據(jù)字節(jié),置DR為高。

    此外,nRF905還有一個時鐘輸出引腳uPCLK,供用戶選擇使用。通過配置內(nèi)部寄存器,可改變其頻率輸出,這一點在調(diào)試時很有用。無線系統(tǒng)至少需要一發(fā)一收兩個設備,調(diào)試時若出現(xiàn)問題很難判斷是哪一方的故障??梢酝ㄟ^修改nRF905的寄存器,用示波器觀察uPCLK輸出是否變化的方法,來判斷其硬件電路和CPU操作nRF905的程序是否正確,從而判斷該設備是否工作正常。

2.3 nRF905的數(shù)據(jù)接口

    外圍MCU通過SPI總線配置nRF905的內(nèi)部寄存器和收發(fā)數(shù)據(jù)。nRF905的SPI總線包括4個引腳:CSN(SPI使能)、SCK(SPI時鐘)、MISO(主人從出)和MOSI(主出從人)。這里nRF905為從機,其SPI的時鐘范圍很寬,可以從1 Hz~10 MFIz,因此MCU在寫控制程序時不必苛求時間的準確度。

    SPI總線的每次操作都必須在使能引腳CSN的下降沿開始,CSN低電平有效,總線上的數(shù)據(jù)在時鐘的上升沿有效。MCU對SPI總線的操作不外乎兩種方式:讀和寫。在進行讀操作時,先把CSN置低,然后在MOSI數(shù)據(jù)線上輸出一個表示讀命令的字節(jié),與此同時,nRF905會在MISO數(shù)據(jù)線上輸出一字節(jié)表示狀態(tài)信息的數(shù)據(jù),隨后輸出一地址字節(jié),后面跟隨有效數(shù)據(jù)。在進行寫操作時比較簡單,MCU先把CSN拉低,然后在MOSI線上輸出寫命令字節(jié)和數(shù)據(jù)字節(jié)即可。

2.4 nRF905的寄存器配置

    nRF905內(nèi)部有5類寄存器:一是射頻配置寄存器,共10個字節(jié),包括中心頻點、無線發(fā)送功率配置、接收靈敏度、收發(fā)數(shù)據(jù)的有效字節(jié)數(shù)、接收地址配置等重要信息;二是發(fā)送數(shù)據(jù)寄存器,共32字節(jié),MCU要向外發(fā)的數(shù)據(jù)就需要寫在這里;三是發(fā)送地址,共4個字節(jié),一對收發(fā)設備要正常通信,就需要發(fā)送端的發(fā)送地址與接收端的接收地址配置相同;四是接收數(shù)據(jù)寄存器,共32字節(jié),nRF905接收到的有效數(shù)據(jù)就存儲在這些寄存器中,MCU可以在需要時到這里讀取;五是狀態(tài)寄存器,1個字節(jié),含有地址匹配和數(shù)據(jù)就緒的信息,一般不用。

    MCU若要操作這些寄存器,需遵循nRF905規(guī)定的操作命令,常用的有以下7種,都是1個字節(jié):寫射頻配置(OXH,“X”含4位二進制位,該字節(jié)表示要開始寫的初始字節(jié)數(shù))、讀射頻配置(1XH,“X”含4位二進制位,該字節(jié)表示要從哪個字節(jié)開始讀)、寫發(fā)送數(shù)據(jù)(20H)、讀發(fā)送數(shù)據(jù)(2lH)、寫發(fā)送地址(22H)、讀發(fā)送地址(23H)和讀接收數(shù)據(jù)(24H)。關(guān)于寄存器的詳細信息可以參閱nRF905的數(shù)據(jù)手冊。

2.5 nRF905的工作過程

    nRF905在正常工作前應由MCU先根據(jù)需要寫好配置寄存罨,或是按照默認配置工作。其后的工作主要是兩個:發(fā)送數(shù)據(jù)和接收數(shù)據(jù)。

    發(fā)送數(shù)據(jù)時,MCU應先把nRF、905置于待機模式(PWR_UP引腳為高、TRX_CE引腳為低),然后通過SPI總線把發(fā)送地址和待發(fā)送的數(shù)據(jù)都寫入相應的寄存器中,之后把nRF905置于發(fā)送模式(PWR_UP、TRX_CE和TX_EN全置高),數(shù)據(jù)就會自動通過天線發(fā)送出去。若射頻配置寄存器中的自動重發(fā)位(AuTO_RETRAN)設為有效,數(shù)據(jù)包就會重復不斷地一直向外發(fā),直到MCU把TRX_CE拉低,退出發(fā)送模式為止。為了數(shù)據(jù)更可靠地傳輸,建議多使用此種方式。

    接收數(shù)據(jù)時,MCU先在nRF905的待機模式中把射頻配置寄存器中的接收地址寫好,然后置其于接收模式(PWR_UP=1、TRX_CE=1、TX_EN=O),nRF905就會自動接收空中的載波。若收到地址匹配和校驗正確的有效數(shù)據(jù),DR引腳會自動置高,MCU在檢測到這個信號后,可以改其為待機模式,通過SPI總線從接收數(shù)據(jù)寄存器中讀出有效數(shù)據(jù)。


3 系統(tǒng)硬件設計
    MSP43O的USART模塊可通過寄存器配置為通用異步串行口或SPI模塊功能,這里配置為SPI模塊。本系統(tǒng)選用的MCU是MSP430F133,在硬件設計時把MCU的SPI接口和nRF905的SPI接口相連即可,另外再選幾個I/O口連接aRF905的輸入輸出信號,如圖1所示。


    對于初次接觸無線系統(tǒng)的設計者,因其射頻部分的元件采購、焊接和調(diào)試比較麻煩,可以選用PTR8000模塊。該模塊內(nèi)核使用nRF905,硬件電路已經(jīng)焊好,使用起來相對方便一些。


4  控制程序設計
    本系統(tǒng)設計的重點是控制nRF905的程序設計,大致分兩個階段:首先是對nRF905進行初始配置,配置完成后按需要編寫數(shù)據(jù)的發(fā)送或接收程序。

4.1  初始化配置

    第一階段應完成初始化配置,分以下幾項:
    ①MSP430的SPI接口設置。MSP430的異步串行接口和SPI接口用同一個uSART模塊,這里需要用軟件配置為SPI功能。本設計中SPI配置為主機模式、3線制和8位數(shù)據(jù)。程序源代碼參見子程序“SPI_SET”。(編者注:程序源代碼見本刊網(wǎng)站www.mesnet.com.cn。)
    ②初始化nRF905的射頻配置寄存器。這些寄存器中有很多信息,必須根據(jù)實際情況進行配置,本設計中nRF905外接16 MHz晶體,“XOF”應配置為“011”;“PA_PWR”為發(fā)射功率,”RX_RED_PWR”為接收靈敏度,可根據(jù)需要配置;另外還有發(fā)送地址、接收地址、發(fā)送數(shù)據(jù)和接收數(shù)據(jù)的長度(字節(jié)數(shù)),可根據(jù)實際應用配置。注意這組寄存器中還有接收時的實際地址,而發(fā)送地址在其他單獨寄存器中。
    ③配置nRF905的發(fā)送地址,最多4個字節(jié)(32位),發(fā)送端的發(fā)送地址應與接收端設備的接收地址相同。在實際工作中,nRF905可以自動濾除地址不相同的數(shù)據(jù),只有地址匹配且校驗正確的數(shù)據(jù)才會被接收,并存儲在接收數(shù)據(jù)寄存器中。

4.2  發(fā)送數(shù)據(jù)

    使nRF905發(fā)送數(shù)據(jù)前,需要MSP430通過SPI總線在待機模式下先把待發(fā)數(shù)據(jù)填進發(fā)送數(shù)據(jù)寄存器中,一次最多32 B。然后把nRF905的“TRX_CE”、“TX_EN”引腳都置為高電平,數(shù)據(jù)就會自動發(fā)送出去。本設計在射頻配置寄存器中選定了自動重發(fā)位,因此在“TRX_CE”被置高的時間內(nèi)數(shù)據(jù)一直在重復不斷地發(fā)。本程序中設計延時500 ms,之后拉低“TRX_CE”引腳,回到待機模式。

4.3  接收數(shù)據(jù)

    MSP30把nRF905的“TRX_CE”引腳置為高電平,“TX_EN”引腳拉為低電平后,就開始接收數(shù)據(jù)。本設計中CPU在設定的35 s內(nèi)一直判斷nRF905的“DR”引腳是否變高,若為高,則證明接收到了有效數(shù)據(jù),可以退出接收模式,若一直沒有接收到,待時間到時也退出接收模式。退出后在待機模式,CPU通過SPI總線把nRF905內(nèi)部的接收數(shù)據(jù)寄存器中的數(shù)據(jù)讀出,即接收到的有效數(shù)據(jù)。編寫接收部分程序時,有一點應該注意,很多資料中都沒有提到,就是CPU在“M0SI”信號線上發(fā)出讀命令字節(jié)后,在“MISO)”信號線上nRF905會自動返回一字節(jié)數(shù)據(jù),為本身的狀態(tài)寄存器信息,后續(xù)的接收數(shù)據(jù)并不會自動跟著輸出,只有CPU在“MOSI”上再輸出一個字節(jié)(可以是隨意值),nRF905才會在“MISO”上返回一個字節(jié),CPU再發(fā),nRF905再返回,直到讀完為止。

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

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(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)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

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

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

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

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

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

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

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

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

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

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

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

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(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)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

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