2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩42頁(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、<p>  本科畢業(yè)設(shè)計(jì)(論文)</p><p><b>  (2012屆)</b></p><p>  論文題目 基于NRF2401無(wú)線模塊的溫度采集 (英文) The temperature acquisition system based on NRF2401 wireless modules </p><

2、p>  所在學(xué)院 電子信息學(xué)院 </p><p>  專業(yè)班級(jí) </p><p><b>  學(xué)生姓名 </b></p><p><b>  指導(dǎo)教師 </b></p><p>  完成日期 2012 年 </p&

3、gt;<p><b>  摘 要</b></p><p>  文章主要是介紹了一個(gè)基于NRF2401的點(diǎn)對(duì)點(diǎn)短距離無(wú)線溫度控制系統(tǒng)的設(shè)計(jì)思想和實(shí)現(xiàn)方法。系統(tǒng)以凌陽(yáng)SPCE061A單片機(jī)作為主控制器,采用數(shù)字式溫度傳感器DS18B20采集數(shù)據(jù),用工作于2.4G波段的無(wú)線收發(fā)芯片nRF2401做無(wú)線傳輸,目的是實(shí)現(xiàn)短距離溫度的無(wú)線采集。在生活和工業(yè)應(yīng)用中,該系統(tǒng)相對(duì)于其他溫度采集

4、系統(tǒng)來(lái)說(shuō),其優(yōu)點(diǎn)是機(jī)構(gòu)簡(jiǎn)單,并且解決了一些不允許人們直接采集系統(tǒng)的問(wèn)題。該系統(tǒng)的可靠性高,數(shù)據(jù)傳輸速度快,功能易擴(kuò)展,適用于多種應(yīng)用領(lǐng)域。</p><p>  文章首先簡(jiǎn)單介紹了無(wú)線溫度采集技術(shù)及無(wú)線收發(fā)芯片的發(fā)展近況,結(jié)合了系統(tǒng)方案的要求,論證了實(shí)現(xiàn)溫度數(shù)據(jù)采集與無(wú)線傳輸方案的設(shè)計(jì)思路及系統(tǒng)的總體架構(gòu),完成了各項(xiàng)功能相關(guān)的軟件設(shè)計(jì)以及系統(tǒng)的通信協(xié)議。系統(tǒng)主要分為兩部分,發(fā)射端和接收端。在工作過(guò)程中,溫度傳感器D

5、S18B20將采集的溫度通過(guò)主控芯片將數(shù)據(jù)傳輸給作為發(fā)射端的無(wú)線收發(fā)器NFR2401,并傳送給另外一個(gè)無(wú)線收發(fā)器NRF2401,通過(guò)LCD顯示出溫度值。在發(fā)射端,將溫度傳感器采集的溫度數(shù)據(jù)發(fā)送至接收端;在接收端,將收集到的數(shù)據(jù)通過(guò)液晶顯示器進(jìn)行顯示。</p><p>  關(guān)鍵詞:凌陽(yáng)單片機(jī);無(wú)線收發(fā)器;DS18B20</p><p><b>  Abstract</b>

6、;</p><p>  The article is to introduce the design philosophy and its implementing method of a point-to-point short-range wireless temperature control system based on RNF2401 wireless modules . The system use

7、s Sunplus SPCE061A MCU as the master controller , digital temperature sensor DS18B20 collects data , uses wireless transceiver chip the NRF2401 that working in the 2.4G band do wireless transmission , to achieve collecti

8、ng temperature data of short distance wireless . In domestic and industrial applicat</p><p>  Wireless temperature article first briefly describe the acquisition and development of wireless transceiver chip,

9、 combined with the system requirements, demonstration and implementation of temperature data acquisition and wireless transmission scheme design and the overall architecture of the system, complete the function of softwa

10、re design and systems of communication protocols. This system can be divided into two parts, the transmitter and the receiver. In the course of work, temperature senso</p><p>  Key Words: Sunplus microcontro

11、ller ; wireless transceiver ; DS18B20</p><p><b>  目 錄</b></p><p><b>  1 引言1</b></p><p>  1.1 無(wú)線溫度采集技術(shù)簡(jiǎn)介1</p><p>  1.2 數(shù)據(jù)采集技術(shù)發(fā)展1</p>&

12、lt;p>  1.3 課題研究主要內(nèi)容2</p><p><b>  2 總體設(shè)計(jì)3</b></p><p><b>  2.1系統(tǒng)方案3</b></p><p>  2.2 系統(tǒng)總體設(shè)計(jì)思路3</p><p>  2.2.1 核心控制電路3</p><p>

13、  2.2.2 溫度采集電路4</p><p>  2.2.3 顯示系統(tǒng)電路4</p><p>  2.2.4 無(wú)線收發(fā)電路4</p><p><b>  3 硬件設(shè)計(jì)6</b></p><p>  3.1 硬件連接6</p><p>  3.2 SPCE061A概述6</p&

14、gt;<p>  3.2.1 SPCE061A模塊結(jié)構(gòu)7</p><p>  3.2.2 SPCE061A主要性能7</p><p>  3.3 無(wú)線模塊8</p><p>  3.4 溫度采集模塊9</p><p>  3.4.1 DS18B20簡(jiǎn)介9</p><p>  3.4.2

15、 DS18B20工作原理11</p><p><b>  4 軟件設(shè)計(jì)12</b></p><p>  4.1軟件開(kāi)發(fā)工具12</p><p>  4.2軟件主體部分及流程圖13</p><p>  4.2.1溫度采集原理框圖13</p><p>  4.2.2數(shù)據(jù)收發(fā)模塊18<

16、/p><p>  4.2.3 DS18B20的工作時(shí)序21</p><p>  5 制作和調(diào)試23</p><p>  5.1 硬件制作和調(diào)試23</p><p>  5.2 軟件制作和調(diào)試24</p><p><b>  6 結(jié)論26</b></p><p><

17、;b>  致 謝27</b></p><p><b>  參考文獻(xiàn)28</b></p><p>  附錄1 系統(tǒng)實(shí)物圖29</p><p>  附錄2 實(shí)驗(yàn)原理圖30</p><p>  附錄3 源程序32</p><p><b>  1 引言<

18、/b></p><p>  1.1 無(wú)線溫度采集技術(shù)簡(jiǎn)介</p><p>  隨著計(jì)算機(jī)網(wǎng)絡(luò)與通信技術(shù)、自動(dòng)控制技術(shù)、微電子技術(shù)、檢測(cè)與傳感技術(shù)等的飛速發(fā)展和普及,計(jì)算機(jī)控制技術(shù)的不斷提高,在數(shù)據(jù)采集方面,數(shù)據(jù)采集卡、儀器放大器、數(shù)字信號(hào)處理芯片等技術(shù)的不斷升級(jí)和更新。數(shù)溫度據(jù)采集是工、農(nóng)業(yè)控制系統(tǒng)中的重要的性是不言而喻的。在醫(yī)藥、化工以及食品等多個(gè)領(lǐng)域的生產(chǎn)和發(fā)展中,總是要對(duì)每個(gè)生

19、產(chǎn)環(huán)節(jié)中的溫度參數(shù)進(jìn)行檢測(cè)。與此同時(shí),還要對(duì)隨機(jī)抽取的任一監(jiān)測(cè)點(diǎn)的任一參數(shù)進(jìn)行查詢,并且將在一個(gè)較長(zhǎng)時(shí)間段內(nèi)檢測(cè)到的溫度參數(shù)進(jìn)行轉(zhuǎn)換后提取出來(lái),這樣做的目的是為了便于比較,做出一個(gè)接近正確的決策,調(diào)整控制方案,總的一處是在提高產(chǎn)品合格率的同時(shí)能夠取得良好的經(jīng)濟(jì)效益。</p><p>  1.2 數(shù)據(jù)采集技術(shù)發(fā)展</p><p>  隨著工、農(nóng)業(yè)的發(fā)展,無(wú)線溫度采集系統(tǒng)得到了越來(lái)越多的應(yīng)用,

20、為適應(yīng)這一趨勢(shì),無(wú)線溫度采集技術(shù)的研究也突顯了它的重要性。在科學(xué)研究中,運(yùn)用無(wú)線采集系統(tǒng)可獲得大量的動(dòng)態(tài)信息,這也是獲取科學(xué)數(shù)據(jù)重要手段之一。總而言之,不論在哪個(gè)應(yīng)用領(lǐng)域中,無(wú)線數(shù)據(jù)采集與處理直接影響工作效率和所取得的經(jīng)濟(jì)效益。</p><p>  從嚴(yán)格的意義上來(lái)說(shuō),數(shù)據(jù)采集系統(tǒng),應(yīng)該是計(jì)算機(jī)控制的多路數(shù)據(jù)自動(dòng)檢測(cè)或巡回檢測(cè),能對(duì)數(shù)據(jù)實(shí)行存儲(chǔ)、處理、分析計(jì)算并從檢測(cè)的數(shù)據(jù)中提取可用的信息,供顯示、記錄、打印或描

21、繪的系統(tǒng)。 數(shù)據(jù)采集系統(tǒng)一般包括以下五個(gè)部分:數(shù)據(jù)輸入通道、數(shù)據(jù)存儲(chǔ)與管理、數(shù)據(jù)處理、數(shù)據(jù)輸出以及顯示。其中,數(shù)據(jù)輸入通道的實(shí)現(xiàn)目的是檢測(cè)、采樣以及對(duì)被測(cè)對(duì)象的進(jìn)行信號(hào)轉(zhuǎn)換三大主要工作。數(shù)據(jù)存儲(chǔ)與管理將采集到的數(shù)據(jù)通過(guò)存儲(chǔ)器存儲(chǔ)后并在此基礎(chǔ)上建立對(duì)應(yīng)的數(shù)據(jù)庫(kù),并且對(duì)數(shù)據(jù)庫(kù)進(jìn)行管理、篩選和調(diào)用。數(shù)據(jù)處理是針對(duì)最初采集的數(shù)據(jù),即原始數(shù)據(jù),刪除不必要的信息,例如干擾噪聲和無(wú)法反應(yīng)檢測(cè)對(duì)象的信息,保留和提取能夠準(zhǔn)確反應(yīng)被測(cè)對(duì)象的相關(guān)信息

22、,對(duì)采集的數(shù)據(jù)做一個(gè)整體的統(tǒng)計(jì)和分析報(bào)告,方便檢索。數(shù)據(jù)輸出就是把數(shù)據(jù)恢復(fù)成原來(lái)物理量的形式,以可輸出的形態(tài)在輸出設(shè)備上輸出,例如打印、顯示、繪圖等。</p><p>  1.3 課題研究主要內(nèi)容</p><p>  本課題為基于NRF2401溫度采集系統(tǒng)設(shè)計(jì)。設(shè)計(jì)目的是利用NRF2401無(wú)線收發(fā)模塊實(shí)現(xiàn)系統(tǒng)間的無(wú)線通信。NRF2401具有成本低、低功率、節(jié)能等特點(diǎn),這使得這一目的的實(shí)現(xiàn)順

23、暢不少。本系統(tǒng)分為兩部分,在工作過(guò)程中,溫度傳感器DS18B20采集溫度通過(guò)無(wú)線收發(fā)器NRF2401發(fā)射端傳送給無(wú)線收發(fā)器的接收端,并通過(guò)LCD顯示溫度值。該系統(tǒng)使用方便,在工業(yè)控制、消費(fèi)電子等領(lǐng)域都具有較廣闊的應(yīng)用前景。</p><p>  課題基于凌陽(yáng)十六位單片機(jī)進(jìn)行指令遙控,通過(guò)無(wú)線傳輸模塊進(jìn)行數(shù)據(jù)傳輸和遙控。系統(tǒng)分兩部分:發(fā)射模塊和接收模塊。其中發(fā)射模塊由凌陽(yáng)SPCE061A單片機(jī)控制模塊、NRF2401

24、無(wú)線傳輸模塊和DS18B20溫度采集模塊組成;接收模塊由凌陽(yáng)SPCE061A單片機(jī)控制模塊、NRF2401無(wú)線接收模塊和顯示設(shè)備組成。</p><p>  在發(fā)射模塊處,由按鍵控制單片機(jī),然后控制無(wú)線傳輸模塊發(fā)射相應(yīng)數(shù)據(jù)至接收模塊處。接收模塊處,無(wú)線接收模塊接收信號(hào),通過(guò)單片機(jī)控制模塊處理,然后控制各個(gè)模塊來(lái)完成相應(yīng)的指令。</p><p><b>  2 總體設(shè)計(jì)</b&

25、gt;</p><p><b>  2.1系統(tǒng)方案</b></p><p>  本系統(tǒng)用單片機(jī)作為控制核心,接受來(lái)自ADC0809的數(shù)據(jù),處理后通過(guò)串口傳送,并完成采樣通道的選擇。在每次的采集過(guò)程中,所采集的參數(shù)數(shù)目、采樣點(diǎn)數(shù)、采樣速率、采樣精度都固定不變。單片機(jī)通過(guò)無(wú)線模塊發(fā)收數(shù)據(jù),在接收端通過(guò)單片機(jī)處理控制驅(qū)動(dòng)顯示器顯示采集到的數(shù)據(jù)。系統(tǒng)以凌陽(yáng)SPCE061A單片

26、機(jī)作為主控芯片,建立兩個(gè)主板,一塊作為發(fā)射端,一塊作為接收端。在發(fā)射端,將溫度傳感器采集的溫度數(shù)據(jù)發(fā)送。在接收端,將收集到的數(shù)據(jù)通過(guò)液晶顯示器進(jìn)行顯示。</p><p>  2.2 系統(tǒng)總體設(shè)計(jì)思路</p><p>  設(shè)計(jì)一個(gè)短距離無(wú)線溫度采集設(shè)備,并且該電子設(shè)備可以把溫度通過(guò)LCD顯示出來(lái)。本短距離無(wú)線溫度系統(tǒng)主要由兩部分組成,系統(tǒng)框圖如圖1所示:</p><p&g

27、t;  圖2-1 整體系統(tǒng)原理框圖</p><p>  2.2.1 核心控制電路</p><p>  核心控制類芯片很多,比如89C51單片機(jī)、ARM等單片機(jī)。核心控制芯片的選擇對(duì)整個(gè)方案和外圍器件的選擇都有決定性的影響,因此,對(duì)于控制芯片的選擇,我們考慮得很慎重??紤]到芯片的性能和我們的熟悉情況,選擇了凌陽(yáng)公司的SPCE061A單片機(jī)作為控制電路。首先我們對(duì)凌陽(yáng)單片機(jī)非常熟悉,這樣也能

28、降低我們的設(shè)計(jì)難度,節(jié)省一些時(shí)間。其次這款單片機(jī)的工作速度較高,具有32位編程多功能I/O端口,2個(gè)16位定時(shí)器/計(jì)數(shù)器,內(nèi)置有16位乘法器。凌陽(yáng)十六位單片機(jī)集成開(kāi)發(fā)環(huán)境集軟件編輯編譯仿真鏈接在線編程在線調(diào)試等眾多功能于一體,具有友好的交互界面,程調(diào)試工作更加方便且高效,此外它的軟件仿真功能可以在不連接開(kāi)發(fā)板的情況下模擬硬件的各項(xiàng)功能來(lái)調(diào)試程序。</p><p>  2.2.2 溫度采集電路</p>

29、<p>  本系統(tǒng)溫度采集部分采用溫度傳感器DS18B20。DS18B20 測(cè)溫系統(tǒng)具有測(cè)溫系統(tǒng)簡(jiǎn)單、測(cè)溫精度高、連接方便、占用口線少等優(yōu)點(diǎn)。DS18B20數(shù)字溫度傳感器接線方便,封裝后還可以應(yīng)用于多種場(chǎng)合,如管道式、螺紋式、磁鐵吸附式、不銹鋼封裝式。封裝后的DS18B20可用于彈藥庫(kù)測(cè)溫、電纜溝測(cè)溫、機(jī)房測(cè)溫、高爐水循環(huán)測(cè)溫、鍋爐測(cè)溫、潔凈室測(cè)溫、農(nóng)業(yè)大棚測(cè)溫等各種非極限溫度場(chǎng)合。該溫度傳感器具有體積小、耐磨耐碰、使用方便

30、、封裝形式多樣等特點(diǎn),適用于各種狹小空間設(shè)備的數(shù)字測(cè)溫和控制領(lǐng)域。</p><p>  2.2.3 顯示系統(tǒng)電路</p><p>  凌陽(yáng)公司的SPCE061A單片機(jī)有相應(yīng)配套的LCD顯示模塊SPLC501。SPLC501液晶顯示控制驅(qū)動(dòng)器集行、列驅(qū)動(dòng)器和控制器于一體,廣泛應(yīng)用于小規(guī)模液晶顯示模塊。SPLC501單芯片液晶驅(qū)動(dòng),可以直接與其他為控制器接口總線相連。微控制器可以將顯示數(shù)據(jù)通過(guò)

31、8位數(shù)據(jù)總線或者串行接口寫到SPLC501的顯存中。內(nèi)置8580位顯示RAM。RAM中的一位數(shù)據(jù)控制液晶屏上的一個(gè)像素點(diǎn)的亮、暗狀態(tài)?!?”亮、“0”暗[1]。內(nèi)置晶振電路,也可以外接晶振。其工作溫度范圍為-40℃~+85℃。</p><p>  2.2.4 無(wú)線收發(fā)電路</p><p>  這里采用NRF2401是單片射頻收發(fā)芯片作為無(wú)線收發(fā)模塊,NRF2401芯片工作于2.4GHz全球

32、開(kāi)放ISM頻段,125個(gè)頻道,滿足多點(diǎn)通信和跳頻通信需要,工作速率0~1Mb/s,最大發(fā)射功率0dBm,外圍元件極少,內(nèi)置硬件CRC(循環(huán)冗余校驗(yàn))和點(diǎn)對(duì)多點(diǎn)通信地址控制,集成了頻率合成器、晶體振蕩器和調(diào)制解調(diào)器[2],輸出功率和通信頻道可通過(guò)程序進(jìn)行配置。這個(gè)芯片有一個(gè)很大的優(yōu)點(diǎn)就是能耗低,當(dāng)以-5dBm的功率發(fā)射時(shí),其運(yùn)轉(zhuǎn)過(guò)程中產(chǎn)生的電流只有10.5mA,同樣的接收時(shí)運(yùn)轉(zhuǎn)過(guò)程產(chǎn)生的電流也只有18mA。該芯片還有一個(gè)節(jié)能設(shè)計(jì)的優(yōu)點(diǎn),可

33、以在多種低功率模式下工作。DuoCeiverTM技術(shù)的產(chǎn)生使得NRF2401用同一天線就能完成同時(shí)接收來(lái)自于兩個(gè)不同頻道的數(shù)據(jù)的任務(wù)。</p><p><b>  3 硬件設(shè)計(jì)</b></p><p>  本系統(tǒng)硬件主要由采集發(fā)送和接收顯示兩部分組成。</p><p><b>  3.1 硬件連接</b></p>

34、;<p>  基于NRF2401無(wú)線溫度采集系統(tǒng)由兩塊都有SPCE061A作為控制系統(tǒng)的電路板組成。</p><p>  發(fā)射模塊由DS18B20溫度采集模塊、SPCE061A、NRF2401無(wú)線模塊組成,它的硬件連接圖如圖3-1所示:</p><p>  圖3-1 發(fā)射模塊系統(tǒng)硬件連接圖</p><p>  接收模塊由SPCE061A、NRF240

35、1無(wú)線模塊、LCD組成,它的硬件連接圖如圖3-2所示:</p><p>  圖3-2 接收模塊系統(tǒng)硬件連接圖</p><p>  3.2 SPCE061A概述</p><p>  SPCE061A是凌陽(yáng)科技公司μ’nSP?系列產(chǎn)品中的16位微控制器芯片,內(nèi)置32K內(nèi)存,芯片具有較高的處理速度,能夠非常容易、快速地處理復(fù)雜的數(shù)字信號(hào),適用于數(shù)字語(yǔ)音識(shí)別等應(yīng)用領(lǐng)域。

36、在2.6V~3.6V工作電壓范圍內(nèi),SPCE061A的工作速度范圍為0.32MHz~49.152MHz,具備8通道10位ADC輸入功能,內(nèi)置的具有自動(dòng)增益控制的麥克風(fēng)輸入功能,雙通道10位DAC音頻輸出功能及A、B兩個(gè)I/O輸入輸出功能。其主要特點(diǎn)是:語(yǔ)音處理能力,A/D轉(zhuǎn)換功能,開(kāi)發(fā)調(diào)試方便。</p><p>  3.2.1 SPCE061A模塊結(jié)構(gòu)</p><p>  圖3-3所示為

37、SPCE061A的模塊結(jié)構(gòu)圖。其主要模塊有并行I/O端口、模/數(shù)轉(zhuǎn)換ADC、數(shù)/模轉(zhuǎn)換DAC、存儲(chǔ)器RAM&FLASH、定時(shí)器/計(jì)數(shù)器T/C(脈寬調(diào)制輸出PWM)、WatchDog、異步串行通信口UART、指令寄存器IR、設(shè)備串行口SIO、低電壓檢測(cè)LVD(低電壓復(fù)位)等。</p><p>  圖3-3 SPCE061A模塊結(jié)構(gòu)圖</p><p>  3.2.2 SPCE061

38、A主要性能</p><p>  SPCE061A單片機(jī)的主要性能有:內(nèi)核采用μ’nSP?微處理器;工作電壓VDD為2.6~3.6V(CPU),I/O端口高電平VDDH為VDD~5.5V;CPU時(shí)鐘頻率為0.320~49.152MHz;具有可編程音頻處理功能;兩個(gè)16位可編程定時(shí)器/計(jì)數(shù)器;32位通用可編程輸入/輸出端A口和B口;內(nèi)置看門狗監(jiān)視器;內(nèi)置在線仿真(ICE,In-Circuit Emulator)接口。

39、</p><p><b>  3.3 無(wú)線模塊</b></p><p>  NRF2401是NORDIC 公司最近生產(chǎn)的一款無(wú)線通信通信芯片,采用FSK 調(diào)制,內(nèi)部集成NORDIC 自己的Enhanced Short Burst 協(xié)議??梢詫?shí)現(xiàn)點(diǎn)對(duì)點(diǎn)或是1對(duì)6的無(wú)線通信。無(wú)線通信速度可以達(dá)到2M(bps)。</p><p>  NRF2401芯

40、片,提供了一路的數(shù)據(jù)發(fā)送和兩路的數(shù)據(jù)接收功能。無(wú)線傳輸模組接口包括一排10Pin接口J1和一排3Pin的預(yù)留接口J2。J1為芯片的控制和通道1的收發(fā)通道,J2為通道2的預(yù)留接口,通常使用J1接口。</p><p>  NRF2401A電路如圖 3-4:由NRF2401A芯片、晶振部分、穩(wěn)壓部分以及天線組成。Y1、C9、C10構(gòu)成了晶振部分,晶振Y1允許值為:4MHz、8MHz、12 MHz、16 MHz,若需要1

41、Mbps的通信速率,應(yīng)選擇16MHz晶振。穩(wěn)壓部分主要是通過(guò)電容C1、C2、C3處理電壓VDD,并為芯片提供工作電壓。電感L1、L2是構(gòu)成天線的主要元件,NRF2401A芯片ANT1、ANT2管腳產(chǎn)生的2.4G電平信號(hào)通過(guò)它們轉(zhuǎn)換成為電磁波信號(hào),或?qū)㈦姶挪ㄐ盘?hào)轉(zhuǎn)換為電平信號(hào)傳送至芯片的ANT1、ANT2管腳。</p><p>  圖3-4 NRF2401電路圖</p><p>  I/O

42、連接和功能描述如表3-5所示:</p><p><b>  表 3-5 </b></p><p>  單片機(jī)與NRF2401采用SPI接口方式,圖3-6為單片機(jī)向NRF2401發(fā)送數(shù)據(jù)的時(shí)序如圖進(jìn)行交換數(shù)據(jù)。其他寫入命令和讀取NRF2401數(shù)據(jù)與圖3-4類似。</p><p>  圖3-6 單片機(jī)向NRF2401發(fā)送數(shù)據(jù)時(shí)序圖</p&g

43、t;<p>  上述兩種芯片中,NRF2401可直接接單片機(jī)串口,數(shù)據(jù)無(wú)需曼徹斯特編碼,而RF2915芯片不能直接接單片機(jī)串口,數(shù)據(jù)需要進(jìn)行曼徹斯特編碼,效率相對(duì)較低。本次處理器是采用SPCE061A單片機(jī),選用NRF2401效率較高。NRF2401的工作在2.4GHz的自由頻段,方便開(kāi)發(fā),適用于生活中。而且NRF2401是無(wú)線模塊中體積較小、能耗較少、外圍元件最少的低成本射頻系統(tǒng)級(jí)芯片,較為適合本課題的設(shè)計(jì)。</p

44、><p>  3.4 溫度采集模塊</p><p>  3.4.1 DS18B20簡(jiǎn)介</p><p>  美國(guó)Dallas 半導(dǎo)體公司的數(shù)字化溫度傳感器DS18B20是世界上第一片支持 “一線總線”接口的溫度傳感器,在其內(nèi)部使用了在板(ON-B0ARD)專利技術(shù)。全部傳感元件及轉(zhuǎn)換電路集成在形如一只三極管的集成電路內(nèi)。一線總線獨(dú)特而且經(jīng)濟(jì)的特點(diǎn),使用戶可輕松地組建

45、傳感器網(wǎng)絡(luò),為測(cè)量系統(tǒng)的構(gòu)建引入全新概念[3]。</p><p>  DS18B20的測(cè)量溫度范圍為-55℃~+125℃,在-10℃~+85℃范圍內(nèi),精度為±0.5℃;在使用中不需要任何外圍元件,全部傳感元件及轉(zhuǎn)換電路集成在形如一只三極管的集成電路內(nèi);可編程的分辨率為9~12位,對(duì)應(yīng)的可分辨溫度分別為0.5℃、0.25℃、0.125℃和0.0625℃,可以進(jìn)行高精度測(cè)溫;在9位分辨率時(shí)最多在93.75m

46、s內(nèi)把溫度轉(zhuǎn)換為數(shù)字,12位分辨率時(shí)最多在750ms內(nèi)把溫度值轉(zhuǎn)換為數(shù)字,速度快;測(cè)量結(jié)果直接輸出數(shù)字溫度信號(hào),以“一線總線”串行傳送給CPU,同時(shí)可傳送CRC校驗(yàn)碼,具有極強(qiáng)的抗干擾糾錯(cuò)能力;電源極性接反時(shí),芯片不會(huì)因發(fā)熱而燒毀,但是不能正常工作[3]。</p><p>  DS18B20的內(nèi)部結(jié)構(gòu)主要是由64位光刻ROM、溫度傳感器、非揮發(fā)的溫度報(bào)警觸發(fā)器TH和TL、配置寄存器這四部分組成。圖3-7為DS18

47、B20的內(nèi)部結(jié)構(gòu)圖。</p><p>  圖3-7 DS18B20的內(nèi)部結(jié)構(gòu)圖</p><p>  DS18B20可以把溫度信號(hào)直接轉(zhuǎn)換成串行數(shù)字信號(hào)供單片機(jī)處理,采用1-Wire接口,DS18B20的數(shù)據(jù)端DQ可通過(guò)4.7千歐的上拉電阻接SPCE061A單片機(jī)的I/O口。NRF2401的CE、CSN、SCK、MOSI、MISO、IRQ引腳則可接SPCE061的任意端口,但需在編程時(shí)注意

48、,這里接至P1端口。由于NRF2401具有接收數(shù)據(jù)功能,所以接受顯示電路由單片機(jī)SPCE061A,NRF2401和顯示電路組成。所采集的數(shù)據(jù)也通過(guò)串口發(fā)送至PC機(jī)進(jìn)行處理。</p><p>  3.4.2 DS18B20工作原理</p><p>  讀寫時(shí)序和測(cè)溫原理與DS18820相比,兩者得到的溫度值的位數(shù)因分辨率不同而產(chǎn)生差異,并且溫度轉(zhuǎn)換的延時(shí)時(shí)間由2s減少到750ms。如圖3-

49、8所示為DS18B20的測(cè)溫原理。圖中,振蕩頻率受溫度影響很小的低溫度系數(shù)晶振用于產(chǎn)生固定頻率的脈沖信號(hào),送給計(jì)數(shù)器1;振蕩頻率隨溫度變化明顯改變的高溫度系數(shù)晶振,其產(chǎn)生的信號(hào)作為計(jì)數(shù)器2的脈沖輸入。計(jì)數(shù)器1和溫度寄存器被預(yù)置在-55℃所對(duì)應(yīng)的一個(gè)基數(shù)值。計(jì)數(shù)器1對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行減法計(jì)數(shù),當(dāng)計(jì)數(shù)器1的預(yù)置值減到0時(shí),溫度寄存器的值將加1,計(jì)數(shù)器1的預(yù)置將重新被裝入,計(jì)數(shù)器1重新開(kāi)始對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行計(jì)數(shù)

50、,如此循環(huán)直到計(jì)數(shù)器2計(jì)數(shù)到0時(shí),停止溫度寄存器值的累加,此時(shí)溫度寄存器中的數(shù)值即為所測(cè)溫度。圖3-8中的斜率累加器用于補(bǔ)償和修正測(cè)溫過(guò)程中的非線性,其輸出用于修正計(jì)數(shù)器1的預(yù)置值。</p><p>  圖3-8 DS18B20測(cè)溫原理</p><p><b>  4 軟件設(shè)計(jì)</b></p><p><b>  4.1軟件開(kāi)發(fā)工

51、具</b></p><p>  我們所使用的軟件開(kāi)發(fā)工具是由凌陽(yáng)公司開(kāi)發(fā)的unSP IDE。IDE即集成開(kāi)發(fā)環(huán)境,具備了,在開(kāi)發(fā)環(huán)境里寫入代碼、編輯程序的代碼編輯器;負(fù)責(zé)把高級(jí)語(yǔ)言翻譯成機(jī)器語(yǔ)言的編譯器;檢測(cè)代碼語(yǔ)法錯(cuò)誤、排除系統(tǒng)故障的調(diào)試器;把機(jī)器碼下載到仿真板或開(kāi)發(fā)系統(tǒng)上的程序下載器。除此之外,unSP還支持工程的開(kāi)發(fā),將多個(gè)程序文件組織成一個(gè)系統(tǒng),有利于大型系統(tǒng)的開(kāi)發(fā),方便一些程序的模塊化,形成

52、系統(tǒng)中的功能模塊。同時(shí)它還結(jié)合16位單片機(jī)的硬件提供各類在線調(diào)試窗口,使調(diào)試程序變得更加直觀和簡(jiǎn)單。unSP IDE集成開(kāi)發(fā)環(huán)境如圖4-1所示:</p><p>  圖4-1 IDE集成開(kāi)發(fā)環(huán)境</p><p>  unSP IDE具有友好的交互界面、下拉菜單、快捷鍵和快速訪問(wèn)命令列表等,使編程、調(diào)試工作方便且高效。它還提供一些軟件模擬16位單片機(jī)仿真的功能,在沒(méi)有硬件的情況下也能完成一

53、些簡(jiǎn)單程序的調(diào)試。我們可以通過(guò)集成開(kāi)發(fā)環(huán)境使用C語(yǔ)言和匯編語(yǔ)言對(duì)16位單片機(jī)進(jìn)行編程。C語(yǔ)言是一種比匯編語(yǔ)言更高級(jí)的語(yǔ)言。其優(yōu)點(diǎn)是可以很好的組織程序,并且容易讀懂,可以在多種單片機(jī)上運(yùn)行,是普遍使用的一種計(jì)算機(jī)語(yǔ)言。缺點(diǎn)是占用硬件資源較多,處理速度和效率較匯編低。</p><p>  4.2軟件主體部分及流程圖</p><p>  系統(tǒng)的核心控制程序都是運(yùn)行在SPCE061A核心控制板上,

54、由溫度采集發(fā)送控制端程序和接收顯示程序兩部分組成,分別運(yùn)行在兩塊SPCE061A核心控制板上。</p><p>  4.2.1溫度采集原理框圖</p><p>  這部分程序是系統(tǒng)最主要的控制程序,本部分程序主要是用DS18B20來(lái)采集溫度并通過(guò)無(wú)線模塊來(lái)發(fā)送所采集的數(shù)據(jù),通過(guò)NRF2401的子程序進(jìn)行調(diào)用來(lái)實(shí)現(xiàn)無(wú)線傳輸系統(tǒng)核心代碼見(jiàn)附錄4。</p><p>  溫

55、度采集的具體流程圖如4-2所示:</p><p>  圖4-2溫度采集原理框圖</p><p>  溫度采集的主函數(shù),主要功能是用DS18B20來(lái)采集溫度并通過(guò)無(wú)線模塊來(lái)發(fā)送所采集的數(shù)據(jù)。</p><p>  #include "spce061a.h" //IOA端口的定義</p><p>  int t

56、able[10]={0x003f, 0x0006, 0x005b, 0x004f, 0x0066, 0x006d, 0x007d, 0x0007, 0x007f, 0x006f};void showtemp(); //全局變量定義</p><p>  void showdelay() //延時(shí)顯示函數(shù){    int i;&#

57、160;   i=35;            //延時(shí)約1s    while(i--)   showtemp();     }void TxReset(void) //產(chǎn)生復(fù)位脈沖 初始化DS18B20{  uns

58、igned int i; </p><p>  *P_IOA_Dir=0xffff;     //置A為輸出端    DQ=0x0000;    delay(8);        //拉低約900微秒    DQ=0x8000;&#

59、160;                                      </p><p>  i=30;           

60、 //延時(shí)30微秒    while (i--);}void RxWait(void) //等待應(yīng)答脈沖{    unsigned int i;</p><p>  *P_IOA_Dir=0x0000;</p><p>  while((DQ&0x8000)==0x8000);  

61、0;                  while((DQ&0x8000)==0x0000);       //等待應(yīng)答脈沖</p><p>  i=4;    while (i--);}unsigned int RbBit(void)

62、 //讀取數(shù)據(jù)的一位,滿足讀時(shí)時(shí)隙要求{    unsigned int i,b;</p><p>  *P_IOA_Dir=0xffff;         //置A口為輸出口    DQ=0x0000;    i++;    i++;    i++

63、;</p><p>  i++;                        //拉低后延時(shí)1us,然后釋放總線    DQ=0x8000;</p><p>  *P_IOA_Dir=0x0000;  //置A口為輸入口,

64、接受數(shù)據(jù)             </p><p>  i=10;                                       

65、  </p><p>  while(i--);</p><p>  b=(DQ&0x8000)>>15;             //15us內(nèi)讀數(shù)據(jù)     i=60;     while (i--);    

66、 //延時(shí)60us</p><p>  return(b);}unsigned int RbByte(void) //讀取數(shù)字的兩個(gè)字節(jié){    unsigned int i,j,b;    b=0;    for (i=1;i<=16;i++)    {  

67、60;     j=RbBit();        b=(j<<15)|(b>>1);        }    return (b);}void WrByte(unsigned int b) //寫數(shù)據(jù)的一個(gè)字節(jié){    unsigned int&

68、#160; i,j,btmp;    for (j=1;j<=8;j++)    {        btmp=b&0x0001;        b=b>>1;       *P_IOA_Dir=0xffff;    

69、0;   //置A口為出入口        if (btmp==0x0001)        { //寫1            DQ=0x0000;          //拉低15us     

70、;       i=13;            </p><p>  DQ=0x8000;        //15us內(nèi)必須將總線了拉高            i=55;      

71、60;     while (i--);            i++;            i++;        }        else        {

72、 //寫0             DQ=0x0000;             i=64;             while (i--);  &#

73、160;          DQ=0x8000;             i++;             i++;        }    }}void convert(voi

74、d) //啟動(dòng)溫度轉(zhuǎn)換{    TxReset();                                                 

75、;        //初始化    RxWait();              //應(yīng)答脈沖    delay(1</p><p>  while(1)    {       

76、delay(10);        convert();             //啟動(dòng)溫度轉(zhuǎn)換        showdelay();            //延時(shí)750ms以上     

77、   RdTemp();              //讀取溫度值        tens=((temp&0xfff0)>>4)/10;  //取十位        sone=((temp&0xfff0)>>4)%10;&#

78、160; //取個(gè)位        i=(temp&0x000f)*0.625;                         point=(int)i;          

79、60; //取小數(shù)點(diǎn)后第一位  if (((int) (i*10))%10>=5 )        //取小數(shù)點(diǎn)后第二位,四舍五入        point++;        showtemp();           //顯示溫度

80、        showtemp();        showtemp();    </p><p><b>  }</b></p><p>  4.2.2數(shù)據(jù)收發(fā)模塊</p><p>  這部分是將接收到的數(shù)據(jù)通過(guò)單片機(jī)處理、分析,然后通過(guò)

81、LCD顯示。通過(guò)NRF2401的子程序進(jìn)行調(diào)用來(lái)實(shí)現(xiàn)無(wú)線傳輸系統(tǒng)核心代碼見(jiàn)附錄4。</p><p>  數(shù)據(jù)收發(fā)的流程如圖4-3所示:</p><p>  圖4-3 數(shù)據(jù)收發(fā)流程說(shuō)明框圖</p><p>  接收部分的主函數(shù),主要功能接收數(shù)據(jù),根據(jù)接收數(shù)據(jù)執(zhí)行顯示動(dòng)作。</p><p>  int main()

82、 //定義全局變量</p><p><b>  {</b></p><p>  for(i=0;i<0x3fff;i++); // 定義變量</p><p>  *P_Watchdog_Clear= 0x0001;</p><p>  LCDINIT ();&l

83、t;/p><p>  Key_InitIO(); // 設(shè)置nRF2401A工作方式:</p><p><b>  //初始化</b></p><p>  __asm("int irq");</p><p>  DIG_Init();</p><

84、p>  nRF2401_Initial(); //NRF2401A初始化</p><p>  nRF2401_Mode(0);</p><p><b>  while (1)</b></p><p><b>  {</b></p><p>  KeyDeal();</p>

85、<p>  if((nRF2401_RxStatus()) == 1) // NRF2401A有數(shù)據(jù)請(qǐng)求</p><p><b>  {</b></p><p>  nRF2401_ReceiveByte(RxBuf);// 接收數(shù)據(jù)</p><p>  uiTemp = RxBuf;</p>

86、<p>  uiXiaoshu = uiTemp/1000;</p><p>  if(uiXiaoshu)</p><p>  LCD501_PutChar(10,10,g_Data[5]);</p><p>  PlaySnd_Auto(g_Data[5],0);</p><p><b>  else</b&

87、gt;</p><p>  LCD501_PutChar(10,10,g_Data[0]);</p><p>  PlaySnd_Auto(g_Data[5] ,0);</p><p>  uiYushu = uiTemp%1000;</p><p>  uiTemp = uiYushu;</p><p>  uiBa

88、iwei = uiTemp/100;</p><p>  if(uiBaiwei)</p><p>  LCD501_PutChar(10,20,g_Data[uiBaiwei]);</p><p>  PlaySnd_Auto(g_Data[5],0);</p><p><b>  else</b></p>

89、<p>  LCD501_PutChar(10,20,g_Data[uiBaiwei]);</p><p>  PlaySnd_Auto(g_Data[5],0);</p><p>  uiYushu = uiTemp%100;</p><p>  uiTemp = uiYushu;</p><p>  uiShiwei = u

90、iTemp/10;</p><p>  if(uiShiwei)</p><p>  LCD501_PutChar(10,30,g_Data[uishiwei]);</p><p>  PlaySnd_Auto(g_Data[5],0);</p><p><b>  else</b></p><p&g

91、t;  LCD501_PutChar(10,30,g_Data[0]);</p><p>  PlaySnd_Auto(g_Data[5],0);</p><p>  uiYushu = uiTemp%10;</p><p>  if(uiYushu)</p><p>  LCD501_PutChar(10,40,g_Data[uiyushu

92、]);</p><p>  PlaySnd_Auto(g_Data[5],0);</p><p><b>  else</b></p><p>  LCD501_PutChar(10,40,g_Data[0]);</p><p>  PlaySnd_Auto(g_Data[5],0);</p><p&

93、gt;  *P_Watchdog_Clear = 0x0001;</p><p><b>  }</b></p><p><b>  }</b></p><p>  *P_IOB_Data&=0x7fff; //紅外接收位清0</p><p>  *P_IOB_Data|=

94、0x4000;</p><p>  *P_Watchdog_Clear = 0x0001; </p><p><b>  }</b></p><p>  *P_Watchdog_Clear = 0x0001; </p><p><b>  }</b></p><p>  4

95、.2.3 DS18B20的工作時(shí)序</p><p>  DS18B20的一線工作協(xié)議流程是:初始化→ROM操作指令→存儲(chǔ)器操作指令→數(shù)據(jù)傳輸。其工作時(shí)序包括初始化時(shí)序、寫時(shí)序和讀時(shí)序。</p><p><b>  圖4-4初始化時(shí)序</b></p><p><b>  圖4-5寫時(shí)序</b></p><

96、p><b>  圖4-6讀時(shí)序</b></p><p><b>  5 制作和調(diào)試</b></p><p>  5.1 硬件制作和調(diào)試</p><p>  PCB在制作的過(guò)程中十分復(fù)雜、布線,焊盤等方面需要注意的事項(xiàng)很多,所以制作起來(lái)難度很大。布線方面,走線拐角盡可能大于90度,杜絕90度以下的拐角,也盡量少用90度

97、拐角,走線盡量走在焊接面,特別是通孔工藝的PCB。同是地址線或者數(shù)據(jù)線,走線長(zhǎng)度差異不要太大,否則短線部分要人為走彎線作補(bǔ)償。</p><p>  完成布線后,要做的就是對(duì)文字、個(gè)別元件、走線做些調(diào)整以及敷銅(這項(xiàng)工作不宜太早,否則影響速度,又會(huì)給布線帶來(lái)麻煩),同樣是為了便于進(jìn)行生產(chǎn)、調(diào)試、維修。</p><p>  在電路板的設(shè)計(jì)過(guò)程中,PCB設(shè)計(jì)的好壞對(duì)電路板抗干擾能力影響很大。為保

98、證其可靠性,在進(jìn)行PCB設(shè)計(jì)時(shí),應(yīng)注意一般原則:應(yīng)盡量加粗電源線寬度,減少環(huán)路電阻;地線應(yīng)盡量加粗,如果很細(xì),接地電位則隨電流的變化而變化,致使電子設(shè)備的定時(shí)信號(hào)電平不穩(wěn),抗噪聲性能就會(huì)變壞。在考慮布線之前,要特別注意封裝與實(shí)際要相符合。</p><p>  圖5-1 發(fā)射模塊和接收模塊PCB圖</p><p>  5.2 軟件制作和調(diào)試</p><p>  軟件

99、開(kāi)發(fā)部分主要是用凌陽(yáng)公司開(kāi)發(fā)的unSPIDE。先連接好硬件,再用串口數(shù)據(jù)線連接電腦與硬件,打開(kāi)unSPIDE軟件。</p><p>  首先,在New中建立一個(gè)新建的文件夾,定義為Demo。</p><p>  圖5-2 新建一個(gè)工程圖</p><p>  創(chuàng)建一個(gè)C文件,在此文件中編寫和調(diào)試程序:</p><p>  圖5-3 編寫程序圖

100、</p><p>  程序編寫完成后,點(diǎn)擊編譯,如果編譯通過(guò)的話就會(huì)出現(xiàn)顯示框如下:</p><p>  圖5-4 編譯成功圖</p><p>  在編譯成功后,選擇Use Simulator,點(diǎn)擊Download,出現(xiàn)下面的框圖:</p><p>  圖5-5 模擬運(yùn)行下載圖</p><p><b> 

101、 6 結(jié)論</b></p><p>  本設(shè)計(jì)方案按照任務(wù)書的要求完成NRF2401無(wú)線模塊設(shè)計(jì)電路、無(wú)線模塊控制電路設(shè)計(jì),完成信號(hào)傳輸與控制通過(guò)溫度傳感器在使用點(diǎn)的溫度信號(hào)采集,經(jīng)過(guò)單片機(jī)的數(shù)據(jù)處理,通過(guò)無(wú)線傳輸模塊完成協(xié)議信號(hào)的傳輸。</p><p>  本文章主要研究的是短距離無(wú)線溫度采集。本系統(tǒng)以凌陽(yáng)SPCE061A單片機(jī)作為主控芯片,采用數(shù)字式溫度傳感器DS18B20

102、,以NRF2401無(wú)線模塊作為收發(fā)芯片,應(yīng)用傳感技術(shù)、無(wú)線收發(fā)技術(shù)和計(jì)算機(jī)技術(shù),實(shí)現(xiàn)溫度數(shù)據(jù)的采集和短距離的無(wú)線傳輸。</p><p>  由于硬件條件等因素,無(wú)線采集距離較短,有待在以后的工作學(xué)習(xí)中不斷進(jìn)步。</p><p><b>  致 謝</b></p><p>  在我的畢業(yè)論文選題以及下作過(guò)程中,宣老師給予我及時(shí)、充分的指導(dǎo),并對(duì)

103、我提出了嚴(yán)格要求,這些都讓我深深感到一位敬業(yè)的教授嚴(yán)謹(jǐn)?shù)膶W(xué)術(shù)作風(fēng)。宣老師每次閱讀我的論文后,都提出詳細(xì)的修改意見(jiàn)并指明論文的寫作方向及技巧,幫助我順利完成畢業(yè)論文寫作。</p><p><b>  參考文獻(xiàn)</b></p><p>  [1] SPLC501液晶顯示模組使用說(shuō)明書v2[EB/OL],[2005-8-13].</p><p>  

104、http://www.epdoc.cn/base/71684.html</p><p>  [2] 陳麗娟,常丹華.基于nRF2401芯片的無(wú)線數(shù)據(jù)通信[J].電子器件,燕山大學(xué)信息與工程學(xué)院,秦皇島,066004,2006,29(1).</p><p>  [3] 數(shù)字溫度傳感器DS18B20資料[EB/OL],[2007-8-6].</p><p>  http

105、://www.51hei.com/mcu/198.html</p><p>  [4] 張寶.基于nRF905和DS18B20的無(wú)線溫度采集系統(tǒng)設(shè)計(jì)[J].中國(guó)新技術(shù)新產(chǎn)品,2010(3). </p><p>  [5] 劉鳴,蔣新穎,姚雪峰.基于DS18B20多點(diǎn)溫度采集和無(wú)線傳輸[J].天津大學(xué)精儀學(xué)院.電子元件與材料,2005,24(2).</p><p> 

106、 [6] 居偉,許亮,刁修睦.基于nRF2401收發(fā)芯片的無(wú)線溫濕度采集系統(tǒng)[J].中國(guó)海洋大學(xué)信息學(xué)院,2007.</p><p>  [7] 王振,胡清,黃杰.基于nRF24L01的無(wú)線溫度采集系統(tǒng)設(shè)計(jì)[J].電子設(shè)計(jì)工程,2009,17(12).</p><p>  [8] 王志民.北方工業(yè)大學(xué)[M]科技信息,2009(3).</p><p>  [9] 孫瑩

107、.單片機(jī)控制溫度采集系統(tǒng)設(shè)計(jì)[J].儀器儀表用戶,2008,15(4).</p><p>  [10] 萬(wàn)志平,楊亦紅.基于PTR8000的無(wú)線多點(diǎn)溫度采集系統(tǒng)設(shè)計(jì)[J].浙江工 業(yè)職業(yè)技術(shù)學(xué)院.商場(chǎng)現(xiàn)代化,2009(5).</p><p>  [11] 王峰,丁金林.短距離無(wú)線溫度采集系統(tǒng)設(shè)計(jì)[J].蘇州市職業(yè)大學(xué)學(xué)報(bào),2008,19(2).</p><p> 

108、 [12] 史軍,趙國(guó)榮.多點(diǎn)溫度傳感無(wú)線采集系統(tǒng)的研究[J].寧夏大學(xué)學(xué)報(bào)(自然科學(xué)版),2008,29(1).</p><p>  [13] Bentley,R.E. Temperature and humidity measurement. In Handbook of temperature measurement[J].Springer,New York, 1998,volume 1.</p>

109、;<p>  [14] Ya Wang,Yi Jia,Qiushui Chen,Yanyun Wang. A Passive Wireless Temperature Sensor for Harsh Environment Applications[J]. Sensors,2008,8,7982-7995.</p><p>  附錄1 系統(tǒng)實(shí)物圖</p><p>  附錄

110、2 實(shí)驗(yàn)原理圖</p><p>  圖1 SPCE061A控制電路圖</p><p>  圖2 無(wú)線收發(fā)電路原理圖</p><p>  圖3 LCD原理圖</p><p><b>  附錄3 源程序</b></p><p>  #include "DS18B20.h"

111、</p><p>  #include "ptr.h"</p><p>  #include "Dig.h"</p><p>  #include<math.h></p><p>  #define C_IRQ4_4KHz0x0040</p><p>  unsi

112、gned int Temp_Data(void);</p><p>  int main(void)</p><p><b>  {</b></p><p>  float abs(flaot number);//求絕對(duì)值函數(shù)聲明</p><p>  int ten,sone,point_0,point_1;</p

113、><p><b>  float m;</b></p><p>  Temp=ReadTemp();//獲取溫度值</p><p><b>  //Temp為0</b></p><p>  if(Temp==0)</p><p><b>  {k=0;}</b&g

114、t;</p><p>  //Temp為正數(shù),做判斷</p><p>  if(Temp>0)</p><p><b>  {</b></p><p>  if(Temp/10==0)//表示要LCD501顯示四位,如8.97,小數(shù)點(diǎn)后精確兩位</p><p><b>  {<

115、;/b></p><p>  sone=Temp*10/10; //取個(gè)位的值</p><p>  point_0=Temp*10%10; //取小數(shù)點(diǎn)后第一位的值</p><p>  point_1=Temp*100%10; //取小數(shù)點(diǎn)后第二位的值</p><p><b>  }</b><

116、/p><p>  else //表示LCD501顯示5位,如18.97,小數(shù)點(diǎn)后精確兩位</p><p><b>  {</b></p><p>  ten=Temp/10; //取十位的值</p><p>  sone=Temp%10; //取個(gè)位的值<

117、/p><p>  point_0=Temp*10%10; //取小數(shù)點(diǎn)后第一位的值</p><p>  point_1=Temp*100%10; //取小數(shù)點(diǎn)后第二位的值</p><p><b>  }</b></p><p><b>  }</b></p><p>  /

118、/Temp為負(fù)數(shù),做判斷</p><p>  if(Temp<0)</p><p><b>  {</b></p><p>  if(abs(Temp)/10==0) //表示要顯示5位,如-8.97,小數(shù)點(diǎn)后精確兩位</p><p><b>  {</b></p><p

119、>  m=abs(Temp); //Temp取絕對(duì)值</p><p>  sone=m*10/10; //取個(gè)位的值</p><p>  point_0=m*10%10; //取小數(shù)點(diǎn)后第一位的值</p><p>  point_1=m*100%10; //取小數(shù)點(diǎn)后第二位的值</p><p&

120、gt;<b>  }</b></p><p>  Else //表示LCD501顯示6位,如-18.97,小數(shù)點(diǎn)后精確兩位</p><p><b>  {</b></p><p>  m=abs(Temp);//Temp取絕對(duì)值</p><p>  ten=m/10

121、;//取十位的值</p><p>  sone=m%10;//取個(gè)位的值</p><p>  point_0=m*10%10;//取小數(shù)點(diǎn)后第一位的值</p><p>  point_1=m*100%10;//取小數(shù)點(diǎn)后第二位的值</p><p><b>  }</b></p><p><b

122、>  //取絕對(duì)值子函數(shù)</b></p><p>  float abs(flaot number)</p><p><b>  {</b></p><p>  number=number*(-1);</p><p>  return unmber;</p><p><b&

123、gt;  }</b></p><p><b>  }</b></p><p>  unsigned int Temp_Data(void)</p><p><b>  {</b></p><p>  unsigned int uiTemp;//臨時(shí)變量</p><

124、;p>  //unsigned int uiSignal;//保存符號(hào)</p><p>  unsigned int uiData;//保存溫度</p><p>  uiTemp = Data[1];</p><p>  uiData = 0;</p><p>  //if(uiTemp & 0x0080)<

125、;/p><p>  //uiSignal = 1;</p><p><b>  //else </b></p><p>  //uiSignal = 0;//為正</p><p>  if(uiTemp & 0x0004)</p><p>  uiData += 64;<

溫馨提示

  • 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(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)論