2.4G各信道信號(hào)強(qiáng)度測(cè)試實(shí)驗(yàn)要點(diǎn)_第1頁
2.4G各信道信號(hào)強(qiáng)度測(cè)試實(shí)驗(yàn)要點(diǎn)_第2頁
2.4G各信道信號(hào)強(qiáng)度測(cè)試實(shí)驗(yàn)要點(diǎn)_第3頁
2.4G各信道信號(hào)強(qiáng)度測(cè)試實(shí)驗(yàn)要點(diǎn)_第4頁
2.4G各信道信號(hào)強(qiáng)度測(cè)試實(shí)驗(yàn)要點(diǎn)_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、*實(shí)踐教學(xué)*蘭州理工大學(xué)計(jì)算機(jī)與通信學(xué)院2013年春季學(xué)期嵌入式系統(tǒng)開發(fā)技術(shù)課程設(shè)計(jì)題目:2.4G各信道信號(hào)強(qiáng)度測(cè)試實(shí)驗(yàn)專業(yè)班級(jí):通信工程4班姓名:王強(qiáng)學(xué)號(hào):10250424指導(dǎo)教師:薛建斌成 績(jī):摘要本次課程設(shè)計(jì)使用CC2530的RF射頻CC2530R功能模塊及帶有RF功能模塊的智能主 板分析2.4G頻段信道11-26各個(gè)信道的信號(hào)強(qiáng)度。在模塊設(shè)計(jì)中,在兩個(gè) CC2530的RF 模塊間進(jìn)行無線通信, 并且在無線通信的基礎(chǔ)上進(jìn)行 2.4G 頻段信道 11-26 各個(gè)信道的信號(hào) 強(qiáng)度分析與測(cè)試。而且測(cè)試的效果是通過 LED 燈的亮滅來進(jìn)行監(jiān)測(cè)的。關(guān)鍵詞:CC2530無線通信 2.4G信道信號(hào)監(jiān)測(cè)

2、目錄、八前言 一、CC2530基本介紹 51.1CC2530芯片基本介紹 51.2CC2530芯片引腳功能 51.3 電源引腳功能 61.4 控制線引腳 71.5 強(qiáng)型 8051 內(nèi)核 71.6 復(fù)位 7二、CC2530R模塊以及信號(hào)信道分配模式 8三、設(shè)計(jì)流程 93.1 計(jì)原理及說明 93.2 設(shè)計(jì)步驟 93.3 程序流程圖 10四、測(cè)試 114.1 測(cè)試裝置 114.2 設(shè)計(jì)原理及說明 114.3 測(cè)試步驟 11總結(jié) 13參考文獻(xiàn) 14致謝 15附錄 16、八前言本設(shè)計(jì)是嵌入式應(yīng)用里比較簡(jiǎn)單的一個(gè)實(shí)現(xiàn), 是針對(duì)嵌入式開發(fā)板 CC2530 的一個(gè)模塊進(jìn)行構(gòu)建和設(shè)計(jì)的,要實(shí)現(xiàn)的是兩個(gè) CC25

3、30間的RF的無線通信,并且要對(duì)各個(gè)信道信號(hào) 進(jìn)行監(jiān)測(cè),嵌入式開發(fā)是現(xiàn)階段,現(xiàn)世界比較流行的開發(fā)模式。嵌入式系統(tǒng)(Embedded system)是一種專用的計(jì)算機(jī)系統(tǒng),作為裝置或設(shè)備的一部分。 通常,嵌入式系統(tǒng)是一個(gè)控制程序存儲(chǔ)在 ROM 中的嵌入式處理器控制板。 事實(shí)上, 所有帶 有數(shù)字接口的設(shè)備,如手表、微波爐、錄像機(jī)、汽車等,都使用嵌入式系統(tǒng),有些嵌入式 系統(tǒng)還包含操作系統(tǒng),但大多數(shù)嵌入式系統(tǒng)都是是由單個(gè)程序?qū)崿F(xiàn)整個(gè)控制邏輯。嵌入式系統(tǒng)是一種 “完全嵌入受控器件內(nèi)部,為特定應(yīng)用而設(shè)計(jì)的專用計(jì)算機(jī)系統(tǒng) ”, 根據(jù)英國電器工程師協(xié)會(huì) ( U.K. Institution of Electr

4、ical Engineer )的定義, 嵌入式系統(tǒng)為控 制、監(jiān)視或輔助設(shè)備、機(jī)器或用于工廠運(yùn)作的設(shè)備。與個(gè)人計(jì)算機(jī)這樣的通用計(jì)算機(jī)系統(tǒng) 不同,嵌入式系統(tǒng)通常執(zhí)行的是帶有特定要求的預(yù)先定義的任務(wù)。由于嵌入式系統(tǒng)只針對(duì) 一項(xiàng)特殊的任務(wù),設(shè)計(jì)人員能夠?qū)λM(jìn)行優(yōu)化,減小尺寸降低成本。由于嵌入式系統(tǒng)通常 進(jìn)行大量生產(chǎn)。所以單個(gè)的成本節(jié)約,能夠隨著產(chǎn)量進(jìn)行成百上千的放大。由于個(gè)人數(shù)碼助理(PDA,Personal Digital Assistan)及手持設(shè)備在硬件上設(shè)計(jì)的特性, 即使在軟件上的擴(kuò)充性比其他設(shè)備來得好,但普遍被認(rèn)為是嵌入式設(shè)備。但是這個(gè)定義也 逐漸模糊。舉例來說,In tel公司的凌動(dòng)(AT

5、OM )微處理器原本是為了移動(dòng)互聯(lián)網(wǎng)設(shè)備(MID, Mobile In ternet Device)這一類的嵌入式系統(tǒng)設(shè)計(jì)的,但是現(xiàn)在更多的被應(yīng)用于上網(wǎng)本(Netbook),而上網(wǎng)本屬于使用 Windows或者Linux的個(gè)人計(jì)算機(jī),因此嵌入式系統(tǒng)的定 義又更模糊了。嵌入式系統(tǒng)的核心是由一個(gè)或幾個(gè)預(yù)先編程好以用來執(zhí)行少數(shù)幾項(xiàng)任務(wù)的微處理器或 者單片機(jī)組成。與通用計(jì)算機(jī)能夠運(yùn)行用戶選擇的軟件不同,嵌入式系統(tǒng)上的軟件通常是 暫時(shí)不變的;所以經(jīng)常稱為 “固件”。、 CC2530 基本介紹1.1CC2530 芯片基本介紹CC2530 芯片具有如下主要性能:高性能和低功耗的 8051 微控制器核; 32

6、 KB、64 KB 或128KB的系統(tǒng)內(nèi)可編程閃存;8-KB RAM具備在各種供電方式下的數(shù)據(jù)保持能力;集成 符合 IEEE 802.15.4 標(biāo)準(zhǔn)的 2.4GHz 的 RF 無線電收發(fā)機(jī);極高的接收靈敏度和抗干擾性 能;可編程的輸出功率高達(dá)4.5dBm ;只需一個(gè)晶振,即可滿足網(wǎng)狀網(wǎng)絡(luò)系統(tǒng)的需要;在供電模式1時(shí)僅24mA的流耗4卩s就能喚醒系統(tǒng);在睡眠定時(shí)器運(yùn)行時(shí)僅1卩A的流 耗;在供電模式3時(shí)僅0.4卩A的流耗,外部中斷能喚醒系統(tǒng);硬件支持 CSMA/CA功能; 較寬的電壓范圍(2.03.6V);支持精確的數(shù)字化 RSSI/LQI和強(qiáng)大的5通道DMA具有 捕獲功能的32KHZ睡眠定時(shí)器;具

7、有電視監(jiān)視器和溫度傳感器;具有8路舒服和可配置分 辨率的12位ADC;集成了 AES安全協(xié)處理器;帶有2個(gè)支持多種串行通信協(xié)議的強(qiáng)大 USART以及1個(gè)符合IEEE802.15.4 規(guī)范的MAC定時(shí)器,1個(gè)16位定時(shí)器和1個(gè)8位 定時(shí)器;強(qiáng)大和靈活的開發(fā)工具。1.2 CC2530 芯片引腳功能CC2530芯片如圖1所示,它采用6 mmx6 mm的QFN封裝,共有40個(gè)引腳。全部引 腳可以分為 I/O 端口線引腳,電源線引腳和控制線引腳三類。 CC2530 有 21 個(gè)可編程的 I/O 口引腳, P0、P1 口是完全的 8 位口, P2 口只有 5 個(gè)可使用的位。通過軟件設(shè)定一 組SFR寄存器的

8、位和字節(jié),可使這些引腳作為通常的I/O 口或作為連接ADC計(jì)時(shí)器或USART部件的外圍設(shè)備I/O 口使用。I/O 口有下面的關(guān)鍵特性:可設(shè)置為通常的I/O 口, 也可設(shè)置為外圍的 I/O 使用;在輸入時(shí)有上拉和下拉能力;全部 21 個(gè) I/O 口引腳都具 有響應(yīng)外部中斷源輸入口。如果需要外部中斷,可對(duì) I/O 口引腳產(chǎn)生中斷,同時(shí)外部中斷 事件也能被用來喚醒休眠模式。1219腳(P0_7P0_0:具有4mA的輸出驅(qū)動(dòng)能力。11, 9腳(P1_0, P1_1):具有20mA的驅(qū)動(dòng)能力。58, 3718腳(P1_7P1_2):具有4mA的 輸出驅(qū)動(dòng)能力。3238腳(P2_4P2_0 :具有4mA的

9、輸出驅(qū)動(dòng)能力。5sa>Q IdnoDO8D><5Krtowox ZdZQXZCDSOX/t 2dGNDGNDGNDGNDP1 ”5PI 4P1JJP1 2P1_ 1DVDD2RBIASAVOWAVDO1AVDD2RF_NRF_ P AVDO3XOSC.Q2XOSC 01AVDD5圖一 CC2530芯片z 1WS 器od- rod 和od sod giod g £0a1.3電源引腳功能AVDD1(28腳):為模擬電路連接AVDD2(27腳):為模擬電路連接AVDD(24腳):為模擬電路連接AVDD(29腳):為模擬電路連接AVDD(21腳):為模擬電路連接AVDD(3

10、1腳):為模擬電路連接2.0V3.6V的電壓。2.0V3.6V的電壓。2.0V3.6V的電壓。2.0V3.6V的電壓。2.0V3.6V的電壓。2.0V3.6V的電壓。DCOUPL40腳):提供1.8V的數(shù)字電源去耦電壓,不使用外部電路供應(yīng)。DVDD1(39腳):提供2.0V3.6V的數(shù)字電源連接電壓DVDD210腳):提供2.0V3.6V的數(shù)字電源連接電壓71.4 控制線引腳RBIAS( 30 腳):為參考電流提供精確的偏置電阻。RESET_(N 20 腳):復(fù)位引腳,低電平有效。RF_N(26 腳):在 RX 期間向 LNA 輸入負(fù)向射頻信號(hào)。RF_P(25 腳):在 RX 期間向 LNA

11、輸入正向射頻信號(hào)。XOSC_Q122 腳) : 32MHz的晶振引腳1,或外部時(shí)鐘輸入引腳。XOSC_Q223 腳):32MHz的晶振弓I腳 2。1.5 強(qiáng)型 8051 內(nèi)核CC2530 集成了增強(qiáng)工業(yè)標(biāo)準(zhǔn) 8051 內(nèi)核 MCU 核心。該核心使用標(biāo)準(zhǔn) 8051 指令集。每 個(gè)指令周期中的一個(gè)時(shí)鐘周期與標(biāo)準(zhǔn) 8051 每個(gè)指令周期中的 12 個(gè)時(shí)鐘周期相對(duì)應(yīng), 并且 取消了無用的總線狀態(tài),因此其指令執(zhí)行速度比標(biāo)準(zhǔn) 8051 快。由于指令周期在可能的情 況下包含了取指令操作所需的時(shí)間,故絕大多數(shù)單字節(jié)指令在一個(gè)時(shí)鐘周期內(nèi)完成。除了 速度改進(jìn)之外, 增強(qiáng)的 8051 內(nèi)核也包含了下列增強(qiáng)的架構(gòu):

12、第二數(shù)據(jù)指針;擴(kuò)展了 18 個(gè) 中斷源。該 8051 內(nèi)核的目標(biāo)代碼與工業(yè)標(biāo)準(zhǔn) 8051 微控制器目標(biāo)代碼兼容。但是,由于 與標(biāo)準(zhǔn) 8051 使用不同的指令定時(shí),現(xiàn)有的帶有定時(shí)循環(huán)的代碼可能需要修改。此外, 由于 外接設(shè)備單元比如定時(shí)器的串行端口不同于它們?cè)谄渌?8051 內(nèi)核,包含有使用外接設(shè) 備單元特殊功能寄存器 SFR 的指令代碼將不能正常運(yùn)行。 Flash 預(yù)取默認(rèn)是不使能的, 提高了 CPU 高達(dá) 33%的性能。這是以功耗稍有增加為代價(jià)的,但是因?yàn)樗?,所以在?多數(shù)情況下提高了能源消耗。可以在 FCTL寄存器中使能Flash預(yù)取。1.6 復(fù)位CC2530 有 5個(gè)復(fù)位源:強(qiáng)置輸

13、入引腳 RESET_N 為低電平;上電復(fù)位;掉電復(fù)位;看門狗定時(shí)器復(fù) 位;時(shí)鐘丟失復(fù)位。復(fù)位后的初始狀況如下: I/O 引腳設(shè)置為輸入、上拉狀態(tài)( P1.0 和 P1.1 為輸入, 但是沒有上拉/下拉);CPU的程序計(jì)數(shù)器設(shè)置為 0x0000,程序從這里開始運(yùn)行;所有外部設(shè)備的寄存 器初始化到它們的復(fù)位值;看門狗定時(shí)器禁止;時(shí)鐘丟失檢測(cè)禁止。、CC2530RF莫塊以及信號(hào)信道分配模式RF 是 CC2530 的射頻模塊,無線信道的分配 IEEE 802154 規(guī)范的物理層定義了 三個(gè)載波頻段用于收發(fā)數(shù)據(jù): 868868. 6 MHz、902928 MHz和24002 483. 5 MHz。 在這

14、三個(gè)頻段上發(fā)送數(shù)據(jù)使用的速率、信號(hào)處理過程以及調(diào)制方式等方面都存在著一定的 差異,其中 2 400 MHz 頻段的數(shù)據(jù)傳輸速率為 250 kbits,915 MHz、 868 MHz 分別為 40 kbit s 和 20 kbit s。 IEEE 802.15. 4 規(guī)范定義了 27 個(gè)物理信道,信道編號(hào)從 0 至 26,每個(gè)具體的信道對(duì)應(yīng)著一個(gè)中心頻率, 這 27 個(gè)物理信道覆蓋了以上 3 個(gè)不同的頻段。 不同的頻段所對(duì)應(yīng)的寬度不同,標(biāo)準(zhǔn)規(guī)定 868 MHz 頻段定義了 1 個(gè)信道 (0 號(hào)信道);915 MHz 頻段定義了 10個(gè)信道(110 號(hào)信道);2 400 MHz 頻段定義了 16

15、 個(gè)信道(11 26 號(hào) 信道 )。這些信道的中心頻率定義如下:F=868. 3 MHzk=0F=906+2(k-1)MHzk=1, 2,,10F=2405+5(k-11)MHzk=11, 12,,26式中: k 為信道編號(hào)F 為信道對(duì)應(yīng)的中心頻率。通常,ZigBee 硬件設(shè)備不能同時(shí)兼容兩個(gè)工作頻段,在選擇時(shí),應(yīng)符合當(dāng)?shù)責(zé)o線電管理委員會(huì)的規(guī)定。 由于 868 868. 6 MHz 頻 段主要用于歐洲, 902928 MHz 頻段用于北美,4002483.5 MHz 頻段可以用于全球,因此在中國所采用的都是 2400MHz 的工作頻段。三、設(shè)計(jì)流程3.1 計(jì)原理及說明本實(shí)驗(yàn)主要分為 3 大部分

16、,第一部分為初始化與 RF 相關(guān)的信息;第二部分為發(fā)送數(shù) 據(jù)和接收數(shù)據(jù);最后為選擇模塊功能函數(shù)。其中模塊功能的選擇是通過開發(fā)板上的按鍵來 選擇的,其中按鍵功能分配如下:SW1 - 開始測(cè)試(進(jìn)入功能選擇菜單)SW2 - 設(shè)置模塊為接收功能( Light )SW3 - 設(shè)置模塊為發(fā)送功能( Switch)SW4 - 發(fā)送模塊發(fā)送命令按鍵當(dāng)發(fā)送模塊按下 SW4 時(shí),將發(fā)射一個(gè)控制命令,接收模塊在接收到該命令后,將控制 LDE1 的亮或者滅。其中 LED6 為工作指示燈,當(dāng)工作不正常時(shí), LED5 將為亮狀態(tài)。3.2 設(shè)計(jì)步驟1、給智能主板供電(USB外接電源或2節(jié)干電池)。2、將兩個(gè)無線節(jié)點(diǎn)模塊分

17、別插入到兩個(gè)帶 LCD 的智能主板的相應(yīng)位置。3、將 2.4G 的天線安裝在無線節(jié)點(diǎn)模塊上。4、 將CC2530仿真器的一端通過USB線(A型轉(zhuǎn)B型)連接到PC機(jī),另一端通過10Pin 下載線連接到智能主板的 CC2530 JTAG 口( J203)。5、將智能主板上電源開關(guān)撥至開位置。按下仿真器上的按鈕,仿真器上的指示燈為綠 色時(shí),表示連接成功。6、使用 IAR7.51 打開“OURS_CC2530LIBlib11(simple_RF) IAR_files ” 下的 simple_RF.eww 文件,下載程序。7、關(guān)掉智能主板上電源,拔下仿真器,按 4 、 5步驟對(duì)另一個(gè)模塊下載程序。8、打

18、開兩個(gè)模塊的電源,當(dāng) LED1 處于亮?xí)r,按下 SW1 進(jìn)入模塊功能選擇。然后一個(gè)模 塊按下 SW2 設(shè)置為接收功能( Light ),此時(shí) LED3 將被點(diǎn)亮;另一個(gè)模塊按下 SW3 設(shè)置 為發(fā)送功能( Switch ) ,此時(shí) LED4 將被點(diǎn)亮。9、按下發(fā)送模塊的 SW4 按鍵,接收模塊的 LED6 將被點(diǎn)亮,再次按下 SW4 按鍵, LED6 將被熄滅。注:如果需要重新設(shè)置模塊的收發(fā)功能,按復(fù)位按鍵。103.3程序流程圖11#MoswaahHsw*z 對(duì)#四、測(cè)試4.1 測(cè)試裝置1. 裝有 IAR 的 PC 機(jī)一臺(tái);2.2530 仿真器, usb 線( A 型轉(zhuǎn) B 型) ;3. 無線

19、節(jié)點(diǎn)模塊 1 塊,帶 LCD 的智能主板 1 塊, 2.4G 天線 1 根。4.2 設(shè)計(jì)原理及說明本設(shè)計(jì)主要是在學(xué)會(huì)了配置 CC2530 RF 功能基礎(chǔ)上,掌握分析 2.4G 頻段信道 11-26 各個(gè)信道的信號(hào)強(qiáng)度。然后通過 LCD 顯示測(cè)試結(jié)果,結(jié)果的顯示分為兩個(gè)部分,一部分是 通過 16 個(gè)矩形條的形式同時(shí)顯示各個(gè)信道中的信號(hào)強(qiáng)度, 16 個(gè)矩形條從左至右依次代表信 道 11 到信道 26 的 RSSI 值,其中矩形越高,表示該信道的 RSSI 值越強(qiáng)。另一個(gè)是通過 按鍵可以切換顯示( LCD 的左上角)不同信道具體的 RSSI 值。 其中按鍵功能分配如下:SW1 - 開始測(cè)試 SW2

20、- 顯示 RSSI 值的信道加 SW3 - 顯示 RSSI 值的信道減測(cè)試中,矩形高度的變化是完成一次測(cè)試就改變一次。而具體的顯示 RSSI 值是每個(gè) 信道抽取8個(gè)值后再顯示。其中掃描16個(gè)信道的間隔為2000us。其中LED1為工作指示燈, 當(dāng)工作不正常時(shí),LED2將為亮狀態(tài)。4.3 測(cè)試步驟1、給智能主板供電(USB外接電源或2節(jié)干電池)。2、將1個(gè)無線節(jié)點(diǎn)模塊插入到帶LCD的智能主板的相應(yīng)位置。3、將 2.4G 的天線安裝在無線節(jié)點(diǎn)模塊上。4、 將CC2530仿真器的一端通過USB線(A型轉(zhuǎn)B型)連接到PC機(jī),另一端通過10Pin 下載線連接到智能主板的 CC2530JTA(K( J20

21、3)。5、將智能主板上電源開關(guān)撥至開位置。按下仿真器上的按鈕,仿真器上的指示燈為綠色 時(shí),表示連接成功。6、 使用 IAR7.51 打開“OURS_CC2530LIBlib13(spectrum_analyzer) IAR_files” 下的 spectrum_analyzer.eww 文件,下載程序。7、運(yùn)行程序,然后按 SW1 進(jìn)入測(cè)試。8、觀察 LCD 的顯示結(jié)果。9、按SW2(加)和SW3(減)分別查看其他信道的 RSSI值13總結(jié)在這次課程設(shè)計(jì)中我們比較深入的學(xué)習(xí)了嵌入式開發(fā)的知識(shí),通過本次綜合訓(xùn)練讓我 了解了各種移動(dòng)信道的知識(shí) , 這次課設(shè)訓(xùn)練對(duì)以后學(xué)習(xí)嵌入式應(yīng)用很有意義, 讓我們

22、提前對(duì) 這方面的知識(shí)有了進(jìn)一步的認(rèn)識(shí)。但同時(shí)在這次課設(shè)訓(xùn)練過程中也當(dāng)遇到了很多實(shí)際問題, 比如說對(duì)有些關(guān)于嵌入式知識(shí)的缺乏,不過在老師的進(jìn)一步講解之后,我們逐步認(rèn)識(shí)和理 解了其中的關(guān)鍵,而且又對(duì)所學(xué)的理論知識(shí)有所理解。通過本次嵌入開發(fā)綜訓(xùn)練,加深了我對(duì)所學(xué)過的各種理論數(shù)據(jù)的認(rèn)識(shí)和理解,并在一 定程度上掌握并會(huì)運(yùn)用。我還學(xué)會(huì)了把學(xué)到的知識(shí)用于解決實(shí)際問題,培養(yǎng)、加強(qiáng)鍛煉了 我的動(dòng)手實(shí)踐能力。更為難得的是,在這次訓(xùn)練過程中,屢屢碰見一些問題,在解決這些 問題的過程中,不斷加強(qiáng)了我的理解。嵌入式對(duì)于一些自己不清楚,不明白但平時(shí)又很難 發(fā)現(xiàn)的知識(shí)點(diǎn)有了一次全面的鞏固與復(fù)習(xí)。最后讓我知道在大學(xué)階段,理論

23、的學(xué)習(xí)和實(shí)踐是密不可分的。離開了實(shí)踐的理論是沒 有任何意義可言的。與此同時(shí),理論是需要伴隨著實(shí)踐才能完善。同時(shí),在與同學(xué)共同解 決一些問題的過程中,提高了我們的團(tuán)隊(duì)協(xié)作精神。14參考文獻(xiàn)1 覃團(tuán)發(fā)、姚海濤、覃遠(yuǎn)年、陳海強(qiáng) . 嵌入式開發(fā) . 重慶大學(xué)出版社2 Gordon.Stuber .CC2530 手冊(cè) . 電子工業(yè)出版社3 沈振元、聶志泉、趙雪符 . 無線通信原理 . 西安電子科技出版社4 邱玲、朱近康、孫葆根、張磊 . 嵌入式開發(fā)與編程 . 人民郵電出版社郭梯云、鄔國揚(yáng)、李建東 . 物聯(lián)網(wǎng)概述(第三版)西安電子科技大學(xué)出版社15致謝通過嵌入式系統(tǒng)開發(fā)技術(shù)課程設(shè)計(jì),讓我都學(xué)到了許多東西,

24、體驗(yàn)到了書本學(xué)習(xí)與實(shí) 際應(yīng)用的不同,這種感同身受必將對(duì)我們今后的學(xué)習(xí)與生活帶來很大的推動(dòng)作用。在這幾 周的時(shí)間中,張老師時(shí)時(shí)在我的身旁引導(dǎo)我,同時(shí)也傾注他們所有的精力,最終指導(dǎo)我順 利的完成了這次課程設(shè)計(jì),我非常感謝張老師的辛勤教誨,我將終生難忘我的張老師對(duì)我 的親切關(guān)懷和悉心指導(dǎo),再一次向他表示衷心的感謝,感謝他為學(xué)生營(yíng)造的濃郁學(xué)術(shù)氛圍, 以及學(xué)習(xí)、生活上的無私幫助 !1617附錄主程序#include "hal_board.h"#include "hal_int.h"#include "hal_mcu.h"#include &qu

25、ot;hal_rf.h"#include "basic_rf.h"#include "LCD.h"#define RF_CHANNEL25 / 2.4 GHz RF 使用信道 25/ 通信 PANID/開關(guān)模塊地址 /燈模塊地址 /命令長(zhǎng)度 /命令數(shù)據(jù)#define PAN_ID 0x2011#define SWITCH_ADDR0x2530#define LIGHT_ADDR0xBEEF#define APP_PAYLOAD_LENGTH1#define LIGHT_TOGGLE_CMD0/ 應(yīng)用狀態(tài)#define IDLE0#define

26、SEND_CMD1/應(yīng)用角色#define NONE0#define SWITCH1#define LIGHT2#define APP_MODES 2 /按鍵#define HAL_BUTTON_11#define HAL_BUTTON_22#define HAL_BUTTON_33#define HAL_BUTTON_44#define HAL_BUTTON_55#define HAL_BUTTON_66 static uint8 pTxDataAPP_PAYLOAD_LENGTH; / 發(fā)送數(shù)據(jù)數(shù)組 164static uint8 pRxDataAPP_PAYLOAD_LENGTH; /

27、接收數(shù)據(jù)數(shù)組static basicRfCfg_t basicRfConfig;/RF 初始化結(jié)構(gòu)體extern void halboardinit(void);/硬件初始化函數(shù)extern void ctrPCA9554FLASHLED(uint8 led); /IIC 燈控制函數(shù) extern void ctrPCA9554LED(uint8 led,uint8 operation);extern uint8 halkeycmd(void);/ 獲取按鍵值函數(shù)#ifdef SECURITY_CCM/安全密鑰static uint8 key= 0xc0, 0xc1, 0xc2, 0xc3,

28、0xc4, 0xc5, 0xc6, 0xc7,0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,;#endif static void appLight();static void appSwitch();/燈應(yīng)用處理函數(shù) /開關(guān)應(yīng)用處理函數(shù) /選擇應(yīng)用功能函數(shù)函數(shù)名稱: appLight* 功能描述:接收模式應(yīng)用函數(shù),初始化RF 一些參數(shù),接收另一個(gè)模塊發(fā)送的控制命令,然后控制相應(yīng)的 LED 燈參 數(shù):無返 回 值:無static uint8 appSelectMode(void);static void appLight()basicRfConf

29、ig.myAddr = LIGHT_ADDR;/ 設(shè)置接收模塊的地址if(basicRfInit(&basicRfConfig)=FAILED) /RF 初始化ctrPCA9554FLASHLED(5); /RF 初始化不成功,則所有的 LED5 閃爍 basicRfReceiveOn();/ 打開接收功能/ Main loopwhile (TRUE)while(!basicRfPacketIsReady();/準(zhǔn)備接收數(shù)據(jù)if(basicRfReceive(pRxData, APP_PAYLOAD_LENGTH, NULL)>0)/ 接收數(shù)據(jù) if(pRxData0 = LIG

30、HT_TOGGLE_CMD) / 判斷命令是否正確 ctrPCA9554FLASHLED(1);* 函數(shù)名稱: appSwitch* 功能描述:發(fā)送模式應(yīng)用函數(shù),初始化發(fā)送模式 送控制命令。* 參 數(shù):無* 返 回 值:無static void appSwitch()pTxData0 = LIGHT_TOGGLE_CMD; basicRfConfig.myAddr = SWITCH_ADDR; if(basicRfInit(&basicRfConfig)=FAILED)/關(guān)閉或打開 LED1RF,通過按下SW4向另一個(gè)模塊發(fā)/向發(fā)送數(shù)據(jù)中寫入命令/設(shè)置發(fā)送模塊的地址 /RF 初始化ct

31、rPCA9554FLASHLED(5); /RF 初始化不成功,則所有的 LED5 閃爍 basicRfReceiveOff();/關(guān)閉接收功能/ Main loopwhile (TRUE)if(halkeycmd() = HAL_BUTTON_4)/判斷是否按下 SW4basicRfSendPacket(LIGHT_ADDR, pTxData, APP_PAYLOAD_LENGTH);/ 發(fā)送數(shù)19halIntOff();/關(guān)閉全局中斷halIntOn();/打開中斷* 函數(shù)名稱: appSelectMode* 功能描述:通過 SW2 或 SW3 選擇模塊的應(yīng)用模式。* 參 數(shù):無* 返 回

32、 值: LIGHT - 接收模式*SWITCH - 發(fā)送模式*NONE - 不正確模式I*static uint8 appSelectMode(void)uint8 key;GUI_ClearScreen();GUI_PutString5_7(25,6,"OURS-CC2530");GUI_PutString5_7(10,22,"Device Mode: ");GUI_PutString5_7(10,35,"SW2 -> Light");GUI_PutString5_7(10,48,"SW3 -> Switch&

33、quot;);LCM_Refresh();/LCD 清屏/在 LCD 上顯示相應(yīng)的文字dokey = halkeycmd();while(key = HAL_BUTTON_1); if(key = HAL_BUTTON_2) GUI_ClearScreen();/等待模式選擇/接收模式GUI_PutString5_7(25,6,"OURS-CC2530");/在 LCD 上顯示相應(yīng)的文字21GUI_PutString5_7(10,22,"Device Mode: ");GUI_PutString5_7(10,35,"Light");LCM_Refresh();return LIGHT;if(key = HAL_BUTTON_3)/ 發(fā)送模式GUI_ClearScreen();GUI_PutString5_7(25,6,"OURS-

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論