基于MSP430的無線通信系統設計說明_第1頁
基于MSP430的無線通信系統設計說明_第2頁
基于MSP430的無線通信系統設計說明_第3頁
基于MSP430的無線通信系統設計說明_第4頁
基于MSP430的無線通信系統設計說明_第5頁
已閱讀5頁,還剩50頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、 PAGE51 / NUMPAGES55基于MSP430的無線通信系統設計摘要本文介紹了一種基于MSP430單片機與NRF24L01的無線通信系統設計。該系統由單片機系統、NRF24L01無線模塊、電源管理模塊、復位電路等單元電路組成。該系統所用到的無線收發系統采用NRF24L01與集成芯片NETUSB2401L構成,利用單片機的部ADC12進行模擬信號與數字信號的轉換,應用把轉換的結果部DMA暫時存儲在FLASH,通過SPI串口發送給NRF24L01,NRF24L01收到數據后通過無線發送給NETUSB24L01,在通過終端機進行處理分析。它的核心控制器采用體積小,低功耗的單片機MSP430

2、實現。該系統主要應用于對于測試環境復雜的壓力、溫度等信號實時無線傳輸到終端進行處理分析。關鍵詞:單片機MSP430 ,NRF24L2401,無線傳輸 The wireless communication system design based on MSP430AbstractThis article describes a wireless communication system based on MSP430 MCU and NRF24L01 design. The system consists of the SCM system, the nRF24L01 a wireless mo

3、dule, power management module, the reset circuit unit circuit. The system used by the wireless transceiver system uses NRF24L01 and integrated chip NETUSB2401L of composition, use of the microcontrollers internal ADC12 analog signal and digital signal conversion, the results of the conversion applic

4、ation internal DMA to temporarily store in FLASH.SPI send nRF24L01 nRF24L01 data received through the wireless send NETUSB2401L through the terminal machine processing and analysis. Its core controller, small size, to achieve low-power microcontroller MSP430. The system is mainly used in real-time w

5、ireless transmission of complex test environment pressure, temperature and other signals to the terminal for processing and analysis.Keywords:SCM the MSP430,NRF24L2401,Wireless transmission目 錄TOC o 1-3 h z u HYPERLINK l _Toc328299636 1 引言 PAGEREF _Toc328299636 h 1 HYPERLINK l _Toc328299637 1.1課題的背景與

6、來源 PAGEREF _Toc328299637 h 1 HYPERLINK l _Toc328299638 1.2 無限傳輸的優點 PAGEREF _Toc328299638 h 2 HYPERLINK l _Toc328299639 1.3 課題的意義 PAGEREF _Toc328299639 h 3 HYPERLINK l _Toc328299640 1.4 課題的設計容與優勢 PAGEREF _Toc328299640 h 3 HYPERLINK l _Toc328299641 2 系統總體方案設計設計 PAGEREF _Toc328299641 h 5 HYPERLINK l _T

7、oc328299642 2.1 系統概述 PAGEREF _Toc328299642 h 5 HYPERLINK l _Toc328299643 2.2 整體電路圖 PAGEREF _Toc328299643 h 5 HYPERLINK l _Toc328299644 3 硬件電路設計 PAGEREF _Toc328299644 h 7 HYPERLINK l _Toc328299645 3.1 電源管理電路 PAGEREF _Toc328299645 h 7 HYPERLINK l _Toc328299646 3.1.1電路設計 PAGEREF _Toc328299646 h 7 HYPER

8、LINK l _Toc328299647 3.1.2 LP2985芯片簡介 PAGEREF _Toc328299647 h 7 HYPERLINK l _Toc328299648 3.2 復位電路 PAGEREF _Toc328299648 h 8 HYPERLINK l _Toc328299649 3.2.1 MAX708芯片簡介 PAGEREF _Toc328299649 h 8 HYPERLINK l _Toc328299650 3.2.2 復位電路設計 PAGEREF _Toc328299650 h 10 HYPERLINK l _Toc328299651 3.3 時鐘電路 PAGER

9、EF _Toc328299651 h 11 HYPERLINK l _Toc328299652 3.4 無線模塊電路 PAGEREF _Toc328299652 h 11 HYPERLINK l _Toc328299653 3.4.1 nRF24L01芯片簡介 PAGEREF _Toc328299653 h 11 HYPERLINK l _Toc328299654 3.4.2 nRF24L01無線模塊電路 PAGEREF _Toc328299654 h 15 HYPERLINK l _Toc328299655 3.4.3 NETUSB2401無線模塊介紹 PAGEREF _Toc3282996

10、55 h 15 HYPERLINK l _Toc328299656 3.5 單片機控制模塊 PAGEREF _Toc328299656 h 16 HYPERLINK l _Toc328299657 3.5.1 MSP430的簡介 PAGEREF _Toc328299657 h 16 HYPERLINK l _Toc328299658 3.5.2 MSP430的功能特性 PAGEREF _Toc328299658 h 17 HYPERLINK l _Toc328299659 3.6 MSP430部ADC12模塊 PAGEREF _Toc328299659 h 18 HYPERLINK l _To

11、c328299660 3.6.1 MSP430部AD12介紹 PAGEREF _Toc328299660 h 18 HYPERLINK l _Toc328299661 3.6.2 ADC12接地和噪聲的考慮 PAGEREF _Toc328299661 h 22 HYPERLINK l _Toc328299662 3.7 MSP430部DMA模塊 PAGEREF _Toc328299662 h 23 HYPERLINK l _Toc328299663 4 軟件設計 PAGEREF _Toc328299663 h 27 HYPERLINK l _Toc328299664 5 總結 PAGEREF

12、_Toc328299664 h 32 HYPERLINK l _Toc328299665 附錄一:整體電路圖 PAGEREF _Toc328299665 h 34 HYPERLINK l _Toc328299666 附錄二:系統程序 PAGEREF _Toc328299666 h 35 HYPERLINK l _Toc328299667 參考文獻 PAGEREF _Toc328299667 h 49 HYPERLINK l _Toc328299668 致 PAGEREF _Toc328299668 h 511引言1.1課題的背景與來源無線通信是利用電磁波 HYPERLINK :/baike.b

13、aidu /view/54338.htm t _blank 信號可以在自由空間中傳播的特性進行信息交換的一種通信方式,1897年M.G.馬可尼成功完成了在一個固定點與一艘拖船之間的無線通信試驗后,標志通信技術的發展進入了無線領域的新階段。為了能夠區分不同的信號,通常以信號的頻率來做標志,因此在無線通信技術中頻率是非常重要的資源。世界各國都有相關的無線電管理部門來負責管理本國的無線頻率資源,建設使用無線通信的網絡都需要經過這些部門的審批,并購買一定圍頻率資源的使用權才可以開始運營。惟有如此,才能保證各種使用無線信號的行業之間不會互相沖突,各自在規定的頻率圍工作。另外在通信中常常需要傳輸的信號本身

14、是低頻率的信號,但為了能夠依照頻率的劃分來區分各種信號,需要對信號進行調制,把低頻信號通過一定的調制信號附著在特定的頻率上再發送到空間中,以避免造成信號間的無序干擾1。近些年信息通信領域中,發展最快、應用最廣的就是無線 HYPERLINK :/baike.baidu /view/158690.htm t _blank 通信技術。自從MSP430單片機問世以來,就以其體積小、功耗低、控制功能強、擴展靈活、微型化和使用方便等優點,廣泛的在智能儀器儀表、工業控制、家用電器、計算機網絡、通信領域、以與醫用設備等領域都得到了應用。在儀器儀表領域,結合不同的傳感器,可實現諸如電壓、頻率、溫度、流量、速度、

15、壓力、角度等物理量的測量。采用單片機控制使得一起儀表的數字化、智能化、微型化,且功能比起采用數字或電子電路更加強大。例如精密的測量設備功率計、示波器以與分析儀2。單片機也可以構成形式多樣的控制系統、數據采集系統。如工廠流水線的智能化管理、電梯智能化控制、各種報警系統,還可以與計算機聯網構成二級控制系統等。如今家用電器上基本都有采用單片機控制,從電飯煲、洗衣機、電冰箱、空調、彩電、其他音箱視頻器材、再到電子天平設備,可謂五花八門,無所不在3。 現在的單片機普遍具備通信接口,可以很方便的與計算機進行數據通信,為在計算機網絡和通信設備間的應用提供了極好的物質條件,現在的通信設備上都基本實現了單片機的

16、智能控制,從手機、機、小型程控交換機、樓宇自動通信呼叫系統、列車無線通信、再到日常工作中隨時可見的移動、集群移動通信、無線對講機等4。單片機在醫療設備中的用途亦然很廣泛,例如醫用呼吸機,各種智能分析儀,監護儀,超聲診斷設備以與病床無線呼叫系統等。對于單片機的應用可謂是一種趨勢,并且這種趨勢將更加熱烈,將滲透到各個領域,各個方面。通過對于通信技術的學習,以與簡單的編程語言學習,作為一名具備一定基礎知識的大學生,應該在此基礎上學會對于單片機的基本應用,達到所學所用的目的。本課題是基于MSP430的無線通信系統設計,課題響應了時代的要求,有重要的現實意義。由于在數據采集環境中,干擾嚴重,環境復雜,有

17、線通信由于布線不合理與電磁干擾等因素的影響,對于數據的正確傳輸受到了很大的限制,導致誤碼率低,信號失真嚴重。為了滿足這個方面的不足,如何應用解決本實際要求,開發一款無線傳輸系統,可對于這些信號進行實時的、低誤碼率的傳輸滿足要求十分必要。基于本方面的應用要求,應用MSP430單片機進行控制與NRF24L01無線傳輸可以實現此目的1,4。1.2 無限傳輸的優點1成本廉價有線通信方式的建立必須架設電纜,或挖掘電纜溝,因此需要大量的人力和物力;而用無線數傳電臺建立專用無線數據傳輸方式則無需架設電纜或挖掘電纜溝,只需要在每個終端連接無線數傳電臺和架設適當高度的天線就可以了。相比之下用無線數傳模塊建立專用

18、無線數據傳輸方式,節省了人力物力,投資是相當節省的。當然在一些近距離的數據通訊系統中,無線的通訊方式并不比有線的方式成本低,但是有時候實際的現場環境難以布線,客戶根據現場環境的需要還是會選用無線的方式來實現通訊。 2建設工程周期短 當要把相距數公里到數十公里距離的遠程站點相互連接通訊的時候,采用有線的方式,必須架設長距離的電纜或者挖掘漫長的電纜溝,這個工程周期可能就需要數個月的時間,而用數傳模塊建立專用無線數據傳輸的方式,只需要架設適當高度的天線,工程周期只需要幾天或者幾周就可以,相比之下,無線的方式可以迅速組建起通信鏈路,工程周期大大縮短。 3適應性好 有線通訊的局限性太大,在遇到一些特殊的

19、應用環境,比如遇到山地、湖泊、林區等特殊的地理環境或是移動物體等布線比較困難的應用環境的時候,將對有線網絡的布線工程有著極強的制約力,而用無線數傳模塊建立專用無線數據傳輸方式將不受這些限制,所以說用無線數傳模塊建立專用無線數據傳輸方式將比有線通訊有更好的更廣泛的適應性,幾乎不受地理環境限制。 4 擴展性好 在用戶組建好一個通訊網絡之后,常常因為系統的需要增加新的設備。如果采用有線的方式,需要重新的布線,施工比較麻煩,而且還有可能破壞原來的通訊線路,但是如果采用無線數傳電臺建立專用無線數據傳輸方式,只需將新增設備與無線數傳電臺相連接就可以實現系統的擴充了,相比之下有更好的擴展性。 5 設備維護上

20、更容易實現 有線通訊鏈路的維護需沿線路檢查,出現故障時,一般很難與時找出故障點,而采用無線數傳模塊建立專用無線數據傳輸方式只需維護數傳模塊,出現故障時則能快速找出原因,恢復線路正常運行3。1.3 課題的意義由于測試環境的惡劣,一些測量物體的運動,有線數據傳輸的布線困擾,一套系統能滿足這些測試要求,適合于對于復雜測試環境的數據采集傳輸,顯得十分必要。雖然動態的壓力數據采集可以通過數據采集卡實現,然而數據采集卡開發成本較高,數據的采集也往往受限于某位置,靜止被測物體運動,這在一定程度上為測試帶來了不便,特別是針對于某些運到參數的測量,如行走、運到等,被測對象因限于測量設備電源線、數據傳輸的長度無法

21、展開運到。目前,無線通信技術發展日趨成熟,采用無線通信實現數據的傳輸具有成本低廉、適應性好、擴展性好以與開發周期短等特點,針對于一些運到物體某些參數的測量不便,以與復雜的測試環境現場布線會產生較高的誤碼率,本文提出了一種以MSP430為核心,配以NRF24L01無線模塊傳輸數據,既能夠實現對被測信號的高速采集,又能夠準確可靠地將數據傳遞給計算機進行處理。可以實現對于一些在一定圍運動的物體進行參數測量,從而省去了布線帶來的麻煩,還提高了傳輸效率。1.4 課題的設計容與優勢系統的主要功能:對采集的信號通過適配電路轉換后,在符合MSP430單片機的接口允許圍時輸出單片機,用置的ADC12進行模擬信號

22、與數字信號的轉換,單片機通過SPI傳輸協議將處理后的信號發送給NRF24L01,在NRF24L01再將此信號通過無線發送到NETUSB-24L01,NETUSB-24L01無線模塊自帶有控制接收的外圍電路和USB接口,可與計算機直接相連,對信號進行實時分析處理,從而了解被測參數。本課題的優勢:采用無線通信,免去了有線傳輸中的高額布線成本和復雜的抗干擾方案設計,并且可以測量運動物體的參量,其應用靈活。在需要的情況下可以加入CD4501作為多路開關,實現在于數據的多路采集,拓展性強。由于采用的MSP430單片機,其以低功耗,體積小,功能模塊強而突出,使得本通信系統低功耗,減小了對于電源的成本,更多

23、的模塊功能使得對于系統的升級應用提供了很大的方便。MSP430單片機是高度集成芯片,采用集成芯片設計后,對于電路的維護,檢修帶來了很大的方便。2 系統總體方案設計2.1 系統概述本系統模塊主要由上位機硬件電路和下位機硬件電路組成。其主要功能是完成對采集數據的傳輸。上位機硬件電路由計算機應用軟件、NETUSB-24L01無線模塊組成。NETUSB-24L01無線模塊自帶有控制接收的外圍電路和USB接口,可與計算機直接相連。其使用簡單、易與掌握。下位機硬件電路選擇MSP430FG4618作為核心的控制芯片,主要功能是完成模擬信號的采集、接收上位機發送的無線通訊命令,并能夠將A/D轉換后的數字量用D

24、MA傳送給FLASH進行存儲,通過SPI模式傳遞給nRF24L01,數據暫存至TX_FIFO中。SPI串口速率在通信協議和器件配置時已確定610。系統框圖如下:MSP430FG4618nRF24L01NETUSB2401L信號適配電路A/DDMA AA計算機串口USB接口 天線天線圖2.1 系統框圖2.2整體電路圖整體電路圖主要包括NRF24L01無線模塊和MSP430控制模塊。MSP430摸塊電路圖設計相對而言比較復雜,其中電源管理電路、時鐘電路和復位電路,也要考慮到高頻收發電路布線的注意事項,這是主控電路的重點與難點。其中復位電路模塊采用MAX708芯片,電源模塊采用LP2985將5V的電

25、眼轉換為MSP430需要的電壓3.3V,輸出電壓也比較穩定,紋波少。時鐘選擇芯片SG350SCF,作為MSP430的主系統是時鐘,頻率為8M。主控芯片則選擇部資源豐富,低功耗、體積小的MSP430單片機。無線模塊選用NRF24L01無線收發芯片,其配置比較簡單。整體電路如下:圖2.2 整體電路圖3 硬件電路設計主要由電源管理模塊,復位電路模塊,時鐘模塊,AD轉換模塊,無線模塊,DMA模塊等組成。3.1 電源管理電路3.1.1電路設計因為MSP430FG4618單片機工作電壓為直流3.3V,且底層電路功耗很小。電源的設計的好壞決定了電壓輸出的穩定性,從而決定單片機是否能穩定工作。本電源的設計采用

26、LP2985將5V的電壓轉換為3.3V,此芯片低噪聲低壓差。為了降低干擾,采用了小電容與地連接11。具體電路如圖3-3:圖3.1 電壓變換模塊電路圖3.1.2 LP2985芯片簡介 芯片優勢:該芯片有能力提供150mA連續負載電流,有過熱保護。有低漏失,低靜態電流,該穩壓器允許使用小,價格低廉的瓷電容,降低設計成本。另外還具有低噪聲,小包裝的優勢。結構框圖如下:圖3.2 LP2985結構框圖3.2復位電路3.2.1 MAX708芯片簡介概述:MAX708 是一種微處理器電源監控芯片,可同時輸出高電平有效和低電平有效的復位信號。復位信號可由VCC電壓、手動復位輸入、或由獨立的比較器觸發。獨立的比

27、較器可用于監視第二個電源信號,為處理器提供電壓跌落的預警功能。這一功能是為器件發出復位信號前的正常關機、向操作者發送警報、或電源切換而考慮的。MAX708 提供 3種域值電平可供選擇。 性能: RESET 信號/RESET 信號輸出域值值為1.25V 用于電源失效或低電源警告的獨立比較器手動復位輸入需要100 uA 的電源電流復位域值為2.63V 2.93V 3.08 V在VCC = 1 V 時能提供有效的 RESET 信號應用:電池供應的器件微處理器臨界狀態監控控制器便攜式工具芯片引腳圖:圖3.3 MAX708引腳圖MAX708是電壓監測芯片,當輸入電壓低于某個值是,708產生復位信號。MA

28、X708的引腳使用說明:MAX708VCC電源MAX708GND地MAX708 RS復位輸出(高電平的復位信號),即輸出高電平的復位信號MAX708/RS復位輸出(低電平的復位信號),即輸出低電平的復位信號MAX708 /MR手動復位(manual reset)。當這一端的電壓低于0.8V時,RS端和/RS端有信號產生MAX708 PF1電壓失敗輸入端。當這一端電平低于1.25V時,/PF0變為低電平。當這一腳不用時,將它接地或接VCCMAX708 /PF0電壓失敗輸出端。一般懸空不用MAX708 NC沒連接原理框圖:圖3.4 MXX708原理框圖3.2.2 復位電路設計電路由MXA708復位

29、芯片、電阻、PNP三極管、按鍵、發光二級管構成。當按鍵按下時,/MR引腳為0.7V的低電平,在/RESET引腳產生信號,輸送給體統,使單片機復位。按鍵的同時發光二極管發光,提示系統復位12。圖3.5 復位電路3.3 時鐘電路 時鐘電路采用集成的四腳8M晶體振蕩器SG350SCF-8M,作為單片機MSP430的主系統時鐘,該電路設計比較簡單,連接方便13。電路設計圖如下:圖3.6 時鐘電路3.4 無線模塊電路與單片機相連接的無線模塊采用nRF24L01芯片,與電腦相連的選擇NETUSB-2401芯片,NETUSB-24L01無線模塊自帶有控制接收的外圍電路和USB接口,可與計算機直接相連。無線傳

30、輸技術有無線傳輸藍牙技術(Bluetooth Technology ),ZigBee(IEEE 802.15.4),IrDA,(Infrared) 紅外技術,Wi-Fi(IEEE 802.11):W ireless Fidelity,UWB (Ultra-Wideband), nRF2401L射頻收發芯片。其中IrDA (Infrared) 紅外傳輸波長短,對障礙物的衍射能差; W i-F i 覆蓋圍很廣,可達100 m ,但是其電波易受干擾; U V B 技術目前只有在美國官方承認;ZigBee 技術和藍牙接近,但大多時候處于睡眠模式,適合于不需實時傳輸或連續更新的場合; nRF24L01

31、單片射頻收發芯片,2.4 GHz 頻段,采用G F SK 調制時的數據速率為高速率8M bps,高于藍牙,具有高數據吞吐量,程序開發簡單。考慮到實時采集數據,選擇nRF24L01芯片作為無線傳輸芯片14,15。3.4.1 nRF24L01芯片簡介nRF24L01 是一款工作在2.42.5GHz 世界通用ISM 頻段的單片無線收發器芯片。無線收發器包括:頻率發生器、增強型SchockBurstTM 模式控制器、功率放大器晶體振蕩器、調制器、解調器。輸出功率、頻道選擇和協議的設置可以通過SPI 接口進行設置。極低的電流消耗:當工作在發射模式下發射功率為-6dBm 時電流消耗為9.0mA,接收模式時

32、為12.3mA,掉電模式和待機模式下電流消耗更低。結構方框圖:圖3.7 nRF4L01 與外部接口nRF24L01芯片引腳圖:圖3.8 nRF24L01芯片引腳圖nRF24L01引腳與功能圖3.9 nRF24L01引腳與功能說明工作模式:nRF24L01可以設置為以下幾種主要的模式圖3.10 nRF24L01主要工作模式nRF24L01 在不同模式下的引腳功能:圖3.11 nRF24L01引腳功能nRF24L01所有的配置都在配置寄存器中,所有寄存器都是通過SPI口進行配置的。SPI接口: SPI接口是標準的SPI接口,其最大的數據傳輸率為10Mbps。大多數寄存器可讀。SPI指令設置: CS

33、N為低后SPI接口等待執行指令,每條指令的執行都必須通過一次CSN由高到低的變化。中斷:nRF24L01的終端引腳(IRQ)為低電平觸發,當狀態寄存器TX-DX,RX-DR或MAX-RT為高時觸發中斷。當MCU給中斷源寫1時,中斷引腳被禁止。可屏蔽中斷可以被IRQ中斷屏蔽。通過設置可屏蔽中斷位為高,則中斷響應被禁止。默認狀態所有的中斷源是被禁止的。SPI時序:Sn-狀態寄存器位;Dn-數據位。圖3.12 SPI讀操作時序圖圖3.13 SPI寫操作時序圖圖3.14 SPI NOP 操作時序圖3.4.2 nRF24L01無線模塊電路本模塊由于設計主要共能是與單片機MSP340進行數據傳輸,并將收到

34、的數據通過無線將數據傳輸到NETUSB2401, NETUSB2401同過USB與計算機相連。所用引腳如圖,其他采用懸空處理16。圖3.15 nRF24L01無線模塊電路3.4.3 NETUSB2401無線模塊介紹NetUSB-2401為USB接口無線通信模塊,采用2.4GHz全球開放頻段免許可證使用,外形小巧(USB大小),最大傳輸數率達2Mbps,適用于室通過電腦無線遙控,無線數據采集等。性能與特點:(1) 2.4Ghz全球開放頻段免許可證使用(2) 最高工作速率2Mbps,高效GFSK調制,適合短距離無線控(3) 125 頻道,滿足多點通信和跳頻通信需要(4) 置硬件CRC 檢錯和點對多

35、點通信地址控制(5) 低功耗1.93.6V 工作,Power down 模式下狀態僅為1uA(6) 可軟件設地址,只有收到本機地址時才會輸出數據(提供中斷指示)(7) 提供二次開發包,提供實例源代碼,無需掌握USB驅動和USB協議以與無線通信協議,只需要通過軟件編程來控制無線收發(8) 室通訊距離約為1530米,看具體環境和通信速率而定(9) 模塊尺寸: U盤大小 (可以根據需要定制外觀和尺寸)圖3.16 NETUSB2401實物圖片3.5 單片機控制模塊3.5.1 MSP430的簡介 MSP430系列單片機是美國儀器(TI)1996年開始向市場推出的一種超低功耗擁有精簡指令集(RISC )處

36、理器的混合信號(Mixed Signal Processor)。由于它針對實際的應用需求,將多個不同的模擬電路、數字電路模塊和微處理器集成在一個芯片上,所以稱之為混合信號處理器。該系列單片機多用于需要電池供電的便攜式儀器儀表中2。3.5.2 MSP430的功能特性低電源電壓圍:1.8V至3.6V超低功耗:主動模式:400微安在1MHz,2.2V時 待機模式:2.2微安 關閉模式(RAM保持):0.35微安有五種省電模式,在不到6微妙就從待機模式下喚醒16位RISC構架,擴展存,125ns指令周期時間三通道部DMA12位A/D轉換器具有部參考,采樣保持和自動掃描功能16位3路Timer-A比較寄

37、存器16位7路Timer-B比較寄存器電源電壓監控器可編程電平檢測串行通信接口(USART1),可以通過軟件選擇同步USRT或同步SPI通用串行通信接口:增強型USRT支持自動波特率檢測 IrDA編程器和解碼器 同步SPI I2C總線標志MSP430引腳圖: 圖3.17 MSP430引腳分布圖3.6 MSP430部ADC12模塊3.6.1 MSP430部AD12介紹這個ADC12模塊支持快速12位模數轉換。這個模塊包含12位的核、部參考和16位的轉換控制緩沖寄存器,這個轉換控制緩沖允許16通道的信號獨立轉換不受CPU的干預2。ADC12特點包括:大于200 ksps最大轉化率12位轉換器沒有失

38、蹤的代碼采樣與可編程,采樣周期用軟件或計時器控制。轉換啟動的軟件,Timer_A,或Timer_B軟件可選片上參考電壓一代(1.5 V或2.5 V)軟件可選的部或外部引用八個單獨配置外部輸入通道(12個MSP430FG43x和MSP430FG461x設備)轉換頻道為部溫度傳感器,AVCC,和外部引用獨立channel-selectable參考來源為正和負引用選擇轉換時鐘源,重復單次轉換、順序與重復序列ADC12的功能模塊;參考電壓發生器;AD都需要一個基準信號,通常為電壓基準。ADC12置參考電源,而且參考電壓有6種可編程選擇,分別為VR+與VR-的組合。其中VR+有:AVCC(模擬電源正端)

39、 VREF+(A/D轉換器部參考電源的輸出正端) VeREF+(外部參考電源的正輸入端)VR-有: AVSS( 電源負端) VREF-或VeREF-(A/D轉換器部或者外部參考電源負端)2. 模擬多路器: 對多個模擬信號進行采樣并轉換時,由于A/D只有一個轉換核,每次只能選通一個信號進行采樣并轉換。ADC12配置有8路外部通道和4路部通道:8路外部通道:A0A7實現外部8路模擬信號的輸入4路部通道:VeREF+,VREF-或VeREF-,(AVCC-AVSS)/2,片溫度傳感器的輸出。具有采樣和保持功能的12位轉換器核:ADC12是一個12位的模數轉換器,并能夠將數據保存在轉換存儲器中。該核可

40、以可編程的參考電壓(VR+和VR_)定義轉換的最大值和最小值。當輸入模擬電壓等于或者高于VR+shi ,ADC12輸出滿量程值0FFFH,當輸入小于或者等于VR+時,ADC12輸出0。輸入模擬電壓的最終結果滿足公式: (式3.1)采樣與轉換所需的時序控制例如:ADC12CLK轉換時鐘、SAMPCON采樣與轉換信號、SHT控制的采樣周期、SHS控制的采樣觸發來源選擇、ADC12SSEL選擇的核時鐘源與ADC12DIV選擇的分頻系數。轉換結果緩存ADC112共有12個轉換通道,設置了16個轉換存儲器,用于暫存轉換結果,合理設置后,ADC12硬件會自動將轉換結果存放到相應的ADC12MEM寄存器中。

41、每個轉換器ADC12MEMx都有相應的控制寄存器ADC12CTLx。控制寄存器控制各個轉換寄存器必須選擇的轉換條件。6. 相關寄存器:轉換控制寄存器:ADC12CTL0與ADC12CTL1中斷控制寄存器:ADC12IFG、ADC12IE控制寄存器:ADC12MCTL0ADC12MCTL15存儲寄存器:ADC12MEM0ADC12MEM15ADC提供的四種轉換模式:單通道單詞轉換序列通道單詞轉換單通道多次轉換序列通道多次轉換圖3.18 MSP430部ADC12方框圖拓展示例模式:SHP=0,SHI長度決定采樣時間長度。擴展示例模式時序圖:圖3.19 拓展模式轉換時序圖脈沖示例模式:SHP=1,S

42、HI用來觸發采樣。脈沖示例模式時序圖:圖3.20 脈沖模式轉換時序圖3.6.2 ADC12接地和噪聲的考慮為了提高AD轉換的精度,必須考慮好噪聲的處理,加上匹配的電容有助于消除噪聲,從而提高轉換的精確性。本設計根據MSP430的使用手冊,采用了10uF的有極性電容和100nF的無極性性電容進行減弱噪聲影響17。電路設計如下:圖3.21 ADC12去噪電路3.7 MSP430部DMA模塊直接存儲器存取(DMADirect Memory Access)方式是用硬件實現存儲器與存儲器之間或存儲器與IO設備之間直接進行高速數據傳送,不需要CPU的干預。這種方式通常用來傳送數據塊。MSP430f16x系

43、列單片機部含有DMA模塊,而且幾乎部所有外設都可以觸發DMA開始存取數據2。硬件介紹:MSP430F15X/16X 系列單片機具有DMA 控制器,從而能夠為數據高速傳輸提供保證。例如,通過DMA控制器可以直接將ADC 轉換存貯器的容傳到RAM 單元。MSP430系列單片機擴展的DMA具有來自所有外設的觸發器,不需要CPU的干預即可提供先進的可配置的數據傳輸能力,從而加速了基于MCU的信號處理進程,DMA傳輸的觸發來源對CPU 來說是完全透明的,DMA控制器可在存與外部與外部硬件之間進行精確的傳輸控制。DMA 消除了數據傳輸延遲時間以與各種開銷,從而可以解放16為RISC CPU,以便其將更多的

44、時間用于處理數據,而非執行正在處理的任務2。MSP430F16x系列單片機的DMA模塊有以下特點:數據傳送不需要CPU介入,完全由DMA控器自行管理。在整個地址空間圍傳輸數據,塊方式傳輸可達65536字節;能夠提高片外設數據吞吐能力,實現高速傳輸,每個字或者字節的傳輸僅需要2個MCLK;減少系統功耗,即使在片外設進行數據輸入或輸出時,CPU也可以處于超低功耗模式而不需喚醒;字節和字數據可以混合傳送:DMA傳輸可以是字節到字節、字到字、字節到字或者字到字節。當字到字節傳輸時,只有字中較低字節能夠傳輸,當從字節到字傳輸時,傳輸到字的低字節,高字節被自動清零;四種傳輸尋址模式:固定地址到固定地址、固

45、定地址到塊地址、塊地址到固定地址以與塊地址到塊地址;觸發方式靈活:邊沿或者電平觸發。單個、塊或突發塊傳輸模式:每次觸發DMA操作,可以根據需要傳輸不同規模的數據。DMA的四種尋址模式如下圖所示:圖3.22 DMA四種尋址模式DMA控制器模塊:3個獨立的傳輸通道:通道0、通道1和通道2。每個通道都有源地址寄存器、目的地址寄存器、傳送數據長度寄存器和控制寄存器。每個通道的觸發請求可以分別允許和禁止;可配置的通道優先權:優先權裁決模塊,傳輸通道的優先級可以調整,對同時有觸發請求的通道進行優先級裁決,確定哪個通道的優先級最高。MSP430的DMA控制器可以采用固定優先級,還可以采用循環優先級。程序命令

46、控制模塊,每個DMA通道開始傳輸之前,CPU要編程給定相關的命令和模式控制,以決定DMA通道傳輸的類型;可配置的傳送觸發器:觸發源選擇模塊,DMAREQ(軟件觸發)、Timer_ACCR2輸出、Timer_BCCR2輸出、I2C 數據接收準備好、I2C 數據發送準備好、USART接收發送數據、DAC12模塊DAC12IFG、ADC12模塊的ADC12IFGx、DMAxIFG、DMAE0 外部觸發源。并且還具有觸發源擴充能力。DMA有六種傳輸模式:單字或者單字節傳輸;塊傳輸;突發塊傳輸;重復單字或者單字節傳輸;重復塊傳輸;重復突發塊傳輸。前三個,傳輸完成后DMAEN自動復位;再次傳輸時需要重新置

47、位DMAEN位以使能DMA通道。后三個為重復模式,一次傳輸完成后,DMAEN不復位;再次出發時,可以再次啟動數據傳輸。六種傳輸模式通過DMADTx寄存器設置。1 單字或者單字節傳輸:DMA 通道被定義為單字或者單字節傳輸模式,每個字或者字節的傳輸都要觸發信號觸發。設置DMADTx=0 就定義了單字或者單字節傳輸模式,規定的傳輸完畢后DMAEN 位自動清除,如果需要再次傳輸,必須重新置位DMAEN。如果設置DMADTx4 為重復單字或者單字節傳輸模式,DMAEN 位一直保持置位,每次觸發伴隨一次傳輸。DMAxSZ 寄存器保存傳輸的單元個數,如果該寄存器為0,則沒有傳輸。傳輸之前DMAxSZ 寄存

48、器的值寫入到一個臨時的寄存器中,每次操作之后DMAxSZ 做減操作。當DMAxSZ減為零的時候,它所對應的臨時寄存器將原來的值重新置入DMAxSZ,同時相應的DMAIFG標志置位。2 塊傳輸模式:在塊傳輸模式,每次觸發可以傳輸一個數據塊。設置DMADTx=1 為塊傳輸模式,每個數據塊傳輸完畢,DMAEN 位自動清除,在觸發傳輸下一個數據塊之前,該位要被重新置位。在傳輸某個數據塊期間,其他的傳輸請求將被忽略。設置DMADTx=5 為重復塊傳輸模式,某個數據塊傳輸完畢,DMAEN 位仍然保持置位,之后,新的觸發可以引起又一次數據塊傳送。DMAxSZ 寄存器保存數據塊所包含的單元個數。DMASRCI

49、NCR 和DMADSTINCR 反映在數據塊傳輸過程中的目的地址和源地址的變化情況。在塊傳輸或者重復塊傳輸過程中,DMAxSA,DMAxDA,DMAxSZ 寄存器的值寫入到對應的臨時寄存器中,DMAxSA,DMAxDA寄存器所對應的臨時值在塊傳輸過程中增加或者減少,而DMAxSZ 在塊傳輸過程中減計數,始終反映當前數據塊還有多少單元沒有傳輸完畢,當DMAxSZ 減為0,它所對應的臨時寄存器將原來的值重新置入DMAxSZ,同時相應的DMAIFG被置位。在塊傳輸過程中,CPU 暫停工作,不參與數據的傳輸。數據塊需要2MCLKDMAxSZ 個時鐘周期。當每個數據塊傳輸完畢,CPU 按照暫停前的狀態重

50、新開始執行。3 突發塊傳輸模式:這個和塊傳輸模式類似,只不過每傳輸4個字或字節,DMA釋放部總線,CPU運行2個MCLK周期;在傳輸過程中CPU有20%的執行時間,而塊傳輸需要等DMA完全傳送完之后,CPU方能運行。DMA觸發源:每個通道的觸發源有DMAxTSELx位進行控制的,這些位必須在DMAEN位為0是進行設置,否則可能出現不可預料的DMA觸發。4 軟件設計系統功能的實現是依靠硬件和軟件的相互結合,硬件決定了系統基本結構和特性,而軟件則是驅動系統的靈魂,對硬件進行控制,兩者缺一不可,相輔相成。本系統的軟件分為主程序和子程序。主程序控制整個系統,控制和協調各個執行模塊。子程序實現具體的相關

51、共能。本設計的軟件程序包括主程序、中斷子程序、數據處理子程序等等1820。程序的功能有:1) 對所需要的模塊進行初始化(如DCO初始化、端口初始化、SPI初始化、nRF24L01初始化、定時器初始化等)2)數據采集、存儲3)用無線的方式發送數據主流程圖: 開始配置nRF24L01為接收狀態是否接收到55?配置各模塊ADC采集數據N Y存儲到FLASH無線發送數據圖4.1 主流程圖部分程序:/數據處理部分void Data_Pro(unsigned char *rx_buf) if(nRF24L01_RxPacket(rx_buf)=1) /判斷是否接收到數據 unsigned char *FL

52、ASHADD; / FLASH地址指針 while(&FLASHADD!=0) /發送數據 TxBuf0=0 xEB; /寫第一個字節容 TACCTL0 = CCIE; /開啟AD轉換定時器 _EINT(); /允許中斷 Delay(8000); /延時,等待系統穩定 nRF2401_SetRXinit(); /配置為接收狀態,等待接收新的命令 Delay(8000); /等待系統穩定,也為了和上位機速度匹配 else /沒有接收到數據 nRF2401_SetRXinit();/配置為接收狀態,繼續等待,直到檢測到接收數據為止 Delay(8000);初始化流程圖:DCO初始化端口初始化SPI

53、初始化擦除AD初始化nRF24L01初始化定時器初始化DMA初始化 關閉看門狗配置為接收狀態圖4.2 初始化流程圖判斷是否接收到數據:開始Y 配置24L01為接收態讀取24L01狀態寄存器的值接收為55?通信正常配置24L01為發送態N 圖4.3 通信測試模塊采集存儲模塊流程圖:N Y 啟動ADC模塊啟動DMA模塊FLASH擦除寫FLASH開始判斷是否寫滿83K退出圖4.4 采集存儲模塊m代計數器值,取值圍為0-31。無線發送模塊程序:讀FLASHm=0,讀一位,計數器m+1m=31?發送數據YN通信是否正常退出開始圖4.5 無線發送模塊流程圖5 總結通過查閱相關資料,學習了MSP430FG4

54、618單片機以與nRF24L01無線收發芯片,以與MAX708、LP2809芯片,最終完成了基于無線通信系統的設計。該系統主要的功能是完成對于外部模擬信號通過單片機處理,并通過nRF24L01芯片發送出去,接收芯片接收到信號后,把數據傳遞給終端機。終端機通過相關軟件進行數據分析,以了解所接收信號的性質。在本次系統設計過程中的方案選擇體會:對于AD的選擇:可選方案有外部AD與部ADC12為了滿足通信速度的匹配AD轉換后的數據緩存方案:用外加的FIFO進行緩存或用部的FLASH模塊。在此系統設計中,在AD的選擇上我采用部的ADC12經行AD轉換,用部的FLASH模塊經行數據緩存。在外加上適當的電容

55、對ADC12經行減弱干擾處理后,ADC12的轉換可靠性可以和一般的外部AD相媲美,并且MSP430的部ADC12資源豐富,使其配置更加靈活,也能降低設計成本,符合電子設計的經濟性原則。在數據緩存方案的選擇上,我選用了用MAP430單片機部FLASH,由于MSP430單片機的部FLASH資源豐富,容量達116KB,可以存儲較多的采樣轉換數據,又ADC12的轉換結果存儲寄存器可以直接通過MDA方式傳遞到FLASH經行存儲。此方案的選擇可以滿足數據傳輸速度不匹配的問題,還能加深對于MSP430單片機模塊功能的了解與應用。如果采用FIFO進行數據緩存,會讓設計成本大大提高,也讓電路設計變得繁瑣,不便于

56、調試,檢修。所以我覺得選擇的部FLASH緩存更合適。在程序設計方面,通過查閱了關于MSP430應用資料,以與學習MSP430的使用的相關視頻,再加上指導老師的指導下,采用由模塊到系統的突破方法。首先是學習一些基本的編程流程,思想。在逐個的了解MSP430的各個功能,當對功能模塊掌握清楚之后在把模塊功能結合起來,經行調試就變得簡單了。比當初一開始就系統的學更有效多了。在四個多月的畢業設計期間,在指導老師的耐心指導下。順利的完成了本次課程設計。在這個過程過對于方案的反復更正,對各個模塊的優化,了解了系統設計的基本方法。也讓以前學習的知識得到了應用,對于網絡的應用以與所需資料的如何獲取有了更多的認識

57、。但是畢業設計也暴露出自己專業基礎的很多不足之處。比如缺乏綜合應用專業知識的能力,對英文材料的閱讀的困難,導致設計過程顯得比較艱難,對于設計理解不是很透徹,從而犯過很多低級的錯誤。對與無線終端的接收處理部分,限于時間和能力有限,不能完成。這次課程設計是對自己大學四年所學的一次大檢閱,使我明白自己知識還很淺薄,雖然大學四年學習了不少專業知識,但是自己的求學之路還很長,能力依舊十分欠缺,以后更應該在工作中學習,努力使自己的能力得到不斷的提升,完成更多的挑戰。附錄 一:整體電路圖附錄 二:系統程序#include #define IDLE 0 x00 / 閑置,沒有中斷請求#define TX_DS

58、 0 x20 / TX 數據發送#define RX_DR 0 x40 / RX 數據接收#define TX_ADR_WIDTH 5 / 5 字節發送地址寬度#define RX_ADR_WIDTH 5 / 5 字節接收地址寬度#define TX_PLOAD_WIDTH 32 / 32 字節發送寬度#define RX_PLOAD_WIDTH 32 / 32字節接收寬度#define RD_RX_PLOAD 0 x61 / 接收寄存器地址#define WR_TX_PLOAD 0 xA0 / 發送寄存器地址unsigned char const TX_ADDRESSTX_ADR_WIDTH

59、 = 0 x34,0 x43,0 x10,0 x10,0 x01;/ 定義靜態發送地址unsigned char const RX_ADDRESSRX_ADR_WIDTH = 0 x34,0 x43,0 x10,0 x10,0 x01;/ 定義靜態接收地址/SPI(NRF24L01)命令/#define WRITE_REG 0 x20 /定義寫寄存器命令#define CONFIG 0 x00 / 定義配置寄存器地址#define SETUP_AW 0 x03 / 定義設置地址寬度 寄存器地址#define RX_ADDR_P0 0 x0A / 定義接收地址通道0 寄存器地址#define T

60、X_ADDR 0 x10 / 定義發送地址 寄存器地址#define EN_AA 0 x01 / 定義使能自動應答寄存器地址#define EN_RXADDR 0 x02 / 定義使能發送地址 寄存器地址#define SETUP_RETR 0 x04 / 定義設置自動重新傳送 寄存器地址#define RF_CH 0 x05 / 定義射頻通道 寄存器地址#define RF_SETUP 0 x06 / 定義射頻設置 寄存器地址#define RX_PW_P0 0 x11 / 定義接收數據, 通道0 寄存器地址 #define FLUSH_RX 0 xE2 /清除RXFIFO#define F

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論