新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于MSP430單片機和nRF905的無線通信系統(tǒng)

基于MSP430單片機和nRF905的無線通信系統(tǒng)

作者: 時間:2008-04-18 來源:網(wǎng)絡(luò) 收藏
引言
  隨著信息技術(shù)的不斷發(fā)展,人們對通信技術(shù)的需求越來越強,擺脫有線網(wǎng)絡(luò)的束縛實現(xiàn)始終是大家關(guān)心的問題,當今研究越來越熱,應(yīng)用非常廣泛,使人與人之間的通信更加方便快捷,更具有市場發(fā)展前景。

本文以Nordic公司的作為通訊的核心,設(shè)計了

  設(shè)計

  無線通信,由兩個部分組成:發(fā)送終端,接收終端。數(shù)據(jù)的發(fā)送和接收顯示是借助于串口來實現(xiàn)的,通過PC機串口給發(fā)送終端送數(shù)據(jù),然后發(fā)送終端通過把數(shù)據(jù)發(fā)送出去;接收終端通過接收數(shù)據(jù),然后把接收到的數(shù)據(jù)通過串口傳給PC機。系統(tǒng)框圖如圖1所示。

圖1

無線系統(tǒng)的硬軟件設(shè)計

  系統(tǒng)的硬件設(shè)計

  本系統(tǒng)采用的射頻收發(fā)器為NordicVLSI公司的nRF905,工作電壓為1.9~3.6V,工作于433/868/915MHz三個ISM頻段,頻段之間的轉(zhuǎn)換時間小于650us。nRF905由頻率合成器、接收解調(diào)器、功率放大器、晶體振蕩器和調(diào)制器組成,不需外加聲表濾波器。高抗擾GFSK調(diào)制,數(shù)據(jù)速率為50kbps,獨特的載波監(jiān)測輸出,地址匹配輸出,數(shù)據(jù)就緒輸出。ShockBurstTM工作模式,自動處理字頭和CRC(循環(huán)冗余碼校驗),使用SPI接口與微控制器通信,配置非常方便。此外,其功耗非常低,以-10dBm的輸出功率發(fā)射時電流只有11mA,工作于接收模式時的電流為12.5mA,內(nèi)建空閑模式與關(guān)機模式,易于實現(xiàn)節(jié)能。nRF905的硬件連接電路圖如圖2所示。

采用的微處理器為TI公司的F149,它是一種超低功耗的混合信號控制器,具有16位RISC結(jié)構(gòu),CPU中的16個寄存器和常數(shù)產(chǎn)生器使能達到最高的代碼效率。通過采用不同的時鐘源工作可以使器件滿足不同功耗要求,適當選擇時鐘源,可以讓器件的功耗達到最小。外設(shè)主要有存儲器、時鐘模塊、定時器、USART和A/D轉(zhuǎn)換器等。

此次設(shè)計主要用到了F149兩個串口通信模塊USART0和USART1,USART0作為UART使用,提供異步通信,通過MAX3232電平轉(zhuǎn)換芯片提供RS-232接口和PC機進行通信,USART1作為SPI使用,提供同步通信,主要是和nRF905之間進行命令和數(shù)據(jù)通信。把MSP430F149的P2口作為一般引腳使用,與nRF905的其他引腳相連。對MSP430F149提供雙晶振系統(tǒng),低頻晶振為32.768K,與微控制的XIN和XOUT相連,為RS-232接口提供頻率支持,高頻晶振為8M,和微控制器的XT2相連,為系統(tǒng)運行的主時鐘。系統(tǒng)的整體設(shè)計相對較為簡單,不過在此基礎(chǔ)上可以實現(xiàn)遙測,無線抄表,工業(yè)數(shù)據(jù)采集,機器人控制等。發(fā)送和接收的硬件電路是一樣的,系統(tǒng)設(shè)計主要硬件電路圖如圖3所示。

系統(tǒng)的軟件設(shè)計

  系統(tǒng)軟件設(shè)計包括下位機軟件設(shè)計和PC機軟件設(shè)計。前者主要是微控制器通過SPI口對nRF905的控制以及微控制器串口通訊的設(shè)計,后者包括串口通訊模塊、主界面和數(shù)據(jù)庫設(shè)計。

  }RFConfig;
  RFConfigRxTxConf=
  {
  10,
  0x01,0x0c,0x44,0x20,0x20,0xcc,
  0xcc,0xcc,0xcc,0x58
  };
  nRF905提供SPI口的讀寫指令,當CSN為低時,SPI接口開始等待一條指令,任何一條新指令均由CSN的由高到底的轉(zhuǎn)換開始。下面主要介紹nRF905的發(fā)送流程和接收流程。

  發(fā)送流程:

  A.當微控制器有數(shù)據(jù)要發(fā)送時,通過SPI接口,按時序把接收機的地址和要發(fā)送的數(shù)據(jù)送傳給nRF905,SPI接口的速率在通信協(xié)議和器件配置時確定;

  B.微控制器置高TRX_CE和TX_EN,激發(fā)nRF905的ShockBurstTM發(fā)送模式;

  C.nRF905的ShockBurstTM發(fā)送:射頻寄存器自動開啟;數(shù)據(jù)打包(加字頭和CRC校驗碼);發(fā)送數(shù)據(jù)包;當數(shù)據(jù)發(fā)送完成,數(shù)據(jù)準備好引腳被置高;

  D.當TRX_CE被置低,nRF905發(fā)送過程完成,自動進入空閑模式。

  ShockBurstTM工作模式保證,一旦發(fā)送數(shù)據(jù)的過程開始,無論TRX_EN和TX_EN引腳是高或低,發(fā)送過程都會被處理完。只有在前一個數(shù)據(jù)包被發(fā)送完畢,nRF905才能接受下一個發(fā)送數(shù)據(jù)包。

  接收流程:

  A.當TRX_CE為高、TX_EN為低時,nRF905進入ShockBurstTM接收模式;

  B.650us后,nRF905不斷監(jiān)測,等待接收數(shù)據(jù);

  C.當nRF905檢測到同一頻段的載波時,載波檢測引腳被置高;

  D.當接收到一個相匹配的地址,地址匹配引腳被置高;

  E.當一個正確的數(shù)據(jù)包接收完畢,nRF905自動移去字頭、地址和CRC校驗位,然后把數(shù)據(jù)準備好引腳置高

  F.微控制器把TRX_CE置低,nRF905進入空閑模式;

  G.微控制器通過SPI口,以一定的速率把數(shù)據(jù)移到微控制器內(nèi);

  H.當所有的數(shù)據(jù)接收完畢,nRF905把數(shù)據(jù)準備好引腳和地址匹配引腳置低;

  I.nRF905此時可以進入ShockBurstTM接收模式、ShockBurstTM發(fā)送模式或關(guān)機模式。

  MSP430F149的串口通訊程序設(shè)計,主要是設(shè)定傳輸?shù)乃俾蕿?800bps,數(shù)據(jù)傳輸為8位數(shù),1個停止位,無奇偶校驗。根據(jù)相應(yīng)的發(fā)送端和接收端來設(shè)定發(fā)送模塊和接收模塊使能,發(fā)送中斷和接收中斷使能。

  在PC機軟件設(shè)計中,串口通信模塊負責(zé)PC機與下位機之間的數(shù)據(jù)通信。而主界面和數(shù)據(jù)庫設(shè)計主要是方便對接收的數(shù)據(jù)進行管理。
  
  實驗測試分析

  在發(fā)送和接收時利用示波器和萬用表對nRF905的相關(guān)引腳進行測量分析如下:

  發(fā)射時nRF905的分析情況如表1所示。

接收時nRF905的分析情況如表2所示。

結(jié)語

  本設(shè)計實現(xiàn)了MSP430F149和nRF905的無線通信。發(fā)送端和接收端之間的距離為80米,之間沒有任何有線連接,通過發(fā)送端發(fā)送數(shù)據(jù),在接收端能正確接收數(shù)據(jù)并顯示在PC機上。實驗表明,該系統(tǒng)實時性好,性能可靠。



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉