【正文】
DS18B20 電路設(shè) 計(jì) 圖 DS1820 電路原理圖 本系統(tǒng) DS18B20采用外部電源供電方式單點(diǎn)測(cè)溫結(jié)構(gòu)。本系統(tǒng)設(shè)計(jì)了比較可靠的電源電路。 電源電路供電 DS18B20 溫度數(shù)據(jù)采集 電平復(fù)位 LCD(數(shù)碼管)溫度數(shù)據(jù)顯示 溫度異常報(bào)警 ISP 下載 STC89C52主控機(jī) NRF905 無(wú)線模塊 14 系統(tǒng)各部分電路設(shè) 計(jì) 主控電路設(shè)計(jì) [6] 圖 主控電路原理圖 本系統(tǒng)采用 STC89C52為主控芯片, STC89C52單片機(jī)與 12M晶振及電容構(gòu)成了單片機(jī)最小系統(tǒng)。 操作說(shuō)明 : ( 1) 打開 STCISP, 圖 ,在 MCU Type欄目下選中單片機(jī),如 STC89C52RC: 圖 STCISP 打開界面 ( 2) 根據(jù) 9 針數(shù)據(jù)線連接情況選中 COM 端口 ,波特率一般保持默認(rèn),如果遇到下載問題,可以適當(dāng)下調(diào)一些,按 圖 選中各項(xiàng): 10 圖 STCISP 界面參數(shù)設(shè)置 ( 3) 先確認(rèn)硬件連接正確,按如圖 “打開文件 ”并在對(duì)話框內(nèi)找到您要下載的 HEX文件: 圖 STCISP 打開文件 11 ( 4) 按圖 ,這樣可以使您在每次編譯 KEIL時(shí) HEX代碼能自動(dòng)加載到 STCISP,點(diǎn)擊 “Download/下載 ”: 圖 STCISP 條件項(xiàng)設(shè)置 ( 5) 手動(dòng)按下電源開關(guān)便即可把 可執(zhí)行文件 HEX寫入到單片機(jī)內(nèi),圖 在寫入程序截圖: 圖 STCISP 下 載過程狀態(tài)圖 12 ( 6) 圖示程序?qū)懭胪戤?,目?biāo)板開始運(yùn)行程序結(jié)果 ,如圖 : 圖 STCISP 下載完成狀態(tài)圖 13 第二章 系統(tǒng)硬件設(shè)計(jì) 該設(shè)計(jì)是以 NRF905無(wú)線芯片和 STC89C52單片機(jī)最小系統(tǒng)為核心,能夠?qū)崿F(xiàn)對(duì)兩路溫度進(jìn)行實(shí)時(shí)檢測(cè)。開發(fā)人員可用 IDE 本身或其它編輯器編輯 C 或匯編源文件。光標(biāo)加 1), N=0(讀或?qū)懸粋€(gè)字符后地址指針減 1 amp。 LCD1602 液晶顯示器 [4] 1602液晶也叫 1602字符型液晶它是一種專門用來(lái)顯示字母、數(shù)字、符號(hào)等的 點(diǎn)陣 型液晶模塊它有若干個(gè) 5X7或者 5X11等點(diǎn)陣字符位組成,每個(gè)點(diǎn)陣字符位都可以顯示一個(gè)字符。 NRF905 通過 ShockBurst 工作模式在 RF 以最大速率進(jìn)行連接時(shí)降低數(shù)字應(yīng)用部分的速度來(lái)降低在應(yīng)用中的平均電流消耗。若要讀出當(dāng)前的溫度數(shù)據(jù)我們需要執(zhí)行兩次工作周期,第一個(gè)周期為復(fù)位、跳過 ROM指令、執(zhí)行溫度轉(zhuǎn)換存儲(chǔ)器操作指令、等待 500uS溫度轉(zhuǎn)換時(shí)間。誠(chéng)然,單總線上可以同時(shí)掛接多個(gè)器件,并通過每個(gè)器件上所獨(dú)有的 ID號(hào)來(lái)區(qū)別,一般只掛接單個(gè) 18B20芯片時(shí)可以跳過 ROM指令(注意:此處指的跳過 ROM指令并 6 非不發(fā)送 ROM指令,而是用特有的一條“跳過指令”)。 控制器對(duì) 18B20操作流程: :首先我們必須對(duì) DS18B20芯片進(jìn)行復(fù)位,復(fù)位就是由控制器(單片機(jī))給 DS18B20單總線至少 480uS的低電平信號(hào)。(2)RAM數(shù)據(jù)暫存器,用于內(nèi)部計(jì)算和數(shù)據(jù)存取,數(shù)據(jù)在掉電后丟失, DS18B20共 9個(gè)字節(jié) RAM,每個(gè)字節(jié)為 8位。 單 片機(jī)在醫(yī)用設(shè)備中的用途亦相當(dāng)廣泛,例如醫(yī)用呼吸機(jī),各種分析儀,監(jiān)護(hù)儀,超聲診斷設(shè)備及病床呼叫系統(tǒng)等等。低電壓,低功耗,便于生產(chǎn)便攜式產(chǎn)品控制功能強(qiáng) 。在單芯片上,擁有靈巧的 8位 CPU和在系統(tǒng)可編程 Flash, 使得 STC89C52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。 單片機(jī)主要用于控制,它的應(yīng)用領(lǐng)域遍及各個(gè)行業(yè),在溫度采 集與顯示系統(tǒng)中用到了自動(dòng)檢測(cè)與傳感 2 技術(shù)、單片機(jī)原理及應(yīng)用、單片機(jī)接口技術(shù)、模電技術(shù)、數(shù)電技術(shù)等方面大量知識(shí)。無(wú)線數(shù)據(jù)傳輸與有線數(shù)據(jù)傳輸相比,有諸多優(yōu)點(diǎn) :一是成本低,省去大量布線;二是建網(wǎng)快捷,只需在每個(gè)終端連接無(wú)線數(shù)據(jù)傳輸模塊和架設(shè)適當(dāng)高度天線;三是適應(yīng)性好,可應(yīng)用于某些特殊環(huán)境;四是擴(kuò)展性好,只需將設(shè)備與無(wú)線數(shù)據(jù)傳輸模塊相連接。 關(guān)鍵詞 : DS18B20 溫度傳感器; NRF905 無(wú)線芯片 Ⅱ The Design of Two Temperature Detection and Wireless Transmission System Based on NRF905 Abstract:Temperature as industry, agriculture, national defense and scientific research departments such as the most mon measuring project. In modern industrial and agricultural production, scientific research in the process of the high and new technology development , it is also a very mon and very important design starting from the practical application of NRF905 wireless transmission module, the ambient temperature data collection, transmission and processing are studied, this paper proposes a temperature detection based on STC89C52 and the overall design scheme of wireless transmission system. This paper introduces the features and working principle of each module, and gives the principle diagram of the hardware and software design scheme of system. System uses the STC89C52 singlechip microputer as the main chip to NRF905 as wireless data transceiver module, using the SPI mouth realize twoway munication, SPI support highspeed data transmission, so as to satisfy the requirement of the radio frequency bandwidth. Through two DS18B20 temperature acquisition of onsite, and their respective data processing temperature data into the single chip microputer from machine, by the NRF905 wireless transmission module is sent to the host, the host end use as a monitor, LCD display LCD1602 for display. When the temperature more than set time limit, to plete the alarm buzzer and dc motor and the simulation of the cooling process. Key words: DS18B20 Temperature Sensor。 本設(shè)計(jì)從 NRF905 無(wú)線傳輸模塊的實(shí) 際應(yīng)用出發(fā),對(duì)環(huán)境溫度數(shù)據(jù)的采集、傳輸以及處理過程進(jìn)行了研究,提出了一種基于 STC89C52 的溫度檢測(cè)與無(wú)線傳輸系統(tǒng)的總體設(shè)計(jì)方案。溫度采集控制系統(tǒng)在工業(yè)生產(chǎn)、科學(xué)研究和人們的生活領(lǐng)域中,得到了廣泛應(yīng)用,在工業(yè)生產(chǎn)過程中,很多 時(shí)候都需要對(duì)溫度進(jìn)行嚴(yán)格的監(jiān)控,以使得生產(chǎn)能夠順利的進(jìn)行,產(chǎn)品的質(zhì)量才能夠得到充分的保證。 溫度的測(cè)量與分析在工業(yè)上的應(yīng)用相當(dāng)廣泛,能做出準(zhǔn)確、穩(wěn)定、快速的溫度測(cè)量裝置是很有難度的?;趩纹瑱C(jī)的溫度采集系統(tǒng)廣泛應(yīng)用于采用計(jì)算機(jī)、自動(dòng)檢測(cè)、微電子和自動(dòng)控制等多項(xiàng)技術(shù),不僅具有信號(hào)采集方便、簡(jiǎn)單、靈活性大的優(yōu)點(diǎn),而且可以大幅度提高被測(cè)溫度的技術(shù)指標(biāo)??臻e模式下, CPU 停止工作,允許 RAM、定時(shí)器 /計(jì)數(shù)器、串口、中斷繼續(xù)工作。采用單片機(jī)控制使得儀器儀表數(shù)字化、智能化、微型化,且功能比起采用電子或 數(shù)字電路 更加強(qiáng)大 。其一個(gè)工作周期可分為兩個(gè)部分,即溫度檢測(cè)和數(shù)據(jù)處理。第 5個(gè)字節(jié)則是用戶第 3個(gè) EEPROM的鏡像。至此,通信雙方已經(jīng)達(dá)成了基本的協(xié)議,接下來(lái)將會(huì)是控制器與 18B20間的數(shù)據(jù)通信。存儲(chǔ)器操作指令的功能是命令 18B20作什么樣的工作,是芯片控制的關(guān)鍵。芯片內(nèi)置頻率合成器、功率放大器、晶體振蕩器和調(diào)制器等功能模塊,輸出功率和通信頻道可通過程序進(jìn)行配置??傊?,這意味著降低 MCU 的存儲(chǔ)器需求也就是說(shuō)降低 MCU 成本,又同時(shí)縮短軟件開發(fā)時(shí)間。 1602液晶模塊內(nèi)部的字符發(fā)生存儲(chǔ)器( CGROM)已經(jīng)存儲(chǔ)了 160個(gè)不同的點(diǎn)陣字符圖形 , 這些字符有:阿拉伯?dāng)?shù)字、英文字母的大小寫、常用的符號(hào)、和日文假名等,每一個(gè)字符都有一個(gè)固定的代碼 。( 5) 其他設(shè)置: 01H(顯示清屏,數(shù)據(jù)指針 =0,所有顯示 =0); 02H(顯示回車,數(shù)據(jù)指針 =0)。 ABS 文件由 OH51 轉(zhuǎn)換成標(biāo)準(zhǔn)的 HEX 文件 ,以供調(diào)試器 dScope51 或 tScope51 使用進(jìn)行源代碼級(jí)調(diào)試,也可由仿 真器使用直接對(duì)目標(biāo)板進(jìn)行調(diào)試,也可以直接寫入程序存貯器如 EPROM 中。 系統(tǒng)總體設(shè) 計(jì) 圖 系統(tǒng)總體設(shè)計(jì)框圖 本系統(tǒng)大致由七個(gè)功能模塊構(gòu)成: ISP下載模塊、電源模塊、 LCD(數(shù)碼管)數(shù)據(jù)顯示模塊、 DS18B20溫度采集模塊、 NRF905無(wú)線傳輸模塊、異常報(bào)警模塊和電平復(fù)位模塊。 、 LCD的控制接口。用 LED燈以驗(yàn)證是否插好。 2, 3 腳為 工作模式選擇 和 使能芯片發(fā)射或接收 。通過調(diào)用溫度轉(zhuǎn)換和獲得溫度子函數(shù)完成數(shù)據(jù)采集。 while(i0)i。 開始 18B20 初始化 DS18B20 采樣 STC89C52 進(jìn)行數(shù)據(jù)分析 返回 19 dat=DQ。i++) { j=ReadBit_Temp()。j++) { testb=datamp。while(i0)i。 DS18B20_Delay(1)。 WriteByte_Temp(0xcc)。} tt=temp*。i++) { if (DATA7) MOSI=1。j++) { DATA_BUF=DATA_BUF1。 TXEN=1。 if (DR==1) {DR=0。i++) SpiWrite(nRF905_TxRxBuf[i])。 CSN=1。TRX_CE=0。 TRX_CE=1。 LCD1602_delay_ms(1)。 LCD1602_EN = 1。 LCD1602_write_(0x0c)。 圖 從機(jī)二溫度數(shù)據(jù)顯示 給主機(jī)上電,接收溫度數(shù)據(jù)并在液晶屏顯示,見圖 。 該設(shè)計(jì)充分體現(xiàn)了 STC89C52單片機(jī)的特點(diǎn) [13],結(jié)合現(xiàn)有技術(shù),大大降低了電路的設(shè)計(jì)復(fù)雜度 ,該系統(tǒng)具有溫控準(zhǔn)確、操作界面良好、穩(wěn)定性高、抗干擾能力強(qiáng)等優(yōu)點(diǎn)。正是郭老師的無(wú)私幫助與熱忱鼓勵(lì),我的畢業(yè)論文才能夠得以順利完成,謝謝郭老師!同時(shí)郭 老師高尚的品德、嚴(yán)謹(jǐn)?shù)闹螌W(xué)作風(fēng)、淵博的知識(shí)和平易近人的待人態(tài)度對(duì)我的學(xué)習(xí)、做人都有很大的啟示和幫助, 她 的教誨將使我終身受益。 //定義 16 位無(wú)符號(hào)變量 sbit BCD4 = P1^0。 sbit CD=P2^2。 //NRF905的 SPI控制指令 define WC 0x00 define RC 0x10 define WTP 0x20 define RTP 0x21 define WTA 0x22 define RTA 0x23 define RRP 0x24 //延時(shí)