基于CC1100的無(wú)線射頻通信模塊的設(shè)計(jì)綜述_第1頁(yè)
基于CC1100的無(wú)線射頻通信模塊的設(shè)計(jì)綜述_第2頁(yè)
基于CC1100的無(wú)線射頻通信模塊的設(shè)計(jì)綜述_第3頁(yè)
基于CC1100的無(wú)線射頻通信模塊的設(shè)計(jì)綜述_第4頁(yè)
基于CC1100的無(wú)線射頻通信模塊的設(shè)計(jì)綜述_第5頁(yè)
已閱讀5頁(yè),還剩45頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、摘要本文介紹了基于 CC1100的無(wú)線射頻通信模塊的設(shè)計(jì)。論文首先介紹了無(wú)線通 信技術(shù)的發(fā)展以及無(wú)線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)并對(duì) MSP430單片機(jī)基礎(chǔ)知識(shí)、 CC1100基礎(chǔ) 知識(shí)以及開發(fā)平臺(tái)做了簡(jiǎn)單介紹。然后對(duì)基于 CC1100芯片的射頻通信模塊的設(shè)計(jì) 與實(shí)現(xiàn)分兩大部分進(jìn)行了詳細(xì)說(shuō)明:即電路硬件設(shè)計(jì)和模塊通信軟件設(shè)計(jì)。其中硬件設(shè)計(jì)包括四大部分:MSP430最小系統(tǒng)、電源系統(tǒng)、人機(jī)接口與傳感器部分、CC1100電路設(shè)計(jì);軟件設(shè)計(jì)包括四大部分:程序整體結(jié)構(gòu)、 CC1100底層驅(qū)動(dòng)程序 介紹、發(fā)送端程序設(shè)計(jì)、接收端程序設(shè)計(jì)。最后對(duì)測(cè)試結(jié)果進(jìn)行了簡(jiǎn)單分析。基于 MSP430與 CC1100的無(wú)線射頻通信主要

2、有兩大核心元件構(gòu)成, MSP430單 片機(jī)和 CC1100無(wú)線收發(fā)芯片, MSP430為 TI 推出的 16位高性能,低功耗單片機(jī), 在各個(gè)領(lǐng)域得到了廣泛的運(yùn)用,節(jié)點(diǎn)主要由主芯片,串口電平轉(zhuǎn)換電路,射頻電 路,電源系統(tǒng)構(gòu)成,支持 DI(數(shù)字量輸入 ) ,AI (模擬量輸入), UART(智能傳感 器),以及單總線傳感器的接入,在實(shí)際的工程運(yùn)用中主要使用這幾種接口,可 以接入煙霧傳感器,濕度溫度傳感器,紅外傳感器,門磁等。關(guān)鍵詞】 無(wú)線傳感器 MSP430 單片機(jī) CC1100目錄第一章 緒論 . 11.1引言 . 11.2課題研究的背景和意義 . 11.3無(wú)線通信概述 . 2第二章 系統(tǒng)設(shè)計(jì)及

3、平臺(tái)簡(jiǎn)介 . 32.1基于 MSP430+CC110無(wú)0 線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)原理簡(jiǎn)介 . 32.2MSP430 單片機(jī)原理與結(jié)構(gòu) . . 42.2.1.MSP430 系列單片機(jī)特點(diǎn) 42.2.2.MSP430 發(fā)展和應(yīng)用 72.2.3.MSP430 單片機(jī)結(jié)構(gòu) 82.3CC1100 原理及結(jié)構(gòu) . . 92.4開發(fā)平臺(tái)簡(jiǎn)介 . 112.4.1 .IAR430 . 112.4.2Altium Designer 6 . 12第三章 硬件平臺(tái)的設(shè)計(jì) . 153.1MSP430 最小系統(tǒng) . . 153.2電源系統(tǒng) . 173.3人機(jī)接口與傳感器部分 . 183.4CC1100 電路設(shè)計(jì) . . 19第

4、四章 單片機(jī)軟件設(shè)計(jì) . 214.1程序整體結(jié)構(gòu) . 214.2CC1100 底層驅(qū)動(dòng)程序介紹. . 224.2.1寫指令 . . 224.2.2寫寄存器 . . 234.2.3讀寄存器 . . 244.2.4讀狀態(tài) . . 244.2.5發(fā)送數(shù)據(jù)包 . 254.2.6接收數(shù)據(jù)包 . 264.3發(fā)送端程序設(shè)計(jì) . . 274.4接收端程序設(shè)計(jì) . . 28第五章 測(cè)試結(jié)果及分析 . 295.1測(cè)試環(huán)境介紹 . . 295.2測(cè)試過程介紹 . . 295.3測(cè)試結(jié)果及分析 . . 29第六章 結(jié)束語(yǔ) . 30致 謝 . 31參考文獻(xiàn) . 32第一章 緒論第一章 緒論1.1 引言近些年信息通信領(lǐng)域

5、中,發(fā)展最快、應(yīng)用最廣的就是無(wú)線通信技術(shù)。而無(wú)線 通信技術(shù)又有著集成化,低功耗,易操作的發(fā)展趨勢(shì)。目前,一些只由微控制器 和集成射頻芯片構(gòu)成的無(wú)線通信模塊不斷推出,這種微功率短距離無(wú)線數(shù)據(jù)傳輸 技術(shù)在工業(yè)、民用等領(lǐng)域得到應(yīng)用廣泛。無(wú)線數(shù)據(jù)傳輸系統(tǒng)結(jié)構(gòu)微功率短距離無(wú) 線數(shù)據(jù)傳輸技術(shù)作為一種無(wú)線通信實(shí)用技術(shù),一般使用單片射頻收發(fā)芯片,加上 微控制器和少量外圍器件構(gòu)成專用或通用無(wú)線通信模塊,只要依據(jù)命令字進(jìn)行操 作即可實(shí)現(xiàn)基本的數(shù)據(jù)無(wú)線傳輸功能。本課題主要研究的是由 MSP430 單片機(jī)最 小系統(tǒng)和 CC1100 無(wú)線通信模塊組合而成的無(wú)線通信系統(tǒng)。1.2 課題研究的背景和意義隨著現(xiàn)代通信技術(shù)的飛速

6、發(fā)展,近距離無(wú)線通信技術(shù)呈現(xiàn)出良好的發(fā)展勢(shì) 頭。受到越來(lái)越多人的關(guān)注。因?yàn)樵诂F(xiàn)實(shí)生活中存在著許多這樣的應(yīng)用情況,當(dāng) 然傳統(tǒng)的無(wú)線通信技術(shù)雖然能夠滿足要求,但免不了存在成本高,體積大,功耗 大的問題,這時(shí)成本小,體積小,功耗低的短距離無(wú)線通信技術(shù)就發(fā)揮了它的優(yōu) 勢(shì),尤其在傳統(tǒng)無(wú)線通信系統(tǒng)難于或者不便于覆蓋到的區(qū)域,短距離無(wú)線通信技 術(shù)可以在近距離范圍內(nèi)實(shí)現(xiàn)相互通信或相關(guān)操作。無(wú)線數(shù)據(jù)傳輸系統(tǒng)已成為當(dāng)今 通信業(yè)乃至整個(gè)信息業(yè)的熱點(diǎn),廣泛應(yīng)用于無(wú)線遙控、報(bào)警、無(wú)線局域網(wǎng)、軍事 通信等范圍,具有一定的實(shí)際應(yīng)用價(jià)值。 通常情況下,單片機(jī)在獲取數(shù)據(jù)后, 還需要將數(shù)據(jù)傳送出去。有線數(shù)據(jù)傳輸依賴于有線的線路,

7、例如采用有線的串、 并行總線等。有線的線路具有成本比較高、維護(hù)不方便等缺點(diǎn)。無(wú)線數(shù)據(jù)傳輸是 在有線數(shù)據(jù)傳輸?shù)幕A(chǔ)上發(fā)展起來(lái)的,而無(wú)線數(shù)據(jù)通信則是通過發(fā)射模塊和接收 模塊來(lái)傳送數(shù)據(jù)的,具有不占空間、成本低、可靠性高、維護(hù)方便及傳輸過程中 的干擾小等優(yōu)點(diǎn),提高了傳輸過程中的可靠性?;?CC1100 芯片的無(wú)線通信模塊的設(shè)計(jì)1.3 無(wú)線通信概述通信就是由一個(gè)地方向另外一個(gè)地方進(jìn)行信息的有效傳遞與交換。或者說(shuō)通 信是信息或其表示方式的時(shí)間和空間的轉(zhuǎn)移。隨著通信技術(shù)和計(jì)算機(jī)技術(shù)的發(fā)展 及他們的密切結(jié)合,通信已能克服空間和時(shí)間的限制,實(shí)現(xiàn)大量的、遠(yuǎn)距離的信 息傳遞、交換和存取。信息由一個(gè)地方向另一個(gè)地方

8、傳遞時(shí),按傳輸煤質(zhì)的不同 通信可分為有線通信和無(wú)線通信兩大類:有線通信,是指?jìng)鬏斆劫|(zhì)為導(dǎo)線、電 纜、光纜、波導(dǎo)等形式的通信,如明線通信、電纜通信、光纜通信等。無(wú)線通 信,是指利用高頻電磁波經(jīng)自由空間傳遞信息的一種通信方式。常見的有短波、 超短波通信、微波通信、衛(wèi)星通信、移動(dòng)通信、遙控、遙測(cè)、導(dǎo)航通信等。微波 是一種無(wú)線電波,它傳送的距離一般只有幾十千米。但微波的頻帶很寬,通信容 量很大。微波通信每隔幾十千米要建一個(gè)微波中繼站。衛(wèi)星通信是利用通信衛(wèi)星 作為中繼站在地面上兩個(gè)或多個(gè)地球站之間或移動(dòng)體之間建立微波通信聯(lián)系。第二章 系統(tǒng)設(shè)計(jì)平臺(tái)簡(jiǎn)介第二章系統(tǒng)設(shè)計(jì)及平臺(tái)簡(jiǎn)介2.1 基于 MSP430+C

9、C1100 無(wú)線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)原理簡(jiǎn)介基于 MSP430與 CC1100的無(wú)線傳感器主要有兩大核心元件, MSP430單片 和 CC1100無(wú)線收發(fā)芯片構(gòu)成, MSP430為 TI 推出的 16 位高性能,低功耗單片機(jī), 在各個(gè)領(lǐng)域得到了廣泛的運(yùn)用,節(jié)點(diǎn)主要由主芯片,串口電平轉(zhuǎn)換電路,射頻電 路,電源系統(tǒng)構(gòu)成,支持 DI(數(shù)字量輸入 ) ,AI (模擬量輸入), UART(智能傳感 器),以及單總線傳感器的接入,在實(shí)際的工程運(yùn)用中主要使用這幾種接口,可 以接入煙霧傳感器,濕度溫度傳感器,紅外傳感器等。節(jié)點(diǎn)結(jié)構(gòu)如圖 2.1 所示。圖 2.1 節(jié)點(diǎn)框圖本次設(shè)計(jì)最終要實(shí)現(xiàn)的效果是一個(gè)節(jié)點(diǎn)作為發(fā)端,

10、一個(gè)節(jié)點(diǎn)作為收端, 發(fā)端模 塊負(fù)責(zé)將采集溫度信號(hào),以及 DI 量,并將其通過 MSP430以及射頻模塊 CC1100發(fā) 射出去,MSP430與 CC1100之間采用 SPI總線進(jìn)行通信, 接收端接收到數(shù)據(jù)后進(jìn)行 CRC校驗(yàn)等,如果數(shù)據(jù)無(wú)誤則將數(shù)據(jù)通過串口發(fā)送至 PC端,通過超級(jí)終端來(lái)顯示 接收到的數(shù)據(jù)。系統(tǒng)框圖如圖 2.2 所示基于 CC1100 芯片的無(wú)線通信模塊的設(shè)計(jì)圖 2.2 收發(fā)系統(tǒng)框圖2.2MSP430 單片機(jī)原理與結(jié)構(gòu)2.2.1MSP430 系列單片機(jī)特點(diǎn)雖然 MSP430系列單片機(jī)推出時(shí)間不是很長(zhǎng),但由于其卓越的性能,在短短幾 年時(shí)間里發(fā)展極為迅速, 應(yīng)用也日趨廣泛。 MSP43

11、0系列單片機(jī)針對(duì)各種不同應(yīng)用, 包括一系列不同型號(hào)的器件。主要特點(diǎn)有: 超低功耗, MSP430系列單片機(jī)的電源電壓采用 1.8-3.6V 低電壓,RAM數(shù)據(jù) 保持方式下耗電僅 0.1uA,活動(dòng)模式耗電 250 Ua/MIPS(MIPS:每秒百萬(wàn)條指令數(shù) ) , I/O 輸入端口的漏電流最大僅 50 uA。MSP430系列單片機(jī)有獨(dú)特的時(shí)鐘系統(tǒng)設(shè)計(jì),包括兩個(gè)不同的時(shí)鐘系統(tǒng):基本 時(shí)鐘系統(tǒng)和鎖頻環(huán) (FLL 和 FLL+)時(shí)鐘系統(tǒng)或 DCO數(shù)字振蕩器時(shí)鐘系統(tǒng)。由時(shí)鐘系 統(tǒng)產(chǎn)生 CPU和各功能模塊所需的時(shí)鐘,并且這些時(shí)鐘可以在指令的控制下打開或 關(guān)閉,從而實(shí)現(xiàn)對(duì)總體功耗的控制。由于系統(tǒng)運(yùn)行時(shí)使用的

12、功能模塊不同,即采 用不同的工作模式,芯片的功耗有明顯的差異。在系統(tǒng)中共有一種活動(dòng)模式 (AM) 和 5 種低功耗模式 (LPM0-LPM4)。另外, MSP430系列單片機(jī)采用矢量中斷,支持十多個(gè)中斷源,并可以任意嵌 套。用中斷請(qǐng)求將 CPU喚醒只要 6 uS,通過合理編程,既以降低系統(tǒng)功耗,又第二章 系統(tǒng)設(shè)計(jì)平臺(tái)簡(jiǎn)介可以對(duì)外部事件請(qǐng)求做出快速響應(yīng)。在這里,需要對(duì)低功耗問題作一些說(shuō)明。 首先,對(duì)一個(gè)處理器而言,活動(dòng)模式時(shí)的功耗必須與其性能一起來(lái)考察、衡量, 忽略性能來(lái)看功耗是片面的。在計(jì)算機(jī)體系結(jié)構(gòu)中,是用W/MIPS(瓦特 / 百萬(wàn)指令每秒) 來(lái)衡量處理器的功耗與性能關(guān)系的,這種標(biāo)稱方法是

13、合理的。 :MSP430系列 單片機(jī)在活動(dòng)模式時(shí)耗電 250 uA /MIPS,這個(gè)指標(biāo)是很高的 (傳統(tǒng)的 MCS51單片機(jī) 約為 1020mA/MIPS)。其次,作為一個(gè)應(yīng)用系統(tǒng),功耗是整個(gè)系統(tǒng)的功耗,而不 僅僅是處理器的功耗。比如,在一個(gè)有多個(gè)輸入信號(hào)的應(yīng)用系統(tǒng)中,處理器輸入 端口的漏電流對(duì)系統(tǒng)的耗電影響就較大了。 MSP430單片機(jī)輸入端口的漏電流最大 為 50nA,遠(yuǎn)低于其他系列單片機(jī) ( 一般為 110 uA) 。另外,處理器的功耗還要看 它內(nèi)部功能模塊是否可以關(guān)閉,以及模塊活動(dòng)情況下的耗電,比如低電壓監(jiān)測(cè)電 路的耗電等。還要注意,有些單片機(jī)的某些參數(shù)指標(biāo)中,雖然典型值可能很小, 但

14、最大值和典型值相差數(shù)十倍,而設(shè)計(jì)時(shí)要考慮到最壞情況,就應(yīng)該關(guān)心參數(shù)標(biāo) 稱的晟大值,而不是典型值??傮w而言, MSP430系列單片機(jī)堪稱目前世界上功耗 最低的單片機(jī),其應(yīng)用系統(tǒng)可以做到用一枚電池使用 10 年。 強(qiáng)大的處理能力, MSP430系列單片機(jī)是 16 位單片機(jī),采用了目前流行的、 頗受學(xué)術(shù)界好評(píng)的精簡(jiǎn)指令集 (RISC)結(jié)構(gòu),一個(gè)時(shí)鐘周期可以執(zhí)行一條指令 ( 傳統(tǒng) 的 MCS51單片機(jī)要 12個(gè)時(shí)鐘周期才可以執(zhí)行一條指令 ),使 MSP430在 8MHz晶振 工作時(shí),指令速度可達(dá) 8MIPS(注意:同樣 8MIPS的指令速度,在運(yùn)算性能上 16 位 處理器比 8位處理器高遠(yuǎn)不止兩倍 )

15、。TI 不久還將推出 2530MIPS的產(chǎn)品。同時(shí), MSP430系列單片機(jī)中的某些型號(hào), 采用了一般只有 DSP中才有的 16 位多功能硬件 乘法器、硬件乘 - 加(積之和 )功能。 DMA等一系列先進(jìn)的體系結(jié)構(gòu),大大增強(qiáng)了它 的數(shù)據(jù)處理和運(yùn)算能力,可以有效地實(shí)現(xiàn)一些數(shù)字信號(hào)處理的算法 (如 FFT、DTMF 等) 。這種結(jié)構(gòu)在其他系列單片機(jī)中尚未使用。 高性能模擬技術(shù)及豐富的片上外圍模塊, MSP430系列單片機(jī)結(jié)合 TI 的高 性能模擬技術(shù),各成員都集成了較豐富的片內(nèi)外設(shè)。視型號(hào)不同可能組合有以下 功能模塊:看門狗(WDT),模擬比較器 A,定時(shí)器 A(Timer_A) ,定時(shí)器 B(T

16、imer_B) , 串口 0,l(USART0、1) ,硬件乘法器,液晶驅(qū)動(dòng)器, 10位, 12/14 位 ADC,12位 DAC,I2C 總線,直接數(shù)據(jù)存取 (DMA),端口 l 6(Pl P6),基本定時(shí)器 (Basic Timer) 等。其中,看門狗可以在程序失控時(shí)迅速?gòu)?fù)位:模擬比較器進(jìn)行模擬電壓的比較,基于 CC1100 芯片的無(wú)線通信模塊的設(shè)計(jì)配合定時(shí)器,可設(shè)計(jì)出高精度 (10 1l 位)的 A/D轉(zhuǎn)換器;16位定時(shí)器 (Timer_A 和 Timer_B) 具有捕獲 / 比較功能;大量的捕獲 / 比較寄存器,可用于事件計(jì)數(shù)、時(shí) 序發(fā)生、 PWM等;多功能串口 (USART)??蓪?shí)現(xiàn)

17、異步、同步和 I2c 串行通信,可方 便地實(shí)現(xiàn)多機(jī)通信等應(yīng)用;具有較多的 FO端口,最多達(dá) 6*8 條 I/O 口線,P0 輸出 時(shí),不管是灌電流還是拉電流,每個(gè)端口的輸出晶體管都能夠限制輸出電流 ( 最大 約 6mA),保證系統(tǒng)安全; Pl 、P2 端口能夠接收外部上升沿或下降沿的中斷輸入; 12位 A/D轉(zhuǎn)換器有較高的轉(zhuǎn)換速率,最高可達(dá) 200Ksps,能夠滿足大多數(shù)數(shù)據(jù)采 集應(yīng)用; LCD驅(qū)動(dòng)模塊能直接驅(qū)動(dòng)液晶多達(dá) 160段; F15X和 F16X系列有兩路 12 位高速 DAC,可以實(shí)現(xiàn)直接數(shù)字波形合成等功能; 硬件 I2C 串行總線接口可以擴(kuò)展 I2C 接口器件; DMA功能可以提高

18、數(shù)據(jù)傳輸速度,減輕 CPL,的負(fù)荷。 MSP430系列 單片機(jī)的豐富片內(nèi)外設(shè),在目前所有單片機(jī)系列產(chǎn)品中是非常突出的,為系統(tǒng)的 單片解決方案提供了極大的方便。 系統(tǒng)工作穩(wěn)定,上電復(fù)位后,首先由 DCO_CL啟K 動(dòng) CPU,以保證程序從正 確的位置開始執(zhí)行,保證晶體振蕩器有足夠的起振及穩(wěn)定時(shí)間。然后軟件可設(shè)置 適當(dāng)?shù)募拇嫫鞯目刂莆粊?lái)確定最后的系統(tǒng)時(shí)鐘頻率。如果晶體振蕩器在用做 CPU 時(shí)鐘 MCLK時(shí)發(fā)生故障, DCO會(huì)自動(dòng)啟動(dòng),以保證系統(tǒng)正常工作。這種結(jié)構(gòu)和運(yùn)行 機(jī)制,在目前各系列單片機(jī)中是絕無(wú)僅有的。另外, MSP430系列單片機(jī)均為工業(yè) 級(jí)器件,運(yùn)行環(huán)境溫度為 -40 +85,運(yùn)行穩(wěn)定、

19、可靠性高,所設(shè)計(jì)的產(chǎn)品適用 于各種民用和工業(yè)環(huán)境。 方便高效的開發(fā)環(huán)境,目前 MSP430系列有 OTP型、 FLASH型和 ROM型 3 種 類型的器件,國(guó)內(nèi)大量使用的是 FLASH型。這些器件的開發(fā)手段不同,對(duì)于 OTP 型和 ROM型的器件是使用專用仿真器開發(fā)成功之后再燒寫或掩膜芯片。 對(duì)于 FLASH 型則有十分方便的開發(fā)調(diào)試環(huán)境,因?yàn)槠骷瑑?nèi)有JTAG調(diào)試接口,還有可電擦寫的 FLASH。存儲(chǔ)器,因此采用先通過 JTAG接口下載程序到 FLASH內(nèi),再由 JTAG接 口控制程序運(yùn)行、讀取片內(nèi) CPU狀態(tài),以及存儲(chǔ)器內(nèi)容等信息供設(shè)計(jì)者調(diào)試,整 個(gè)開發(fā)(編譯、調(diào)試 )都可以在同一個(gè)軟件集

20、成環(huán)境中進(jìn)行。這種方式只需要一臺(tái) PC機(jī)和一個(gè) JTAG調(diào)試器, 而不需要專用仿真器和編程器。 開發(fā)語(yǔ)言有匯編語(yǔ)言和 C語(yǔ)言。目前較好的軟件開發(fā)工具是 IAR Workbench 430。這種以 FLASH技術(shù)、JTAG 調(diào)試、集成開發(fā)環(huán)境結(jié)合的開發(fā)方式,具有方便、廉價(jià)、實(shí)用等優(yōu)點(diǎn),在單片機(jī) 開發(fā)中還較為少見。第二章 系統(tǒng)設(shè)計(jì)平臺(tái)簡(jiǎn)介其他系列單片機(jī)的開發(fā)一般均需要專用的仿真器或編程器。另外, 2001年 TI 公司又公布了 BOOTSTRA技P術(shù),利用它可在保密熔絲燒斷以后,只要幾根硬件連 線,通過軟件口令字 (密碼) ,就可更改并運(yùn)行內(nèi)部的程序,這為系統(tǒng)固件的升級(jí) 提供了又一方便的手段。 B

21、OOTSTRA具P有很高的保密性,口令字可達(dá) 32 個(gè)字節(jié)長(zhǎng) 度。2.2.2MSP430 發(fā)展和應(yīng)用TI 公司從 1996 年推出 MSP430系列開始到 2000 年初,推出了 33X、32X、31X 等幾個(gè)系列。 MSP430的 33X、32X、3lx 等系列具有 LCD驅(qū)動(dòng)模塊,對(duì)提高系統(tǒng)的 集成度較有利。每一系列有 ROM型(C)、OTF型(P)和 EPROM型(E)等芯片。 EPROM 型的價(jià)格昂貴,運(yùn)行環(huán)境溫度范圍窄,主要用于樣機(jī)開發(fā)。這也表明了這幾個(gè)系 列的開發(fā)模式,即用戶可以用 EPROM型開發(fā)樣機(jī),用 OTP型進(jìn)行小批量生產(chǎn),而 ROM型適應(yīng)大批量生產(chǎn)的產(chǎn)品。 MSP430的

22、 3XX系列,在國(guó)內(nèi)幾乎沒有使用。隨著 FLASH技術(shù)的迅速發(fā)展,TI 公司也將這一技術(shù)引入 MSP430系列單片機(jī)中。 2000年推出了 F11X/11x1 系列,這個(gè)系列采用 20腳封裝,內(nèi)存容量、片上功能和 I/O 引腳數(shù)比較少,但是價(jià)格比較低廉。在 2000年 7月推出了帶 ADC或硬件乘法 器的 F13X/F14X系列。在 2001年 7 月到 2002年又相繼推出了帶 LCD控制器的 F41x、 F43X、F44X。TI 在2003到 2004年期間推出了 F15X和 F16X系列產(chǎn)品。在這一新的系列中, 有了兩個(gè)方面的發(fā)展。一是增加了 RAM的容量,如 F161l 的 RAM容量

23、增加到了 10KB, 這樣就可以引入實(shí)時(shí)操作系統(tǒng) (RTOS)或簡(jiǎn)單文件系統(tǒng)等。二是從外圍模塊來(lái)說(shuō), 增加了 12C、DMA、 DACl2和 SVS等模塊。另外,TI 在 2004年下半年推出了 MSP430X2lx系列,該系列是對(duì) MSP430X1XX 片內(nèi)外設(shè)的進(jìn)一步精簡(jiǎn),價(jià)格低廉,適合做一些簡(jiǎn)單應(yīng)用。近兩年, TI 公司針對(duì)某些特殊應(yīng)用領(lǐng)域,利用 MSP430的超低功耗特性,還 推出了一些專用單片機(jī),如專門用于電量計(jì)量的 MSP430FFA2,X用于水表、氣表、 熱表等具有無(wú)線傳感模塊的 MSP430FW4,2X以及用于人體醫(yī)學(xué)監(jiān)護(hù) ( 血糖、血壓、 脈搏等)的 MSP430FG42單X

24、片機(jī)。用這些單片機(jī)來(lái)設(shè)計(jì)相應(yīng)的專用產(chǎn)品,不僅具有 MSP430的超低功耗特性,還能大大簡(jiǎn)化系統(tǒng)設(shè)計(jì)。基于 CC1100 芯片的無(wú)線通信模塊的設(shè)計(jì)根據(jù) TI 在 MSP430系列單片機(jī)上的發(fā)展計(jì)劃, 在今后將陸續(xù)推出性能更高、 功 能更強(qiáng)的 F5XX系列,這一系列單片機(jī)運(yùn)行速度可達(dá) 2530MIPS,并具有更大的 FLASH(128KB及) 更豐富的外設(shè)接口 (CAN、USB等) 。MSP430 系列單片機(jī)不僅可以應(yīng)用于許多傳統(tǒng)的單片機(jī)應(yīng)用領(lǐng)域, 如儀器儀表、 自動(dòng)控制以及消費(fèi)品領(lǐng)域,更適合用于一些電池供電的低功耗產(chǎn)品,如能量表(水表、電表、氣表等 )、手持式設(shè)備、智能傳感器等,以及需要較高運(yùn)算

25、性能的智能 儀器設(shè)備。2.2.3MSP430 單片機(jī)結(jié)構(gòu)單片機(jī)在結(jié)構(gòu)上突破了典型微機(jī)按邏輯功能決定芯片結(jié)構(gòu)和側(cè)重于數(shù)據(jù)處理 的傳統(tǒng)思想,將構(gòu)成計(jì)算機(jī)的中央處理器、存儲(chǔ)器、 I/O 模塊、相關(guān)接口電路以及 連接它們的總線集成在一塊芯片上。在眾多的單片機(jī)中,德州儀器的MSP430系列單片機(jī)的結(jié)構(gòu)頗具特色,并具有良好的性能。 MSP430系列超低功耗單片機(jī)由針對(duì) 各種不同應(yīng)用目標(biāo)、具有不同外圍模塊的系列芯片組成。本節(jié)將介紹MSP430各系列產(chǎn)品,以及 MSP430系列單片機(jī)中 CPU、存儲(chǔ)器和外圍模塊的結(jié)構(gòu)與組織方式第二章 系統(tǒng)設(shè)計(jì)平臺(tái)簡(jiǎn)介MSP430系列單片機(jī)包含以下主要功能部件:CPU: MSP

26、430系列單片機(jī)的 CPU和通用微處理器基本相同,只是在設(shè)計(jì)上 采用了面向控制的結(jié)構(gòu)和指令系統(tǒng)。 MSP430的內(nèi)核 CPU結(jié)構(gòu)是按照精簡(jiǎn)指令集和 高透明的宗旨而設(shè)計(jì)的,使用的指令有硬件執(zhí)行的內(nèi)核指令和基于現(xiàn)有硬件結(jié)構(gòu) 的仿真指令。這樣可以提高指令執(zhí)行速度和效率,增強(qiáng) MSP430的實(shí)時(shí)處理能力。 存儲(chǔ)器:存儲(chǔ)程序、數(shù)據(jù)以及外圍模塊的運(yùn)行控制信息。有程序存儲(chǔ)器和 數(shù)據(jù)存儲(chǔ)器。對(duì)程序存儲(chǔ)器訪問總是以字的形式取得代碼,而對(duì)數(shù)據(jù)可以用字或 字節(jié)方式訪問。其中 MSP430各系列單片機(jī)的程序存儲(chǔ)器有 ROM、OTP、EPROM和 FLASH 型。 外圍模塊:經(jīng)過 MAB、MDB、中斷服務(wù)及請(qǐng)求線與 C

27、PU相連。 MSP430不同系 列產(chǎn)品所包含外圍模塊的種類及數(shù)目可能不同。它們分別是以下一些外圍模塊的 組合:時(shí)鐘模塊,看門狗,定時(shí)器 A,定時(shí)器 B,比較器 A,串口 0、1,硬件乘法 器,液晶驅(qū)動(dòng)器,模數(shù)轉(zhuǎn)換,數(shù)模轉(zhuǎn)換,端口,基本定時(shí)器,DMA控制器等。MSP430系列單片機(jī)結(jié)構(gòu)如圖 2.3 所示圖 2.3 MSP430 單片機(jī)內(nèi)部結(jié)構(gòu)2.3CC1100 原理及結(jié)構(gòu)CC1100是一種低成本真正單片的 UHF( Ultra High Frequency,特高頻)收發(fā)器,為低功耗無(wú)線應(yīng)用而設(shè)計(jì)。電路主要設(shè)定為在 315、433、868和 915MHz 的 ISM(工業(yè),科學(xué)和醫(yī)學(xué))和 SRD(

28、短距離設(shè)備)頻率波段,也可以容易地設(shè)置 為 300-348 MHz、400-464 MHz 和 800-928 MHz 的其他頻率。RF收發(fā)器集成了一個(gè)高度可配置的調(diào)制解調(diào)器。 這個(gè)調(diào)制解調(diào)器支持不同的調(diào) 制格式, 其數(shù)據(jù)傳輸率可達(dá) 500kbps。通過開啟集成在調(diào)制解調(diào)器上的前向誤差校 正選項(xiàng),能使性能得到提升。CC1100為數(shù)據(jù)包處理、數(shù)據(jù)緩沖、突發(fā)數(shù)據(jù)傳輸、清晰信道評(píng)估、連接質(zhì)量 指示和電磁波激發(fā)提供廣泛的硬件支持。 CC1100內(nèi)部結(jié)構(gòu)如圖 2.4 所示?;?CC1100 芯片的無(wú)線通信模塊的設(shè)計(jì)圖2.4 CC1100 內(nèi)部接口主要特性: 體積小,極少的外部元件,芯片內(nèi)頻率合成器,不

29、需要外部濾波器或 RF轉(zhuǎn) 換,快速頻率變動(dòng)合成器帶來(lái)的合適的頻率跳躍系統(tǒng),自動(dòng)頻率補(bǔ)償可用來(lái)調(diào)整 頻率合成器到接收中間頻率。 真正的單片 UHF RF收發(fā)器,自動(dòng)低功率 RX拉電路的電磁波激活功能,許多 強(qiáng)大的數(shù)字特征,使得使用廉價(jià)的微控制器就能得到高性能的 RF系統(tǒng) 頻率波段: 300-348 MHz、 400-464 MHz和 800-928 MHz,可編程信道濾波帶 寬,2-FSK,GFSK和MSK支持。 高靈敏度,支持傳輸前自動(dòng)清理信道訪問( CCA),即載波偵聽系統(tǒng)。 可編程控制的數(shù)據(jù)傳輸率,可達(dá) 500kbps ,可編程控制的輸出功率,對(duì)所有 的支持頻率可達(dá) +10dBm,可編程控

30、制的基帶調(diào)制解調(diào)器。 對(duì)數(shù)據(jù)包導(dǎo)向系統(tǒng)的靈活支持,對(duì)同步詞匯偵測(cè)的芯片支持,地址檢查, 對(duì)數(shù)據(jù)的可選自動(dòng)白化處理。 對(duì)現(xiàn)存通信協(xié)議的向后兼容的異步透明接收 / 傳輸模式的支持 優(yōu)秀的接收器選擇性和模塊化性能 可控的數(shù)據(jù)包處理硬,單獨(dú)的 64字節(jié) RX和TX數(shù)據(jù)FIFO10第二章 系統(tǒng)設(shè)計(jì)平臺(tái)簡(jiǎn)介CC1100的主要操作參數(shù)和 64位傳輸/ 接收FIFO(先進(jìn)先出堆棧) 可通過 SPI接口 控制。這是本文研究的重點(diǎn),具體的控制方案在后面的硬件設(shè)計(jì)與軟件設(shè)計(jì)中會(huì) 詳細(xì)講解。2.4開發(fā)平臺(tái)簡(jiǎn)介2.4.1IAR430使用 IAR430 進(jìn)行單片機(jī)軟件開發(fā), IAR 是全球領(lǐng)先的嵌入式系統(tǒng)開發(fā)工具和 服務(wù)

31、的供應(yīng)商。公司成立于 1983 年,迄今已有 27 年,提供的產(chǎn)品和服務(wù)涉及到 嵌入式系統(tǒng)的設(shè)計(jì)、開發(fā)和測(cè)試的每一個(gè)階段,包括:帶有C/C+編譯器和調(diào)試器的集成開發(fā)環(huán)境 (IDE) 、實(shí)時(shí)操作系統(tǒng)和中間件、開發(fā)套件、硬件仿真器以及 狀態(tài)機(jī)建模工具。IAR Embedded Workbench 可以為 MSP430 微控制器生成極為高效和可靠的 代碼。除了有這些可靠的技術(shù)之外, IAR Systems 還為您提供專業(yè)化的全球技術(shù)支 持。 IAR430 特點(diǎn): 用于構(gòu)建和調(diào)試嵌入式應(yīng)用程序的無(wú)縫集成開發(fā)環(huán)境, 強(qiáng)大的工程管理器, 允許同一工作區(qū)管理多個(gè)工程。 工程的層次化表示方法,可??看翱诤透?dòng)

32、窗口管理,三智能型源文件瀏 覽器。 帶有代碼模板和支持多字節(jié)等豐富特色的編輯器,可以在全局層次、源文 件組層次、或者單個(gè)的源文件層次上進(jìn)行配置。 靈活的工程編譯,如批量編譯,前 / 后編譯或在編譯過程中訪問外部工具的 客戶定制編譯。 高度優(yōu)化的 C/C+ 編譯器,支持 C,EC+和擴(kuò)展 EC+,并且包含有模板, 名字空間和標(biāo)準(zhǔn)模板庫(kù)( STL )等。 支持所有 MSP430 和 MSP430X 架構(gòu)的芯片。 針對(duì)特定目標(biāo)的嵌入式應(yīng)用程序的語(yǔ)言擴(kuò)展 用于數(shù)據(jù) / 函數(shù)定義和存儲(chǔ)器 及類型屬性 聲明的擴(kuò)展關(guān)鍵字使用 Pragma指令控制編譯器行為,比如用來(lái)分配 內(nèi)存在 C 源碼中可直接訪問的本征函

33、數(shù), 從而執(zhí)行低級(jí)處理器操作, 例如 MSP430 省電模式。 高級(jí)的全局優(yōu)化和特定優(yōu)化相結(jié)合,可以生成最為緊湊和穩(wěn)定的代碼11基于 CC1100 芯片的無(wú)線通信模塊的設(shè)計(jì)2.4.2 Altium Designer 6硬件部分原理圖的繪制采用經(jīng)典的 EDA工具 Altium Designer 6 ,隨著電子技 術(shù)的迅速發(fā)展,大規(guī)模、超大規(guī)模集成電路的應(yīng)用使印制電路板(PCB)的布線更加精密和復(fù)雜,因此很多廠商都推出了自己的電子線路CAD(Computer AidedDesign 計(jì)算機(jī)輔助設(shè)計(jì))軟件,其中 Protel 以其界面友好、功能完善、操作簡(jiǎn) 單、易學(xué)易用等優(yōu)點(diǎn),在 ED(A Elec

34、tronic Design Automation 電子設(shè)計(jì)自動(dòng)化) 領(lǐng)域得到廣泛使用,深受廣大電子愛好者歡迎并作為首選的軟件。Altium Designer 6 是原 Protel 軟件開發(fā)商 Altium( 澳大利亞)公司于 2006 年推出的一體化的電子產(chǎn)品開發(fā)系統(tǒng),主要運(yùn)行在Windows XP、Win7 操作系統(tǒng)上。Altium Designer 發(fā)展歷程: 1988 年, Protel Technology 公司設(shè)計(jì)的 DOS 版電路設(shè)計(jì)軟件以其 “易 學(xué)、實(shí)用 ”的特點(diǎn)受到廣大電路設(shè)計(jì)人員的歡迎。 進(jìn)入 20 世紀(jì) 90 年代, Protel Technology 公司及時(shí)推出了基

35、于 Windows的 Protel 。軟件 Protel for Windows 1.0版。1994 年和 1997 年分別推出了 Protel for Windows 2.0 版和 Protel for Windows 3.0 版。1998 年 Protel 公司推出了 Protel 98 ,特別是出色的自動(dòng)布線功能得到了 用戶的支持。1999 年和 2000 年分別推出了 Protel 99 和 Protel 99SE 。2002年8月推出了令人期待的最新產(chǎn)品 Protel DXP( 2000年的 8月Protel Technology 成功地整合了多家 EDA軟件公司,并更名為 Alti

36、um 公司)。2004 年和 2005 年 Alitum 公司分別推出了 Protel DXP 2004 和 Protel DXP 2004 SP2(可以選擇中文操作界面)。2005 年年底, Altium 公司推出了 Protel 系列電子設(shè)計(jì)軟件的最新高端產(chǎn) 品Altium Designer 6.0 。2008 年 3 月 12 日晚 Altium 公司推出了 Altium Designer 6.9 。Altium Designer 6 極大地增強(qiáng)了 FPGA-PCB協(xié)同設(shè)計(jì)的能力,工程師可以充分 利用 FPGA作為系統(tǒng)平臺(tái),而且簡(jiǎn)化大型 FPGA與物理 PCB平臺(tái)的集成。12第二章 系統(tǒng)

37、設(shè)計(jì)平臺(tái)簡(jiǎn)介雖然人們?cè)缇驼J(rèn)識(shí)到了 FPGA 給邏輯開發(fā)帶來(lái)的好處,但把這些器件集成到 PCB設(shè)計(jì)流程所帶來(lái)的挑戰(zhàn),會(huì)使得 PCB 線路板設(shè)計(jì)變得十分復(fù)雜并導(dǎo)致整體設(shè) 計(jì)時(shí)間超長(zhǎng)。通常無(wú)需考慮 PCB 版圖即進(jìn)行 FPGA 管腳分配,而在大規(guī)??删幊?器件中使用的密集封裝技術(shù)將使得 PCB 板布線成為極大的挑戰(zhàn)。Altium Designer 打破了 FPGA的使用障礙,把硬連接的 PCB平臺(tái)和軟件及軟連 接的邏輯開發(fā)集成在一起,后者構(gòu)成的嵌入式智能通過在PCB 線路板上編程以創(chuàng)建完整的應(yīng)用。 Altium Designer 6.0 改進(jìn)了 FPGA級(jí)設(shè)計(jì)和 PCB級(jí)設(shè)計(jì)間的集成, 開發(fā)了很多新

38、功能,與現(xiàn)在的大型可編程器件相結(jié)合,它們精簡(jiǎn)了產(chǎn)品開發(fā)。大型 FPGA器件的可用性正改變著工程師的系統(tǒng)設(shè)計(jì)方法產(chǎn)品中可以添加 更多智能并同時(shí)縮短設(shè)計(jì)時(shí)間,減少制造成本?!?Altium 的創(chuàng)始人和 CEO Nick Martin 說(shuō),“ Altium Designer 6.0 可幫助工程師在嵌入式智能級(jí)和物理設(shè)計(jì)級(jí) 充分利用 FPGA提供的好處,系統(tǒng)的統(tǒng)一特性打破了在主流設(shè)計(jì)中廣泛采用可編程 器件的障礙,這樣可以充分利用這些器件的擴(kuò)展資源,簡(jiǎn)化邏輯和物理設(shè)計(jì)。Altium Designer 6.0 引入了動(dòng)態(tài)網(wǎng)絡(luò)重分配概念, PCB布線期間可在線交換 FPGA管腳。這包括重新分配預(yù)先布線的子網(wǎng)

39、和交換鏈接的差分信號(hào)對(duì),差分信號(hào) 對(duì)可利用 FPGA器件上充分的 LVDS 資源。動(dòng)態(tài)網(wǎng)絡(luò)重分配在板級(jí)具有增強(qiáng)了的 FPGA管腳優(yōu)化引擎,允許工程師充分利用 FPGA器件管腳的可重新編程特性,在 PCB板極獲得最優(yōu)的布線方案。 Altium Designer 系統(tǒng)的統(tǒng)一特性允許在板級(jí)完成 的管腳交換和 FPGA項(xiàng)目的自動(dòng)同步,減少手動(dòng)調(diào)整處理 I/O 的耗時(shí)。通常帶有大量管腳的 FPGA器件是密集 BGA型封裝。這給原型階段的調(diào)試帶來(lái) 很大困難 ,因?yàn)?這些器件上的 管腳不 能直接探 測(cè)。 Altium Designer 的 LiveDesign 開發(fā)方法允許工程師在開發(fā)中可與基于FPGA的設(shè)

40、計(jì)直接交互。Altium Designer 6.0 具有改進(jìn)的 JTAG器件瀏覽器,可提供系統(tǒng)中所有 JTAG器件 的管腳狀態(tài)顯示,在調(diào)試期間工程師可以實(shí)時(shí)檢測(cè)管腳信號(hào)狀態(tài)。管腳狀態(tài)也可 以在源原理圖和 PCB版圖動(dòng)態(tài)顯示,定位查看設(shè)計(jì)文檔內(nèi)的信號(hào)狀態(tài)。另外 還有 Altium Designer 的 FPGA虛擬儀器,可用來(lái)設(shè)定并監(jiān)控 FPGA內(nèi)的信號(hào),給 設(shè)計(jì)師提供電路運(yùn)行完整的狀態(tài)圖,以進(jìn)行系統(tǒng)的邏輯和物理調(diào)試。1314基于 CC1100 芯片的無(wú)線通信模塊的設(shè)計(jì)第三章 硬件平臺(tái)的設(shè)計(jì)第三章 硬件平臺(tái)的設(shè)計(jì)3.1 MSP430 最小系統(tǒng)設(shè)計(jì)最終要實(shí)現(xiàn)的結(jié)果是 MSP430+CC110發(fā)0

41、送節(jié)點(diǎn)將采集到的溫度值以及 AI ,DI 等通過 CC1100模塊發(fā)出去,收端接收到數(shù)據(jù)后通過串口連接到 PC機(jī)上顯 示,上下位機(jī)常用的接口有串口, PCI接口, USB接口等,但串口是應(yīng)用的最多的 接口之一,其由于通信協(xié)議簡(jiǎn)單,數(shù)據(jù)傳輸可靠,深受廣大設(shè)計(jì)者的青睞,在這 次的設(shè)計(jì)中,簡(jiǎn)化了串口的功能,只用到 RXD,TXD兩根信號(hào)線,其他的握手信號(hào) 沒有使用,因?yàn)閱纹瑱C(jī) UART接口輸出的是 3.3V 的 TTL 信號(hào),所以需要一個(gè)轉(zhuǎn)換 電路將其轉(zhuǎn)換為 PC端能夠識(shí)別的 232 電平,本次設(shè)計(jì)采用 MAX232實(shí)現(xiàn)此功能, MAX232芯片是美信公司專門為電腦的標(biāo)準(zhǔn)串口設(shè)計(jì)的單電源電平轉(zhuǎn)換芯片

42、, 使用+3.3V 單電源供電。電平轉(zhuǎn)換電路如圖 3.1 所示。圖 3.1 串口電路構(gòu)成最小系統(tǒng)的另一部分當(dāng)然是 MSP430主芯片以及其時(shí)鐘電路,如圖 3.2 所 示,復(fù)位電路,外圍電路等,如圖 3.2 所示,在本次設(shè)計(jì)中, MSP430單片機(jī)的震 蕩源采用 8MHZ,32.768KHZ主要作為 RTC時(shí)鐘,使 RTC模塊得到穩(wěn)定的 1HZ。通過 內(nèi)部 DPLL電路也可以為單片機(jī)提供一個(gè)穩(wěn)定的時(shí)鐘源。時(shí)鐘通過程序配置相應(yīng)的 寄存器來(lái)實(shí)現(xiàn),在主芯片電源引腳上,電路中采用了大量的去耦電容,一般包括 低頻去耦和高頻去耦電容,去耦電容也稱退耦電容,是把輸出信號(hào)的干擾作為濾 除對(duì)象。去耦電容用在放大電

43、路中不需要交流的地方,用來(lái)消除自激,使電路穩(wěn) 定工作。15C20, R10, S3 構(gòu)成了系統(tǒng)的復(fù)位電路,復(fù)位電路的方案有很多種,較大型的 系統(tǒng)一般采用專用的復(fù)位芯片,在復(fù)位時(shí)間和電平上有嚴(yán)格的控制,本次設(shè)計(jì) 中,因?yàn)橄到y(tǒng)的組成比較簡(jiǎn)單,所以我們采用常用 RC上電復(fù)位電路,這種電路的 特點(diǎn)是成本能控制的比較低,并且能夠簡(jiǎn)單有效的控制系統(tǒng)的復(fù)位, S1 的作用是 提供給用戶手動(dòng)復(fù)位系統(tǒng)。圖 3.3 復(fù)位及去耦電路如圖 3.4 所示,為 MSP430的 JTAG接口以及與 CC1100之間的接口, JTAG接口 使用邊界掃描技術(shù),廣泛在嵌入式處理器中使用, MSP430單片機(jī)可以通過 JTAG接

44、口實(shí)現(xiàn)在線仿真調(diào)試,以及下載編程文件到 FLASH中, MSP430與 CC1100之間通過 4 線 SPI 接口進(jìn)行通信, GDO為 CC1100狀態(tài)指示引腳。圖 3.4 JTAG 及 CC1100 接口16第三章 硬件平臺(tái)的設(shè)計(jì)3.2 電源系統(tǒng)本次設(shè)計(jì)需要 5V與3.3V兩組電源, 5V通過電池便可以提供,生成 3.3V的方 案有兩種,線性電源和開關(guān)電源,線性電源具有輸出紋波小,結(jié)構(gòu)簡(jiǎn)單等優(yōu)點(diǎn), 廣泛用于對(duì)電源噪聲有嚴(yán)格要求的系統(tǒng),比如音頻功放,射頻放大器等,但由于 線性電源在運(yùn)行中具有一定的壓降,所以有一部分功率變成為了熱量,工作效率 非常低,開關(guān)電源的開關(guān)管總是工作在飽和與截止?fàn)顟B(tài),所

45、以管損耗很低,工作 效率非常高,但不足的是輸出中諧波分量比較大,整個(gè)電源噪聲比較大。因?yàn)橄到y(tǒng)的工作電流本來(lái)比較小,加之射頻部分需要一個(gè)穩(wěn)定的電源,綜上 考慮,我們采用線性電源來(lái)提供系統(tǒng)所需要的 3.3V ,具體電路如下所示, D1的作 用是防電源接反保護(hù), AMS1117-3.3 是一款線性穩(wěn)壓管,三端可調(diào)或固定電壓 3.3V 輸出,最大電流為 1A,管腳 4 是反饋輸入端, C8,C10的作用是去除交流噪 聲,以提高環(huán)路的穩(wěn)定性,最后使用的一個(gè) LC濾波器進(jìn)一步濾除紋波,減小 3.3V 輸出的交流分量, L2 的作用是將模擬地和數(shù)字地進(jìn)行隔開,以減小數(shù)字噪聲對(duì)模 擬部分的影響。17基于 CC

46、1100 芯片的無(wú)線通信模塊的設(shè)計(jì)3.3 人機(jī)接口與傳感器部分人機(jī)接口部分主要包括兩個(gè)按鍵和兩個(gè) LED,按鍵起到 DI 的功能,模擬外部 的開關(guān)量, R7,C1構(gòu)成 RC低通濾波器,以消除按鍵抖動(dòng), LED 起到 DO的功能, 它們的主要作用是方便系統(tǒng)的調(diào)試。圖 3.5圖 3.6傳感器部分主要由 DS18B20溫度傳感器組成, DS18B20 數(shù)字式溫度傳感器, 與傳統(tǒng)的熱敏電阻有所不同的是,使用集成芯片,采用單總線技術(shù),其能夠有效 的減小外界的干擾,提高測(cè)量的精度,同時(shí),它可以直接將被測(cè)溫度轉(zhuǎn)化成串行 數(shù)字信號(hào)供微機(jī)處理,接口簡(jiǎn)單,使數(shù)據(jù)傳輸和處理簡(jiǎn)單化。部分功能電路的集 成,使總體硬件設(shè)

47、計(jì)更簡(jiǎn)潔,能有效地降低成本,搭建電路和焊接電路時(shí)更快, 調(diào)試也更方便簡(jiǎn)單化,這也就縮短了開發(fā)的周期。圖 3.7 溫度傳感器及 LED 電路18第三章 硬件平臺(tái)的設(shè)計(jì)3.4 CC1100 電路設(shè)計(jì)使用 CCll00 只需要少量的外部元件。 C1,C3,L1和 L4形成一個(gè)平衡轉(zhuǎn)換器, 用以將 CCll00 上的差分 RF端口轉(zhuǎn)換成單端的 RF信號(hào)。后面的 LC 網(wǎng)絡(luò)主要起阻 抗匹配作用,達(dá)到將阻抗轉(zhuǎn)換以匹配 50 歐的天線。使用 SmartRF Studio 軟件可 容易計(jì)算出相應(yīng)的元件值,阻抗匹配是指負(fù)載阻抗與激勵(lì)源內(nèi)部阻抗互相適配, 得到最大功率輸出的一種工作狀態(tài)。對(duì)于不同特性的電路,匹配條

48、件是不一樣 的。在純電阻電路中,當(dāng)負(fù)載電阻等于激勵(lì)源內(nèi)阻時(shí),則輸出功率為最大,這種 工作狀態(tài)稱為匹配,否則稱為失配。當(dāng)激勵(lì)源內(nèi)阻抗和負(fù)載阻抗含有電抗成份 時(shí),為使負(fù)載得到最大功率,負(fù)載阻抗與內(nèi)阻必須滿足共扼關(guān)系,即電阻成份相 等,電抗成份只數(shù)值相等而符號(hào)相反。這種匹配條件稱為共扼匹配。 阻抗匹配 主要用于傳輸線上,來(lái)達(dá)至所有高頻的微波信號(hào)皆能傳至負(fù)載點(diǎn)的目的,不會(huì)有 信號(hào)反射回來(lái)源點(diǎn),從而提升能源效益。CC1100與 MCU的接口為 SPI 總線,僅需 SCLK,SO, SI ,CS_N幾根線便可實(shí)現(xiàn) 與單片機(jī)進(jìn)行通信, GDO為 CC1100 的通用數(shù)字輸出,主要作為狀態(tài)指示信號(hào)使 用。CC

49、1100外部震蕩時(shí)鐘為 26MHZ,通過內(nèi)部 PLL合成射頻部分所需要的時(shí)鐘。, 兩個(gè) 27pF 電容主要是起相位補(bǔ)償作用,使輸出時(shí)鐘更可靠,在布局布線中這部分 電路緊鄰管腳,并且進(jìn)行包地,以提供給 CC1100一個(gè)干凈的振蕩源,從而減小了 系統(tǒng)的誤碼率。本次應(yīng)用中,射頻部分工作在 433MHZ,相應(yīng)的巴倫電路以及匹配電路如下圖 所示。圖 3.8 CC1100 電路1920基于 CC1100 芯片的無(wú)線通信模塊的設(shè)計(jì)TXTX APPAPP第四章 單片機(jī)軟件設(shè)計(jì)第四章 單片機(jī)軟件設(shè)計(jì)4.1 程序整體結(jié)構(gòu)單片機(jī)程序的整體框架為應(yīng)用程序 +驅(qū)動(dòng)程序結(jié)構(gòu),驅(qū)動(dòng)程序包含 CC1100 驅(qū)動(dòng)程序, SPI

50、接口驅(qū)動(dòng)程序, CC1100的通信接口為 SPI 接口,使用 SPI 驅(qū)動(dòng) 程序可以將對(duì)應(yīng)的數(shù)據(jù)或者指令寫入到 CC1100中。 CC1100驅(qū)動(dòng)程序主要包括 復(fù)位 CC1100,寫命令,寫單個(gè)寄存器,讀狀態(tài),讀單個(gè)寄存器,突發(fā)寫寄存 器,突發(fā)讀寄存器,發(fā)送數(shù)據(jù)包,接收數(shù)據(jù)包, RF 設(shè)定參數(shù)等功能函數(shù)。這 些函數(shù)將在下一節(jié)進(jìn)行詳細(xì)介紹。應(yīng)用程序主要是針對(duì)實(shí)現(xiàn)具體功能的一些代碼,本次設(shè)計(jì)中主要是采集 溫度量以及獲取 DI 量,DI 即 Digtal Input 的簡(jiǎn)寫,有 1和 0 兩種狀態(tài),在 實(shí)際的工程應(yīng)用中經(jīng)常進(jìn)行 DI 的采集,例如煙霧傳感器信號(hào)經(jīng)過后級(jí)相應(yīng)電 路進(jìn)行處理后得到指示是否

51、有煙霧的 0,1 信號(hào)。溫度的采集使用 DALLAS半導(dǎo) 體推出的 1-wire 溫度傳感器,只需用編寫少量的程序便可以實(shí)現(xiàn)溫度的讀 取。具體 Application 代碼又分為發(fā)送端 TX APP,接收端 RX APP。系統(tǒng)的整 體程框圖如圖 4.1 所示,最底層為相應(yīng)的硬件即 CC1100,以及 MSP430F149內(nèi) 部相應(yīng)的設(shè)備,中間為驅(qū)動(dòng)層,上層為應(yīng)用代碼層,使用無(wú)操作系統(tǒng)的前后 臺(tái)來(lái)實(shí)現(xiàn)功能。RXRX APPAPPDriversDriversRF1100.cRF1100.c SPI.cSPI.cHARDWAREHARDWARE圖 4.1 軟件整體框架21基于 CC1100 芯片的無(wú)

52、線通信模塊的設(shè)計(jì)4.2 CC1100 底層驅(qū)動(dòng)程序介紹4.2.1 寫指令寫指令函數(shù)主要功能是寫入相應(yīng)的命令到 CC1100模塊內(nèi),例如復(fù)位命令,狀 態(tài)切換命令, CC1100內(nèi)部有一個(gè)狀態(tài)機(jī)來(lái)控制 IC 的工作的狀態(tài),如 IDLE 空閑狀 態(tài), Sleep 睡眠狀態(tài), TransmitMode 發(fā)送狀態(tài), ReceiveMode接收狀態(tài)等,寫入對(duì) 應(yīng)的指令即可以進(jìn)行相應(yīng)的狀態(tài),具體函數(shù)如下所示:void halSpiStrobe ( INT8U strobe )CSn = 0;等待 SO 置低;SPI 發(fā)送 ( strobe ); / 寫入相應(yīng)命令CSn = 1;將 CSn拉低后, CC110

53、0進(jìn)入就緒狀態(tài),當(dāng) SO變成電平后便可以將指令寫入, 具體時(shí)序如圖 4.2 所示。圖 4.2 寫命令時(shí)序圖22第四章 單片機(jī)軟件設(shè)計(jì)4.2.2寫寄存器CC1100 內(nèi)部有相應(yīng)的控制寄存器,和 FIFO 寄存器等,如地址為 0 x09 的 CC1100_ADD設(shè)R備地址寄存器,寫相應(yīng)的寄存器需先等待設(shè)備 Ready后,寫入寄存 器地址后,然后寫入相應(yīng)的數(shù)據(jù),具體函數(shù)如下:void halSpiWriteReg( INT8U addr , INT8U value )CSN_0 ;等待設(shè)備就緒 ;SpiTxRxByte( addr );/ 寫地址SpiTxRxByte( value );/ 寫數(shù)據(jù)C

54、SN_1 ;相應(yīng)的寫寄存器時(shí)序如圖 4.3 所示。另一種寫寄存器的方式為突發(fā)寫,這種 方式可以一次性寫入多個(gè)數(shù)據(jù)到寄存器,常用來(lái)寫一些數(shù)據(jù)到發(fā)送緩存。相應(yīng)的 功能函數(shù)如下所示:void halSpiWriteBurstReg( INT8U addr , INT8U * buffer , INT8U count)INT8U i , temp ;temp = addr| WRITE_BURST ;/突發(fā)模式CSN_0 ;while ( P2IN& 0 x02 );/等待設(shè)備就緒SpiTxRxByte( temp );for ( i = 0;i count ; i +)SpiTxRxByte( bu

55、ffer i );/寫數(shù)據(jù)CSN_123圖基于 CC1100 芯片的無(wú)線通信模塊的設(shè)計(jì)4.2.3讀寄存器讀寄存器函數(shù)用來(lái)讀取指定地址寄存器的值, 通過 halSpiReadReg ( INT8U addr ) 函數(shù)可以讀取相應(yīng)寄存器的值,同寫寄存器一樣,讀一個(gè)寄存也需要等待設(shè)備就 緒后,然后寫入相應(yīng)的地址,接著讀取對(duì)應(yīng)地址寄存器的值。讀寄存器時(shí)序圖如圖 4.3 所示。另一種讀寄存器的方式為突發(fā)讀,可以一次 性讀取多個(gè)數(shù)據(jù),相應(yīng)的功能函數(shù)為 halSpiReadBurstReg();4.3 讀寫時(shí)序圖4.2.4讀狀態(tài)讀狀態(tài)函數(shù)主要功能是讀取相應(yīng)狀態(tài)寄存器的內(nèi)容,例如 FIFO 使用了多少 等,其

56、代碼與讀寄存器函數(shù)類似。24第四章 單片機(jī)軟件設(shè)計(jì)254.2.5發(fā)送數(shù)據(jù)包發(fā)送數(shù)據(jù)包的流程圖如圖 4.4 所示,在這個(gè)函數(shù)里調(diào)用了前面的幾個(gè)函數(shù), 首先將數(shù)據(jù)包的長(zhǎng)度寫入到發(fā)送 FIFO 中去,接著將數(shù)據(jù)包寫到 FIFO 中,寫完 后,執(zhí)行 STX命令使 CC1100進(jìn)入發(fā)送狀態(tài),將 FIFO 的數(shù)據(jù)發(fā)出,然后等待 GDO0 置位表示開始發(fā)送,接著等待 GDO0清零表示發(fā)送完成,接著程序執(zhí)行清除 TXFIFO 命令 。功能 函數(shù) 的 名稱為 void halRfSendPacket(INT8U *txBuffer, INT8U size) , 入口為數(shù)據(jù)緩沖區(qū)指針,數(shù)據(jù)數(shù)量。圖 4.4 發(fā)數(shù)據(jù)

57、包流程圖基于 CC1100 芯片的無(wú)線通信模塊的設(shè)計(jì)4.2.6接收數(shù)據(jù)包接收數(shù)據(jù) 包函數(shù) 為 INT8U halRfReceivePacket(INT8U *rxBuffer, INT8U *length) ,函數(shù)入口為接收緩沖數(shù)組指針,數(shù)據(jù)包長(zhǎng)度指針,當(dāng)調(diào)用此函數(shù)后, 首先執(zhí)行進(jìn)入接收狀態(tài)命令,然后程序等待 CC1100進(jìn)入接收狀態(tài),進(jìn)入后,判斷 是否收到數(shù)據(jù),即判斷 FIFO 里面是否有數(shù)據(jù),如果沒有,程序返回 0, 如果有數(shù)據(jù),那么讀取第一個(gè)字節(jié),第一個(gè)字節(jié)為數(shù)據(jù)包的長(zhǎng)度,如果數(shù)據(jù)包的 長(zhǎng)度大于接收緩沖區(qū)的長(zhǎng)度,程序不作接收數(shù)據(jù)處理,直接返回0,如果小于等于數(shù)據(jù)緩沖區(qū)的長(zhǎng)度,進(jìn)入下一步,讀取 RXFIFO中所有數(shù)據(jù),使用 Burst 模式進(jìn) 行數(shù)據(jù)的讀取,并將接收緩沖區(qū)的長(zhǎng)度更新為數(shù)據(jù)包的長(zhǎng)度,接下進(jìn)行CRC校驗(yàn),因?yàn)?CC1100內(nèi)部自帶硬件 CRC,所以直接可以讀取相應(yīng)的校驗(yàn)結(jié)果,讀取狀 態(tài)寄存器的 CRC校驗(yàn)位,判斷是否校驗(yàn)成功,如果成功返回 1,失敗的話放棄數(shù)據(jù) 包,返回 0。發(fā)送數(shù)據(jù)包詳細(xì)的流程圖如圖 4.5 所示。26圖 4.5

溫馨提示

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

評(píng)論

0/150

提交評(píng)論