版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 目錄</b></p><p><b> 摘 要I</b></p><p> AbstractII</p><p><b> 1緒 論1</b></p><p> 1.1課題的目的和意義1</p><p>
2、1.2國內(nèi)外評(píng)審系統(tǒng)的研究現(xiàn)狀1</p><p> 1.3 主要內(nèi)容2</p><p> 2原理與總體方案3</p><p><b> 2.1基本原理3</b></p><p><b> 2.2設(shè)計(jì)方案3</b></p><p> 2.2.1 PTR800
3、0模塊4</p><p> 2.2.2 單片機(jī)系統(tǒng)4</p><p> 2.2.3串口通信4</p><p><b> 2.3本章小結(jié)4</b></p><p> 3系統(tǒng)硬件電路設(shè)計(jì)5</p><p> 3.1單片機(jī)最小系統(tǒng)5</p><p> 3.
4、1.1 STC89C525</p><p> 3.1.2 系統(tǒng)電源模塊6</p><p> 3.1.3 時(shí)鐘系統(tǒng)7</p><p> 3.1.4 復(fù)位電路7</p><p> 3.2 PTR8000無線數(shù)據(jù)接收模塊8</p><p> 3.2.1 無線收發(fā)芯片nRF905性能及參數(shù)9</p&
5、gt;<p> 3.2.2 nRF905芯片及其外圍電路11</p><p> 3.2.3 nRF905的工作模式及配置12</p><p> 3.3 單片機(jī)與PC機(jī)通信模塊13</p><p> 3.4本章小結(jié)15</p><p><b> 4 軟件設(shè)計(jì)16</b></p>
6、<p> 4.1系統(tǒng)總流程16</p><p> 4.2 SPI指令設(shè)置16</p><p> 4.3 nRF905數(shù)據(jù)發(fā)送24</p><p> 4.4 nRF905數(shù)據(jù)接收25</p><p> 4.5本章小結(jié)26</p><p><b> 5系統(tǒng)調(diào)試27</b
7、></p><p> 5.1硬件調(diào)試27</p><p> 5.2軟件調(diào)試27</p><p> 5.3本章小結(jié)27</p><p><b> 6 總結(jié)28</b></p><p><b> 致 謝29</b></p><p>
8、;<b> 參考文獻(xiàn)30</b></p><p><b> 附錄32</b></p><p><b> 摘要</b></p><p> 在現(xiàn)實(shí)生活中很多時(shí)候都會(huì)用到評(píng)審系統(tǒng),但是很多時(shí)候,人們依然采用的比較落后的評(píng)審方式,如人工統(tǒng)計(jì)。雖然現(xiàn)在也存在有線評(píng)審系統(tǒng),但有線評(píng)審系統(tǒng)存在很多缺陷.
9、有限評(píng)審系統(tǒng)雖然可靠穩(wěn)定,但是易受環(huán)境的限制、線纜易纏繞、評(píng)分器移動(dòng)范圍受到限制。因此,一種無線的評(píng)審系統(tǒng)在減少評(píng)審過程中所用的時(shí)間提高效率和準(zhǔn)確度方面具有重要意義。 </p><p> 無線評(píng)審系統(tǒng)主要是利用無線通信技術(shù)來解決評(píng)審過程中數(shù)據(jù)的傳輸。在現(xiàn)代科技中可以進(jìn)行無線傳輸?shù)姆椒ㄓ泻芏?,但是由于它們自身的缺陷而無法在評(píng)審系統(tǒng)進(jìn)行推廣。本文介紹的是一種基于無線射頻技術(shù)的無線數(shù)傳模塊設(shè)計(jì)的無線評(píng)審系統(tǒng)?;跓o線
10、射頻技術(shù)的無線數(shù)傳模塊具有設(shè)計(jì)方便,系統(tǒng)功耗低,價(jià)格便宜等優(yōu)點(diǎn)。該設(shè)計(jì)中主要包括PTR8000數(shù)據(jù)接收模塊、單片機(jī)數(shù)據(jù)處理模塊、串口通信模塊。本文的軟件設(shè)計(jì)部分,詳細(xì)地介紹了本設(shè)計(jì)的軟件實(shí)現(xiàn)方法。程序用C語言編寫并使用KEIL軟件進(jìn)行編,在實(shí)際應(yīng)用中具有一定的參考意義。</p><p> 關(guān)鍵詞:無線評(píng)審系統(tǒng) 射頻技術(shù) 無線數(shù)傳模塊 串口通信 單片機(jī)</p><p><b&g
11、t; Abstract</b></p><p> In real life many times will use the evaluation system, but a lot of the time, people still use the backward mode of examination, such as artificial statistics. Although there
12、 are wired evaluation system, but the system has many defects. Although wired evaluation system is reliable and stable, but vulnerable to environmental constraints, wire easy winding, score for moving range is limited. T
13、herefore, a wireless evaluation system in reducing the review process used by the time to improve efficie</p><p> Wireless evaluation system is mainly the use of wireless communication technology to solve i
14、n the process of data transmission. There are many methods used for wireless transmission In the modern science and technology, but because of their own vulnerability to review system to promote. This paper introduces a
15、wireless radio frequency technology based on wireless data transmission module design of the wireless review system. Wireless radio frequency technology based on wireless data transmission</p><p> Keywords:
16、Wireless Review System RF Technology Wireless Data Transmission </p><p> Serial Port Communication MCU</p><p><b> 1緒論</b></p><p> 1.1課題的目的和意義</p><
17、p> 本課題利用單片機(jī)完成無線評(píng)審系統(tǒng)中的數(shù)據(jù)接收模塊的軟硬件設(shè)計(jì),該接收模塊主要是完成無線評(píng)審系統(tǒng)中兩個(gè)方面的數(shù)據(jù)接收工作。一是能夠通過有線的通信方式和PC端的評(píng)審軟件進(jìn)行數(shù)據(jù)通信,接收評(píng)審軟件的命令與數(shù)據(jù),同時(shí)上傳接收到的數(shù)據(jù)終端的評(píng)審數(shù)據(jù)。二是能夠通過無線通信的方式和多個(gè)數(shù)據(jù)終端進(jìn)行數(shù)據(jù)通信,無線發(fā)送評(píng)審軟件的命令與數(shù)據(jù),接收數(shù)據(jù)終端的評(píng)審數(shù)據(jù)。</p><p> 該模塊在評(píng)審系統(tǒng)中能準(zhǔn)確的接收來
18、自多個(gè)數(shù)據(jù)終端的數(shù)據(jù),在數(shù)據(jù)評(píng)審時(shí)具有非常重要的實(shí)際使用價(jià)值。該模塊方便靈活,功能可靠,適合在評(píng)審、評(píng)獎(jiǎng)活動(dòng)中廣泛使用。</p><p> 1.2國內(nèi)外評(píng)審系統(tǒng)的研究現(xiàn)狀</p><p> 目前的評(píng)審系統(tǒng)包括有線評(píng)審和無線評(píng)審兩種。有線評(píng)審系統(tǒng)在評(píng)審過程中采用有線連接的方式。有線評(píng)審具有可靠、穩(wěn)定,快速等優(yōu)點(diǎn),但在一些復(fù)雜的場合容易受環(huán)境,線路限制等一些因素的影響,而且有線評(píng)審系統(tǒng)中有
19、線網(wǎng)絡(luò)布線麻煩, 線路故障不容易檢查, 設(shè)備重新布局就要重新布線, 還不能隨意移動(dòng)等缺點(diǎn)突出[1]。最近幾年來隨著射頻技術(shù)、集成電子技術(shù)的迅速發(fā)展,無線通信功能越來越容易實(shí)現(xiàn), 傳輸數(shù)據(jù)的速度也越來越快, 并且漸漸快達(dá)到有線網(wǎng)絡(luò)的水平。所以,現(xiàn)在的評(píng)審系統(tǒng)漸漸開始用無線式的評(píng)審系統(tǒng)來代替有線的。目前, 無線短距離通信實(shí)用技術(shù)主要有: 紅外技術(shù), 藍(lán)牙技術(shù)、802.11b無線局域網(wǎng)標(biāo)準(zhǔn)技術(shù),射頻技術(shù)[2]。</p><
20、p> 紅外技術(shù)是一種利用紅外線進(jìn)行點(diǎn)對點(diǎn)通信的技術(shù),它的優(yōu)點(diǎn)是無需申請頻率的使用權(quán),移動(dòng)通信所需的體積小、功耗低、連接方便、簡單易用,且它數(shù)據(jù)傳輸率較高發(fā)射角度較小,安全性高。但紅外線傳輸是一種視距傳輸,相互通信的兩臺(tái)設(shè)備必須對準(zhǔn)其,不能有障礙物相隔,且它的傳輸距離只限于1~2m。</p><p> 藍(lán)牙技術(shù)是一種點(diǎn)到多點(diǎn)的無線聲音及數(shù)據(jù)傳輸技術(shù)。它所使用的是2.4GHz的ISM頻段。它具有支持多種設(shè)備
21、、可穿過墻壁和公文包傳輸數(shù)據(jù)、全方向傳輸、內(nèi)置安全性等優(yōu)點(diǎn)。但該技術(shù)的應(yīng)用也存在問題,如抗干擾能力不強(qiáng)、兼容性不好、傳輸距離太短、信息安全和生態(tài)安全問題可疑等等[3]。</p><p> Wi-Fi(Wireless Fidelity,無線高保真)也是一種無線通信協(xié)議,正式名稱是IEEE802.11b,與藍(lán)牙一樣,同屬于短距離無線通信技術(shù)。Wi-Fi速率最高可達(dá)11Mb/s。雖然在數(shù)據(jù)安全性方面比藍(lán)牙技術(shù)要差一
22、些,但在電波的覆蓋范圍方面卻略勝一籌,可達(dá)100m左右。Wi-Fi是以太網(wǎng)的一種無線擴(kuò)展,理論上只要用戶位于一個(gè)接入點(diǎn)四周的一定區(qū)域內(nèi),就能以最高約11Mb/s的速度接入Web[4]。 Wi-Fi也存在著一些問題:(1)高昂的價(jià)格讓消費(fèi)者止步不前;(2)Wi-Fi的運(yùn)營商很多,成為一個(gè)運(yùn)營商的客戶并不能共享其它運(yùn)營商的資源;(3)公共Wi-Fi服務(wù)的目標(biāo)消費(fèi)群體——那些拿著筆記本計(jì)算機(jī)四處游走,并且需要抓緊每一分鐘時(shí)間上網(wǎng)的人——其實(shí)少
23、之又少;(4)城市地區(qū)的空域有限,這意味著利用Wi-Fi上網(wǎng)將非常擁擠;Wi-Fi的安全問題受到了業(yè)界以及一些國家的質(zhì)疑。</p><p> 對于上述幾種短距離通信技術(shù)的缺陷,采用射頻技術(shù)就可以基本上克服。用戶不用對無線通信原理和工作機(jī)制有較深的了解, 只要依據(jù)命令字進(jìn)行操作即可實(shí)現(xiàn)基本的數(shù)據(jù)無線傳輸功能, 因其功率小, 成本低, 開發(fā)簡單快速而應(yīng)用廣泛, 如: 無線智能家居, 無線抄表, 無線點(diǎn)菜, 無線數(shù)據(jù)
24、采集, 無線設(shè)備管理和監(jiān)控, 汽車儀表數(shù)據(jù)的無線讀取等等。無線射頻技術(shù)是一種近距離、低復(fù)雜度、低功耗、低數(shù)據(jù)速率、、低成本的無線通信技術(shù)。利用無線射頻技術(shù),信號(hào)的收發(fā)不易受到外物的遮擋,只要在它的有效覆蓋范圍內(nèi),任何范圍或角度皆能準(zhǔn)確可靠地接收[5]。</p><p><b> 1.3 主要內(nèi)容</b></p><p> 在本文中主要介紹了一種基于單片機(jī)和無線射頻
25、技術(shù)的無線評(píng)審系統(tǒng)的接收模塊的設(shè)計(jì)方案,并詳細(xì)地給出了該設(shè)計(jì)方案的設(shè)計(jì)思路和流程。其中,在該課題的原理及設(shè)計(jì)方案中會(huì)具體的論述和介紹設(shè)計(jì)的總的原理及其思路。在后面的硬件設(shè)計(jì)中則會(huì)詳細(xì)的給出該模塊的各個(gè)部分的功能和設(shè)計(jì)思路。尤其是對該模塊的核心部分—PTR8000數(shù)據(jù)接收模塊,論文在后面會(huì)對其作出較為細(xì)致的介紹。在軟件設(shè)計(jì)部分,本文會(huì)給出整個(gè)設(shè)計(jì)的程序設(shè)計(jì)流程和軟件設(shè)計(jì)思路,更會(huì)詳盡的給出各個(gè)部分的程序源代碼,并對其加以描述和說明。在調(diào)試
26、部分,會(huì)對調(diào)試過程中的硬件和軟件方面所存在的問題進(jìn)行論述并加以解決和改進(jìn)。</p><p><b> 2原理與總體方案</b></p><p><b> 2.1基本原理</b></p><p> 本課題利用單片機(jī)和無線射頻技術(shù)來實(shí)現(xiàn)無線評(píng)審系統(tǒng)的接收模塊。計(jì)算機(jī)將評(píng)審規(guī)則中的各個(gè)指標(biāo)通過串口傳輸?shù)臄?shù)傳模塊(有線),再
27、利用無線射頻技術(shù)發(fā)射給各個(gè)評(píng)審器,然后評(píng)審器將評(píng)審結(jié)果傳輸給數(shù)傳模塊,數(shù)傳模塊將接受到的數(shù)據(jù)再通過串口傳輸給計(jì)算機(jī)。</p><p><b> 2.2設(shè)計(jì)方案</b></p><p> 根據(jù)本設(shè)計(jì)的要求,本系統(tǒng)主要完成的研究包括:對STC89C52單片機(jī)的存儲(chǔ)器空間分配,熟悉通用I/O接口,中斷系統(tǒng)等;掌握nRF905芯片的使用,發(fā)送接收系統(tǒng)硬件設(shè)計(jì),主要對單片機(jī)
28、與擴(kuò)展接口(nRF905接收發(fā)射接口)的設(shè)計(jì)。</p><p> 按系統(tǒng)的功能整個(gè)系統(tǒng)包含一下幾個(gè)部分:信號(hào)的接收,調(diào)節(jié)部分。信號(hào)的接收是通過PTR8000模塊的天線對發(fā)射機(jī)發(fā)送過來的數(shù)據(jù)進(jìn)行接收,再對整個(gè)數(shù)據(jù)包進(jìn)行GFSK解調(diào),還原出原來的調(diào)制前的數(shù)據(jù)信息[6]。信號(hào)的發(fā)送是當(dāng)微控制器有數(shù)據(jù)要發(fā)送時(shí),通過SPI接口,按時(shí)序把接收機(jī)的地址和要發(fā)送的數(shù)據(jù)送傳給nRF905,SPI接口的速率在通信協(xié)議和器件配置時(shí)確
29、定;接著微控制器置高TRX_CE和TX_EN,激發(fā)nRF905的ShockBurstTM發(fā)送模式,最后通過 nRF905的ShockBurstTM發(fā)送。系統(tǒng)的總體框圖如圖2.1。</p><p> 圖2.1系統(tǒng)的總體框圖</p><p> 根據(jù)系統(tǒng)框圖硬件電路主要由以下幾部分組成:單片機(jī)系統(tǒng)、PTR8000收發(fā)模塊、串口通信。</p><p> 2.2.1 P
30、TR8000模塊</p><p> PRT8000是一款基于nRF905芯片的無線數(shù)據(jù)收發(fā)模塊,能實(shí)現(xiàn)單片機(jī)與微機(jī)之間的無線數(shù)據(jù)通信,具有功耗低多頻道多頻段的特點(diǎn)可以方便的實(shí)現(xiàn)點(diǎn)對點(diǎn)及點(diǎn)對多點(diǎn)的無線通信,可用于遙感,遙控,無線抄表,工業(yè)數(shù)據(jù)采集及家庭智能化等領(lǐng)域[7]。圖2.2為PTR8000的實(shí)物圖。</p><p> 2.2 PTR8000實(shí)物圖</p><p&
31、gt; 2.2.2單片機(jī)系統(tǒng)</p><p> 單片機(jī)系統(tǒng)就是單片機(jī)及其外圍電路。其包括電源電路、時(shí)鐘電路、復(fù)位電路。</p><p><b> 2.2.3串口通信</b></p><p> 由于STC89C52單片機(jī)輸入、輸出電平為TTL電平,而PC機(jī)配置的是RS-232標(biāo)準(zhǔn)串行接口,二者的電器規(guī)范不一致,因此采用MXA232單芯片實(shí)
32、現(xiàn)STC89C52單片機(jī)于PC機(jī)的RS-232標(biāo)準(zhǔn)接口通信電路[8]。</p><p><b> 2.3本章小結(jié)</b></p><p> 本章小節(jié)主要介紹了本設(shè)計(jì)的基本原理以及系統(tǒng)各模塊的設(shè)計(jì)方案。設(shè)計(jì)方案包括了系統(tǒng)總體的框圖和各個(gè)模的具體方案。</p><p><b> 3系統(tǒng)硬件電路設(shè)計(jì)</b></p&g
33、t;<p> 3.1單片機(jī)最小系統(tǒng)</p><p> 3.1.1 STC89C52</p><p> STC89C52RC單片機(jī)是宏晶科技推出的新一代高速/低功耗/超強(qiáng)抗干擾的單片機(jī),指令代碼完全兼容傳統(tǒng)8051單片機(jī),12時(shí)鐘/機(jī)器周期和6時(shí)鐘/機(jī)器周期可以任意選擇[9]。</p><p><b> 主要特性如下:</b>
34、;</p><p> 1.增強(qiáng)型8051單片機(jī),6時(shí)鐘/機(jī)器周期和12時(shí)鐘/機(jī)器周期可以任意選擇,指令代碼完全兼容傳統(tǒng)8051.</p><p> 2.工作電壓:5.5V~3.3V(5V單片機(jī))/3.8V~2.0V(3V單片機(jī))</p><p> 3.工作頻率范圍:0~40MHz,相當(dāng)于普通8051的0~80MHz,實(shí)際工作頻率可達(dá)48MHz</p>
35、;<p> 4.用戶應(yīng)用程序空間為8K字節(jié)</p><p> 5.片上集成512字節(jié)RAM</p><p> 6.通用I/O口(32個(gè)),復(fù)位后為:P1/P2/P3/P4是準(zhǔn)雙向口/弱上拉,P0口是漏極開路輸出,作為總線擴(kuò)展用時(shí),不用加上拉電阻,作為I/O口用時(shí),需加上拉電阻。</p><p> 7.ISP(在系統(tǒng)可編程)/IAP(在應(yīng)用可編程
36、),無需專用編程器,無需專用仿真器,可通過串口(RxD/P3.0,TxD/P3.1)直接下載用戶程序,數(shù)秒即可完成一片</p><p> 8.具有EEPROM功能</p><p><b> 9.具有看門狗功能</b></p><p> 10.共3個(gè)16位定時(shí)器/計(jì)數(shù)器。即定時(shí)器T0、T1、T2</p><p>
37、11.外部中斷4路,下降沿中斷或低電平觸發(fā)電路,Power Down模式可由外部中斷低電平觸發(fā)中斷方式喚醒</p><p> 12.通用異步串行口(UART),還可用定時(shí)器軟件實(shí)現(xiàn)多個(gè)UART</p><p> 13.工作溫度范圍:-40~+85℃(工業(yè)級(jí))/0~75℃(商業(yè)級(jí))</p><p><b> 14.PDIP封裝</b><
38、;/p><p> STC89C52單片機(jī)有四種工作模式分別為:</p><p> 1.掉電模式:典型功耗<0.1μA,可由外部中斷喚醒,中斷返回后,繼續(xù)執(zhí)行原程序</p><p> 2.空閑模式:典型功耗2mA</p><p> 3.正常工作模式:典型功耗4mA~7mA</p><p> 4.掉電模式:可由
39、外部中斷喚醒,適用于水表、氣表等電池供電系統(tǒng)及便攜設(shè)備</p><p> STC89C52單片機(jī)引腳如圖3.1所示。</p><p> 圖3.1 STC89C52單片機(jī)引腳圖 </p><p> 3.1.2 系統(tǒng)電源模塊</p><p> 射頻芯片nRF905工作電壓為+3.3V,其他器件(包括STC89C52單片機(jī))均可工作在+5V
40、。由于整個(gè)電路由兩個(gè)不同的工作電壓,考慮到只用一個(gè)電源供電,是要求有電壓轉(zhuǎn)換電路+5V和+3.3V的電平轉(zhuǎn)換電路[10]。電源采用5V的直流電源,經(jīng)過LM1117-3.3將電壓轉(zhuǎn)換為3.3V,為主控芯片STC89C52、串口轉(zhuǎn)換芯片、射頻芯片nRF905供電。設(shè)計(jì)的系統(tǒng)電源電路如圖3.2所示。</p><p> 圖3.2系統(tǒng)電源電路</p><p> 3.1.3 時(shí)鐘系統(tǒng)</p&
41、gt;<p> 單片機(jī)工作時(shí),從取指令到譯碼再進(jìn)行微操作,必須在時(shí)鐘信號(hào)控制下才能有序地進(jìn)行,時(shí)鐘電路就是為單片機(jī)工作提供基本時(shí)鐘的[11]。內(nèi)部時(shí)鐘方式的原理電路如圖3.3所示。在單片機(jī)XTAL1和XTAL2引腳上跨接上一個(gè)晶振和兩個(gè)穩(wěn)頻電容,可以與單片機(jī)片內(nèi)的電路構(gòu)成一個(gè)穩(wěn)定的自激振蕩器。晶振的取值范圍一般為0 ~24MHz,常用的晶振頻率有6MHz、12 MHz、11.0592 MHz、24 MHz等。一些新型的單
42、片機(jī)還可以選擇更高的頻率。外接電容的作用是對振蕩器進(jìn)行頻率微調(diào),使振蕩信號(hào)頻率與晶振頻率一致,同時(shí)起到穩(wěn)定頻率的作用,一般選用20~30pF的瓷片電容。圖3.3為單片機(jī)的時(shí)鐘電路。</p><p> 圖3.3 單片機(jī)時(shí)鐘電路</p><p> 3.1.4 復(fù)位電路</p><p> 在上電或復(fù)位過程中,控制CPU的復(fù)位狀態(tài):這段時(shí)間內(nèi)讓CPU保持復(fù)位狀態(tài),而不
43、是一上電或剛復(fù)位完畢就工作,防止CPU發(fā)出錯(cuò)誤的指令、執(zhí)行錯(cuò)誤操作,也可以提高電磁兼容性能。單片機(jī)在啟動(dòng)時(shí)都需要復(fù)位,以使CPU及系統(tǒng)各部件處于確定的初始狀態(tài),并從初態(tài)開始工作。89系列單片機(jī)的復(fù)位信號(hào)是從RST引腳輸入到芯片內(nèi)的施密特觸發(fā)器中的[12]。當(dāng)系統(tǒng)處于正常工作狀態(tài)時(shí),且振蕩器穩(wěn)定后,如果RST引腳上有一個(gè)高電平并維持2個(gè)機(jī)器周期(24個(gè)振蕩周期)以上,則CPU就可以響應(yīng)并將系統(tǒng)復(fù)位。復(fù)位電路如圖3.4所示。</p&g
44、t;<p> 圖3.4單片機(jī)復(fù)位電路</p><p> 3.2 PTR8000無線數(shù)據(jù)接收模塊</p><p> PTR8000數(shù)據(jù)模塊是基于nRF905芯片的無線數(shù)據(jù)收發(fā)模塊,它是由nRF905及其外圍電路構(gòu)成。PTR8000數(shù)據(jù)接收模塊可以實(shí)現(xiàn)單片機(jī)與微機(jī)之間的無線數(shù)據(jù)通信[13]。具有功耗低, 多頻道多頻段的特點(diǎn), 可以很方便地實(shí)現(xiàn)點(diǎn)對點(diǎn)及點(diǎn)對多點(diǎn)無線通信。PTR
45、8000模塊引腳如圖3.5所示。</p><p> 圖3.5 PTR8000 模塊引腳圖</p><p> 表3.1 PTR8000引腳</p><p> 3.2.1 無線收發(fā)芯片nRF905性能及參數(shù)</p><p> nRF905模塊使用Nordic 公司的nRF905 芯片開發(fā)而成。nRF905單片無線收發(fā)器工作在433/868
46、/915MHZ 的ISM 頻段由一個(gè)完全集成的頻率調(diào)制器一個(gè)帶解調(diào)器的接收器一個(gè)功率放大器一個(gè)晶體震蕩器和一個(gè)調(diào)節(jié)器組成[14]。ShockBurst 工作模式的特點(diǎn)是自動(dòng)產(chǎn)生前導(dǎo)碼和CRC 可以很容易通過SPI 接口進(jìn)行編程配置電流消耗很低在發(fā)射功率為+10dBm 時(shí)發(fā)射電流為30mA 接收電流為12.5mA.進(jìn)入POWERDOWN 模式可以很容易實(shí)現(xiàn)節(jié)電。nRF905芯片引腳圖如圖 所示。</p><p>
47、 圖3.6 nRF905的引腳圖</p><p> nRF905的特性: (1) 433Mhz 開放ISM 頻段免許可證使用。</p><p> (2) 最高工作速率50Kbps,高效GFSK調(diào)制,抗干擾能力強(qiáng),特別適合工業(yè)控制場合。</p><p> (3) 125 頻道,滿足多
48、點(diǎn)通信和跳頻通信需要。</p><p> (4) 內(nèi)置硬件CRC 檢錯(cuò)和點(diǎn)對多點(diǎn)通信地址控制。</p><p> (5) 低功耗1.9 ~ 3.6V 工作,待機(jī)模式下狀態(tài)僅為2.5uA。</p><p> (6) 輸出功率可達(dá)10dBm。</p><p> (7) 收發(fā)模式切換時(shí)間 < 650us。</p><
49、;p> (8) TX Mode: 在+10dBm情況下,電流為30mA; RX Mode: 12.2mA。</p><p> 表3.2 nRF905芯片性能參考數(shù)據(jù)</p><p> 3.2.2 nRF905芯片及其外圍電路</p><p> PTR8000數(shù)據(jù)收發(fā)模塊是由nRF905芯片及其外圍電路構(gòu)成。包括外部時(shí)鐘信號(hào)、天線輸出電路。nRF905及
50、其外圍電路如圖3.8所示。</p><p> 圖3.7 nRF905應(yīng)用電路</p><p> 3.2.3 nRF905的工作模式及配置 </p><p> nRF905片內(nèi)集成了電源管理、晶體振蕩器、低噪聲放大器、頻率合成器功率放大器等模塊,曼徹斯特編碼/解碼由片內(nèi)硬件完成,無需用戶對數(shù)據(jù)進(jìn)行曼徹斯特編碼,使用非常方便。其內(nèi)部有5個(gè)寄存器。分別為狀態(tài)寄
51、存器、射頻配置寄存器、發(fā)射地址寄存器、發(fā)射數(shù)據(jù)寄存器、接收數(shù)據(jù)寄存器[15]。nRF905有兩種工作模式和兩種節(jié)能模式。兩種工作模式分別是ShockBurstTM接收模式和ShockBurstTM發(fā)送模式兩種節(jié)能模式分別是關(guān)機(jī)模式和空閑模式。nRF905的工作模式由TRX_CE、TX_EN和PWR_UP三個(gè)引腳決定。表3.3為nRF905的工作模式表。</p><p> 表 3.3 nRF905的工作模式<
52、;/p><p> ShockBurstTM模式: 與射頻數(shù)據(jù)包有關(guān)的高速信號(hào)處理都在nRF905片內(nèi)進(jìn)行,數(shù)據(jù)速率由微控制器配置的SPI接口決定,數(shù)據(jù)在微控制器中低速處理,但在nRF905中高速發(fā)送,因此中間有很長時(shí)間的空閑,這很有利于節(jié)能。由于nRF905工作于 ShockBurstTM模式,因此使用低速的微控制器也能得到很高的射頻數(shù)據(jù)發(fā)射速率。在ShockBurstTM接收模式下,當(dāng)一個(gè)包含正確地址
53、和數(shù)據(jù)的數(shù)據(jù)包被接收到后,地址匹配(AM)和數(shù)據(jù)準(zhǔn)備好(DR)兩引腳通知微控制器。在ShockBurstTM發(fā)送模式,nRF905自動(dòng)產(chǎn)生字頭和CRC校驗(yàn)碼,當(dāng)發(fā)送過程完成后數(shù)據(jù)準(zhǔn)備好引腳通知微處理器數(shù)據(jù)發(fā)射完畢[16]。</p><p> 由以上分析可知,nRF905的ShockBurstTM收發(fā)模式有利于節(jié)約存儲(chǔ)器和微控制器資源,同時(shí)也減小了編寫程序的時(shí)間。</p><p> 節(jié)能
54、模式:nRF905的節(jié)能模式包括關(guān)機(jī)模式和空閑模式。</p><p> 關(guān)機(jī)模式:nRF905的工作電流最小,一般為2.5uA。進(jìn)入關(guān)機(jī)模式后,nRF905 保持配置字中的內(nèi)容,但不會(huì)接收或發(fā)送任何數(shù)據(jù)。</p><p> 空閑模式:有利于減小工作電流,其從空閑模式到發(fā)送模式或接收模式的啟動(dòng)時(shí)間也比較短。在空閑模式下,nRF905內(nèi)部的部分晶體振蕩器處于工作狀態(tài)。 nRF905在空閑模
55、式下的工作電流跟外部晶體振蕩器的頻率有關(guān)[17]。</p><p> 3.3 單片機(jī)與PC機(jī)通信模塊</p><p> PTR8000數(shù)據(jù)收發(fā)模塊接收到評(píng)審器發(fā)出的數(shù)據(jù)后,需要將接收到的數(shù)據(jù)傳送給計(jì)算機(jī),但由于STC89C52單片機(jī)輸入、輸出電平為TTL電平,而PC機(jī)配置的是RS-232標(biāo)準(zhǔn)串行接口,二者的電器規(guī)范不一致,必須有一個(gè)電平轉(zhuǎn)換電路,因此采用MXA232單芯片實(shí)現(xiàn)STC89
56、C52單片機(jī)與PC機(jī)的RS-232標(biāo)準(zhǔn)接口通信電路[18]。單片機(jī)與PC機(jī)通信系統(tǒng)如圖3.9所示。</p><p> 圖3.8 單片機(jī)與PC機(jī)通信</p><p> MAX232是由德州儀器公司推出的一款兼容RS232標(biāo)準(zhǔn)的芯片。由于電腦串口RS232電平是-10V +10V,而一般的單片機(jī)應(yīng)用系統(tǒng)的信號(hào)電壓是TTL電平0 +5V, 所以,單片機(jī)和PC機(jī)是不能直接通信的,而MAX232
57、就是用來進(jìn)行電平轉(zhuǎn)換的,該器件包含2個(gè)驅(qū)動(dòng)器2個(gè)接收器和一個(gè)電壓發(fā)生器電路提供TIA/EIA-232-F電平。并且該器件符合TIA/EIA-232-F標(biāo)準(zhǔn),每一個(gè)接收器將TIA/EIA-232-F電平[19]。</p><p> 轉(zhuǎn)換成5-v TTL/CMOS電平轉(zhuǎn)換成TIA/EIA-232-F電平。 MAX232的主要特性如下: 1.單5V電源工作。 </p><p>
58、2.LinBiCMOSTM工藝技術(shù)。</p><p> 3.兩個(gè)驅(qū)動(dòng)器和兩個(gè)接收器。</p><p> 4.±30V輸入電平。 </p><p> 5.低電源電流: 典型值是8mA。 </p><p> 6.符合甚至優(yōu)于ANSI標(biāo)準(zhǔn)EIA/TIA-232-E及ITU推薦標(biāo)準(zhǔn)V.28。 </p><p&g
59、t; 7.ESD保護(hù)大于MIL-STD-883標(biāo)準(zhǔn)的2000V。</p><p> MAX232芯片的功能: MAX232內(nèi)部有一個(gè)電源電壓變換器,可以把輸入的+5V電源電壓變換成為RS-232C輸出電平所需的±10V電壓。所以,采用此芯片接口的串行通信系統(tǒng)只需單一的+5V電源就可以了。下圖3.9為MX232引腳圖。</p><p> 圖3.9 MAX232引腳圖</
60、p><p> 9針串口是一個(gè)完整的RS-232接口是一個(gè)25針的D型插頭座,25針的連接器實(shí)際上只有9根連接線,所以就產(chǎn)生了一個(gè)簡化的9針D型RS-232插頭座,常用的就是一個(gè)9針的D型插頭座。使用串口進(jìn)進(jìn)行通信時(shí),我們最主要關(guān)心的時(shí)以下這三個(gè)引腳: 5 GND 、2 RXD 、3 TXD 。要完成數(shù)據(jù)的發(fā)送與接收就必須要到上面這三個(gè)引腳。而其它引腳是用來控制傳輸規(guī)則的,即握手協(xié)議[20]。下表3.4是9針串口(D
61、B9)的引腳功能。</p><p> 表3.4 9針串口引腳</p><p> 現(xiàn)選用其中一路發(fā)送/接收,R1out接STC89C52的RED,T1in接STC89C52的TXD, T1out接PC機(jī)的RD,R1in接PC機(jī)的TD。因?yàn)镸AX232具有驅(qū)動(dòng)能力,所以不 需要外加驅(qū)動(dòng)電路[21]。如圖3. 所示PC機(jī)與單片機(jī)通信模塊電路圖。</p><p>
62、圖3.10單片機(jī)與PC機(jī)通信模塊電路</p><p><b> 3.4本章小結(jié)</b></p><p> 本章節(jié)詳細(xì)介紹了系統(tǒng)硬件部分的設(shè)計(jì)。主要包括了以下幾個(gè)模塊:最小系統(tǒng)、PTR8000無線數(shù)據(jù)收發(fā)模塊、單片機(jī)與PC機(jī)通信模塊。同時(shí)本章還詳細(xì)介紹了各個(gè)模塊中用到的各種芯片,包括其性能參數(shù)、管腳分布以及管腳功能。同時(shí),也給出了各模塊的電路圖。</p>
63、<p><b> 4 軟件設(shè)計(jì)</b></p><p> 根據(jù)設(shè)計(jì)要求,本系統(tǒng)是要用單片機(jī)、nRF905及外設(shè)完成完成數(shù)據(jù)的收發(fā)。具體要實(shí)現(xiàn):用nRF905實(shí)現(xiàn)數(shù)據(jù)的發(fā)送、用nRF905實(shí)現(xiàn)數(shù)據(jù)的接收。</p><p><b> 4.1系統(tǒng)總流程</b></p><p> 根據(jù)此任務(wù),畫出程序流程圖如
64、圖4.1所示。</p><p><b> 圖4.1總體流程圖</b></p><p> 4.2 SPI指令設(shè)置</p><p> 在編寫程序時(shí)要對nRF905進(jìn)行配置,所有配置字都是通過SPI接口送給nRF905。SIP接口的工作方式可通過SPI指令進(jìn)行設(shè)置。SPI接口由狀態(tài)寄存器、射頻配置寄存器、發(fā)送地址寄存器、發(fā)送數(shù)據(jù)寄存器和接收數(shù)據(jù)
65、寄存器5個(gè)寄存器組成。狀態(tài)寄存器包含數(shù)據(jù)準(zhǔn)備好引腳狀態(tài)信息和地址匹配引腳狀態(tài)信息;射頻配置寄存器包含收發(fā)器配置信息,如頻率和輸出功能等;發(fā)送地址寄存器包含接收機(jī)的地址和數(shù)據(jù)的字節(jié)數(shù);發(fā)送數(shù)據(jù)寄存器包含待發(fā)送的數(shù)據(jù)包的信息,如字節(jié)數(shù)等;接收數(shù)據(jù)寄存器包含要接收的數(shù)據(jù)的字節(jié)數(shù)等信息。射頻寄存器的各位的長度是固定的。然而,在ShockBurstTM收發(fā)過程中,TX_PAYLOAD、RX_PAYLOAD、TX_ADDRESS和RX_ADDRES
66、S 4個(gè)寄存器使用字節(jié)數(shù)由配置字決定。通過對各個(gè)寄存器進(jìn)行設(shè)置來實(shí)現(xiàn)數(shù)據(jù)收發(fā)的具體功能[22]。下表4.1為nRF905的各個(gè)寄存器的配置。</p><p> 表4.1 nRF905射頻配置寄存器</p><p><b> 字節(jié)0:</b></p><p> [7:0] CH_NO[7:0]:</p><p>
67、連同字節(jié)1的CH_NO[8]和HFREQ_PLL控制905的載波頻段</p><p><b> 參考設(shè)置:</b></p><p> Operating frequency HFREQ_PLL CH_NO</p><p> 430.0 MHz [0] [001001100]</p><p> 433.1 MHz
68、[0] [001101011]</p><p> 433.2 MHz [0] [001101100]</p><p> 434.7 MHz [0] [001111011]</p><p> 862.0 MHz [1] [001010110]</p><p> 868.2 MHz [1] [001110101]</p>&
69、lt;p> 868.4 MHz [1] [001110110]</p><p> 869.8 MHz [1] [001111101]</p><p> 902.2 MHz [1] [100011111]</p><p> 902.4 MHz [1] [100100000]</p><p> 927.8 MHz [1] [110
70、011111]</p><p> 載波頻率的計(jì)算公式:</p><p><b> 字節(jié)1:</b></p><p> [0] CH_NO [8] :參見字節(jié)0</p><p> [1] HFREQ_PLL :</p><p> 0 - 器件工作在433MHZ頻段</p>&
71、lt;p> 1 - 期間工作在868/915MHZ頻段</p><p> [3:2] PA_PWR :</p><p><b> 輸出功率</b></p><p> 00 -10dBm (默認(rèn))</p><p><b> 01 -2dBm</b></p><p&g
72、t;<b> 10 +6dBm</b></p><p><b> 11 +10dBm</b></p><p> [4] RX_RED_PWR :</p><p> 降低接收模式電流消耗至1.6mA,靈敏度降低。</p><p> 0 - 正常模式 (默認(rèn))</p><p
73、><b> 1 - 低功耗模式</b></p><p> [5] AUTO_RETRAN:</p><p> 自動(dòng)重發(fā)TX寄存器中的數(shù)據(jù)包,如果TRX_CE和TX_EN被設(shè)置為高。</p><p> 0 - 不重發(fā)數(shù)據(jù)包 (默認(rèn))</p><p> 1 - 自動(dòng)重發(fā)數(shù)據(jù)包</p><p
74、><b> [7:6] 保留</b></p><p><b> 字節(jié)2</b></p><p> [2:0] RX_AWF [2:0] :</p><p><b> RX地址寬度</b></p><p> 001 - 1字節(jié)RX地址寬度 (默認(rèn))</p&g
75、t;<p> 100 - 4字節(jié)RX地址寬度</p><p><b> [3] 保留</b></p><p> [6:4] TX_AWF [2:0] :</p><p><b> TX地址寬度</b></p><p> 001 - 1字節(jié)TX地址寬度</p>&
76、lt;p> 100 - 4 字節(jié)TX地址寬度</p><p><b> [7] 保留</b></p><p><b> 字節(jié)3</b></p><p> [5:0] RX_PW [5:0] :</p><p> RX接收有效數(shù)據(jù)寬度</p><p> 000
77、001 - 1字節(jié)RX有效數(shù)據(jù)寬度</p><p> 000010 - 2字節(jié)RX有效數(shù)據(jù)寬度</p><p><b> ……</b></p><p> 100000 - 32字節(jié)RX有效數(shù)據(jù)寬度</p><p><b> [7:6] 保留</b></p><p>&
78、lt;b> 字節(jié)4</b></p><p> [5:0] TX_PW [5:0] :</p><p> TX發(fā)送有效數(shù)據(jù)寬度</p><p> 000001 - 1字節(jié)TX有效數(shù)據(jù)寬度</p><p> 000010 - 2字節(jié)TX有效數(shù)據(jù)寬度</p><p><b> ……&l
79、t;/b></p><p> 100000 - 32字節(jié)TX有效數(shù)據(jù)寬度</p><p><b> [7:6] 保留</b></p><p> 字節(jié)5 : RX地址0字節(jié)</p><p> 字節(jié)6 : RX地址1字節(jié)</p><p> 字節(jié)7 : RX地址2字節(jié)</p>
80、<p> 字節(jié)8 : RX地址3字節(jié)</p><p><b> 字節(jié) 9</b></p><p> [1:0] UP_CLK_FREQ [1:0]:</p><p><b> 輸出時(shí)鐘頻率</b></p><p><b> 00 - 4MHZ</b>&l
81、t;/p><p><b> 01 - 2MHZ</b></p><p><b> 10 - 1MHZ</b></p><p> 11 - 500KHZ</p><p> [2] UP_CLK_EN :</p><p><b> 輸出時(shí)鐘使能</b>
82、</p><p> 0 - 沒有外部時(shí)鐘</p><p> 1 - 外部時(shí)鐘信號(hào)使能 (默認(rèn))</p><p> [5:3] XOF [2:0] :</p><p> 晶體振蕩器頻率,必須依據(jù)外部晶體的標(biāo)稱頻率設(shè)置</p><p> (無線模塊上nRF905芯片外接晶振的頻率)</p><
83、p> 000 - 4MHZ</p><p> 001 - 8MHZ</p><p> 010 - 12MHZ</p><p> 011 - 16MHZ</p><p> 100 - 20MHZ (默認(rèn))</p><p> [6] CRC_EN :</p><p><b&
84、gt; CRC校驗(yàn)允許</b></p><p><b> 0 - 部允許</b></p><p> 1 - 允許 (默認(rèn))</p><p> [7] CRC_MODE :</p><p><b> CRC模式</b></p><p> 0 - 8位CR
85、C校驗(yàn)位</p><p> 1 -16位CRC校驗(yàn)位 (默認(rèn))</p><p> /*nRF905寄存器配置參數(shù)*/</p><p> typedef struct RFConfig</p><p><b> {</b></p><p><b> uchar n;</b&
86、gt;</p><p> uchar buf[10];</p><p> }RFConfig;</p><p> code RFConfig RxTxConf =</p><p><b> {</b></p><p><b> 10,</b></p>
87、<p><b> 0x4c, </b></p><p> 0x0c, //不重發(fā),433MHz,+10dBm,正常模式</p><p> 0x44, //收發(fā)各4字節(jié)地址寬度</p><p><b> 0x20, </b></p><p> 0x20, //收發(fā)有效數(shù)據(jù)寬度32位
88、</p><p><b> 0xcc, </b></p><p><b> 0xcc,</b></p><p><b> 0xcc,</b></p><p> 0xcc, //接收機(jī)地址</p><p> 0x58 //16位CRC校驗(yàn),允許校
89、驗(yàn),晶振16MHz,沒有外部時(shí)鐘</p><p><b> };</b></p><p> //buf[10] 中數(shù)據(jù)對應(yīng) 字節(jié)0 ~字節(jié)9 </p><p> 通過SPI接口向nRF905 配置寄存器讀寫配置信息</p><p> nRF905通過SPI接口與單片機(jī)通訊,SPI外圍串行接口由四條線構(gòu)成: MOS
90、I主機(jī)輸出從機(jī)輸入 (主機(jī)寫操作) 、MISO主機(jī)輸入從機(jī)輸出 (主機(jī)讀操作) 、SCK串行時(shí)鐘信號(hào),由主機(jī)控制 、CSN 片選信號(hào),低電平有效[23]。</p><p><b> SPI寫操作</b></p><p> 步驟一:MOSI線準(zhǔn)備好需要發(fā)送的數(shù)據(jù)位</p><p> 步驟二:SCK置高,器件讀取MOSI線上的數(shù)據(jù)</p
91、><p> 步驟三:SCK置低,準(zhǔn)備發(fā)送數(shù)據(jù)的下一位</p><p> 以上步驟循環(huán)執(zhí)行8次,通過SPI向器件發(fā)送數(shù)據(jù)完成!</p><p> //<SPI寫操作 代碼></p><p> void SpiWrite(uchar byte) </p><p><b> { </b>
92、;</p><p><b> uchar i; </b></p><p> DATA_BUF=byte; // 將需要發(fā)送的數(shù)據(jù)寫入緩存 </p><p> for (i=0;i<8;i++) // 循環(huán)8次發(fā)送一個(gè)字節(jié)的數(shù)據(jù) </p><p><b> { <
93、/b></p><p> if (flag) // flag = DATA_BUF^7; </p><p><b> MOSI=1; </b></p><p><b> else </b></p><p><b> MOSI=0; </b>
94、;</p><p> SCK=1; // SCK 高電平 </p><p> DATA_BUF=DATA_BUF<<1; // 左移一位,為下一位的發(fā)送做準(zhǔn)備 </p><p> SCK=0; // SCK 低電平 </p><p><b>
95、 } </b></p><p><b> }</b></p><p><b> SPI讀操作 </b></p><p> 步驟一:MISO線準(zhǔn)備好需要發(fā)送的數(shù)據(jù)位</p><p> 步驟二:SCK置高,主機(jī)讀取MISO線上的數(shù)據(jù)</p><p> 步驟三
96、:SCK置低,準(zhǔn)備接收數(shù)據(jù)的下一位</p><p> 以上步驟循環(huán)執(zhí)行8次,通過SPI從器件上讀數(shù)據(jù)完成!</p><p> //<SPI讀操作 代碼></p><p> uchar SpiRead(void) </p><p><b> { </b></p><p><
97、b> uchar i; </b></p><p> for (i=0;i<8;i++) //循環(huán)8次發(fā)送一個(gè)字節(jié)的數(shù)據(jù) </p><p><b> { </b></p><p> DATA_BUF=DATA_BUF<<1; //左移一位,準(zhǔn)備接收下一位數(shù)據(jù) </p&g
98、t;<p> SCK=1; // SCK 高電平 </p><p> if (MISO) </p><p> flag1=1; </p><p><b> else </b></p><p><b> flag1=0; </b&
99、gt;</p><p> SCK=0; // SCK低電平 </p><p><b> } </b></p><p> return DATA_BUF; // DATA_BUF 為接收到的完整數(shù)據(jù) </p><p><b> } </b>&l
100、t;/p><p> 主機(jī)通過SPI接口向nRF905配置寄存器寫入信息 </p><p> 步驟一:CSN置低電平,SPI接口開始等待第一條指令</p><p> 步驟二:調(diào)用SpiWrite函數(shù),向器件發(fā)送WC信號(hào),準(zhǔn)備寫入配置信息</p><p> 步驟三:反復(fù)調(diào)用SpiWrite函數(shù),向器件配置寄存器寫入配置信息</p>
101、<p> 步驟四:CSN置高電平,結(jié)束SPI通訊。</p><p> nRF905配置完成!</p><p> //<主機(jī)通過SPI接口向905配置寄存器寫入信息></p><p> void Config905(void) </p><p><b> { </b></p>
102、<p><b> uchar i; </b></p><p> CSN=0; // CSN片選信號(hào),SPI使能 </p><p> SpiWrite(WC); // 向905芯片寫配置命令 </p><p> for (i=0;i<
103、RxTxConf.n;i++) // 循環(huán)寫入配置信息 </p><p><b> { </b></p><p> SpiWrite(RxTxConf.buf[i]); //RxTxConf保存預(yù)先設(shè)置好的配置信息 </p><p><b> } </b></p><p> CSN
104、=1; // 結(jié)束SPI數(shù)據(jù)傳輸</p><p><b> }</b></p><p> 4.3 nRF905數(shù)據(jù)發(fā)送</p><p> nRF905發(fā)送流程分以下幾步: </p><p> 1. 當(dāng)微控制器有數(shù)據(jù)要發(fā)送時(shí),通過SPI接口,按時(shí)序把接收機(jī)的地址和要發(fā)送的
105、數(shù)據(jù)送傳給nRF905,SPI接口的速率在通信協(xié)議和器件配置時(shí)確定。 </p><p> 2. 微控制器置高TRX_CE和TX_EN,激發(fā)nRF905的ShockBurstTM發(fā)送模式。 </p><p> 3. nRF905的ShockBurstTM發(fā)送: </p><p> (1) 射頻寄存器自動(dòng)開啟; </p><p> (2)
106、 數(shù)據(jù)打包(加字頭和CRC校驗(yàn)碼); </p><p> (3) 發(fā)送數(shù)據(jù)包; </p><p> (4) 當(dāng)數(shù)據(jù)發(fā)送完成,數(shù)據(jù)準(zhǔn)備好引腳被置高; </p><p> 4. AUTO_RETRAN被置高,nRF905不斷重發(fā),直到TRX_CE被置低。</p><p> 5. 當(dāng)TRX_CE被置低,nRF905發(fā)送過程完成,自動(dòng)進(jìn)入空閑
107、模式。</p><p> 注意:ShockBurstTM工作模式保證,一旦發(fā)送數(shù)據(jù)的過程開始,無論TRX_EN和TX_EN引腳是高或低,發(fā)送過程都會(huì)被處理完。只有在前一個(gè)數(shù)據(jù)包被發(fā)送完畢,RF905才能接受下一個(gè)發(fā)送數(shù)據(jù)包[24]。</p><p> 設(shè)置器件為發(fā)送模式 :</p><p><b> TX_EN=1; </b></p
108、><p> TRX_CE=0; </p><p> 使用nRF905發(fā)送數(shù)據(jù) :</p><p> void TxPacket(void) </p><p><b> { </b></p><p><b> uchar i; </b></p><p&
109、gt;<b> CSN=0; </b></p><p> SpiWrite(WTP); // Write payload command </p><p> for (i=0;i<32;i++) </p><p><b> { </b></p><p> Spi
110、Write(TxBuf[i]); // 寫入32直接發(fā)送數(shù)據(jù) </p><p><b> } </b></p><p> CSN=1; // 關(guān)閉SPI,保存寫入的數(shù)據(jù) </p><p> Delay(1); </p><p> CSN=0;
111、 // SPI使能,準(zhǔn)備寫入地址信息 </p><p> SpiWrite(WTA); // 寫數(shù)據(jù)至地址寄存器 </p><p> for (i=0;i<4;i++) // 寫入4字節(jié)地址 </p><p><b> { </b></p><p> SpiWrite
112、(RxTxConf.buf[i+5]); </p><p><b> } </b></p><p> CSN=1; // 關(guān)閉SPI </p><p> TRX_CE=1; // 進(jìn)入發(fā)送模式,啟動(dòng)射頻發(fā)送 </p><p> Delay(1);
113、 // 進(jìn)入ShockBurst發(fā)送模式后,芯片保證數(shù)據(jù)發(fā)送完成后返回STANDBY模式 </p><p> TRX_CE=0; </p><p><b> }</b></p><p> 4.4 nRF905數(shù)據(jù)接收</p><p><b> 接收流程 :</b><
114、;/p><p> 1. 當(dāng)TRX_CE為高、TX_EN為低時(shí),RF905進(jìn)入ShockBurstTM接收模式; </p><p> 2. 650us后,RF905不斷監(jiān)測,等待接收數(shù)據(jù); </p><p> 3. 當(dāng)RF905檢測到同一頻段的載波時(shí),載波檢測引腳被置高; </p><p> 4. 當(dāng)接收到一個(gè)相匹配的地址,AM引腳被置高;
115、 </p><p> 5. 當(dāng)一個(gè)正確的數(shù)據(jù)包接收完畢, RF905自動(dòng)移去字頭、地址和CRC校驗(yàn)位,然后把DR引腳置高 </p><p> 6. 微控制器把TRX_CE置低,nRF905進(jìn)入空閑模式; </p><p> 7. 微控制器通過SPI口,以一定的速率把數(shù)據(jù)移到微控制器內(nèi); </p><p> 8. 當(dāng)所有的數(shù)據(jù)接收完畢,
116、nRF905把DR引腳和AM引腳置低; </p><p> 9. nRF905此時(shí)可以進(jìn)入ShockBurstTM接收模式、ShockBurstTM發(fā)送模式或關(guān)機(jī)模式。 </p><p> 當(dāng)正在接收一個(gè)數(shù)據(jù)包時(shí),TRX_CE或TX_EN引腳的狀態(tài)發(fā)生改變,RF905立即把其工作模式改變,數(shù)據(jù)包則丟失。當(dāng)微處理器接到AM引腳的信號(hào)之后, 其就知道RF905正在接收數(shù)據(jù)包,其可以決定是讓
117、RF905繼續(xù)接收該數(shù)據(jù)包還是進(jìn)入另一個(gè)工作模式[21]。</p><p><b> 設(shè)置器件為接收模式</b></p><p><b> TX_EN=0; </b></p><p> TRX_CE=1; </p><p> 使用nRF905發(fā)送數(shù)據(jù) :</p><p&g
118、t; void RxPacket(void)</p><p><b> { </b></p><p><b> uchar i; </b></p><p> TRX_CE=0; // 設(shè)置905進(jìn)入待機(jī)模式 </p><p> CSN=0;
119、 // 使能SPI </p><p> SpiWrite(RRP); // 準(zhǔn)備讀取接收到的數(shù)據(jù) </p><p> for (i=0;i<32;i++) </p><p><b> { </b></p><p> RxBuf[i]=SpiRead
120、(); // 通過SPI接口從905芯片讀取數(shù)據(jù) </p><p><b> } </b></p><p> CSN=1; // 禁用SPI </p><p> while(DR||AM); </p><p><b> TRX_CE=1;<
121、/b></p><p><b> 4.5本章小結(jié)</b></p><p> 本章軟設(shè)計(jì)件部分繪制了主程序的流程圖,主要介紹了各個(gè)模塊的軟件設(shè)計(jì),和實(shí)現(xiàn)各模塊的具體方法,詳細(xì)介紹了PTR8000無線收發(fā)模塊在發(fā)送、接收的流程以及參數(shù)的設(shè)置。</p><p><b> 5系統(tǒng)調(diào)試</b></p>&l
122、t;p> 本章主要介紹了作者在進(jìn)行硬件制作和各模塊調(diào)試中遇到的問題、以及分析問題和解決問題的方法。</p><p><b> 5.1硬件調(diào)試</b></p><p> (1)在焊接實(shí)物時(shí)將單片機(jī)P0口的上拉電阻接錯(cuò)。,最后不得不將電阻取下重新焊接。</p><p> (2)在焊接串口與MAX232芯片時(shí)將串口引腳弄錯(cuò),取下串口時(shí)不
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)論文評(píng)審材料
- 無線呼叫系統(tǒng)設(shè)計(jì)【畢業(yè)論文】
- 畢業(yè)論文——無線視頻監(jiān)控系統(tǒng)設(shè)計(jì)
- 無線數(shù)據(jù)收發(fā)系統(tǒng)畢業(yè)論文資料
- 電大畢業(yè)論文評(píng)審表
- 畢業(yè)論文(設(shè)計(jì))評(píng)審表
- 有害氣體無線監(jiān)控系統(tǒng)【畢業(yè)論文】
- 畢業(yè)論文評(píng)審書.doc
- 靜脈無線輸液監(jiān)控系統(tǒng)畢業(yè)論文
- 畢業(yè)論文范文——無線收發(fā)系統(tǒng)
- 鐵路無線通信系統(tǒng)畢業(yè)論文
- 無線視頻監(jiān)控系統(tǒng)設(shè)計(jì)畢業(yè)論文
- 畢業(yè)論文范文——無線收發(fā)系統(tǒng)
- 無線遙控畢業(yè)論文
- 無線鼠標(biāo)畢業(yè)論文
- 畢業(yè)論文——單工無線發(fā)射接收系統(tǒng)
- 畢業(yè)論文評(píng)審工作細(xì)則
- 無線視頻監(jiān)控系統(tǒng)設(shè)計(jì)畢業(yè)論文資料
- 無線信號(hào)傳輸畢業(yè)論文
- 無線門鈴設(shè)計(jì)畢業(yè)論文
評(píng)論
0/150
提交評(píng)論