單片機(jī)課程考核報(bào)告_第1頁
單片機(jī)課程考核報(bào)告_第2頁
單片機(jī)課程考核報(bào)告_第3頁
單片機(jī)課程考核報(bào)告_第4頁
單片機(jī)課程考核報(bào)告_第5頁
已閱讀5頁,還剩31頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、成績(jī)課程實(shí)踐考核報(bào)告題 目 基于單片機(jī)和DS18B20多點(diǎn)溫度檢測(cè)控制裝置課 程 名 稱 單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì) 院 部 名 稱 機(jī)電學(xué)院 專 業(yè) 電氣工程及其自動(dòng)化 班 級(jí) 電氣工程及其自動(dòng)化(1)學(xué) 生 姓 名 顧奇 學(xué) 號(hào) 1304102004 課程考核地點(diǎn) 工科樓 C304 任 課 教 師 李國利 金陵科技學(xué)院教務(wù)處制目錄緒論3一、設(shè)計(jì)任務(wù)及要求41.1設(shè)計(jì)任務(wù)41.2 考察內(nèi)容4二、設(shè)計(jì)思路42.1設(shè)計(jì)思路圖42.2設(shè)計(jì)框圖5多點(diǎn)測(cè)溫控制裝置52.3設(shè)計(jì)思路5三、系統(tǒng)硬件部分設(shè)計(jì)63.1硬件介紹6AT89C516DS18B208LCD1602133.2、系統(tǒng)電路設(shè)計(jì)15AT89C51單片

2、機(jī)15DS18B20 LCD1602顯示電路16獨(dú)立鍵盤設(shè)計(jì) 小燈和直流電機(jī)控制模塊163.3總電路圖17四、系統(tǒng)軟件設(shè)計(jì)部分184.1程序流程圖184.2程序開發(fā)過程19頭文件部分內(nèi)容(詳見附錄)19主函數(shù)主要內(nèi)容(詳見附錄)20五、系統(tǒng)仿真過程及結(jié)果22六、系統(tǒng)實(shí)物制作與調(diào)試256.1系統(tǒng)實(shí)物器件清單256.2 實(shí)物制作過程256.3實(shí)物調(diào)試圖片26七、心得體會(huì)27八、參考文獻(xiàn)28九、附錄文件28緒論在人類的生活環(huán)境中,溫度扮演著極其重要的角色。無論你生活在哪里,從事什么工作,無時(shí)無刻不在與溫度打著交道。自18世紀(jì)工業(yè)革命以來,工業(yè)發(fā)展對(duì)是否能掌握溫度有著絕對(duì)的聯(lián)系。在冶金、鋼鐵、石化、水

3、泥、玻璃、醫(yī)藥等等行業(yè),可以說幾乎80%的工業(yè)部門都不得不考慮著溫度的因素。 溫度對(duì)于工業(yè)如此重要,由此推進(jìn)了溫度傳感器的發(fā)展。傳感器主要大體經(jīng)過了三個(gè)發(fā)展階段:模擬集成溫度傳感器。該傳感器是采用硅半導(dǎo)體集成工藝制成,因此亦稱硅傳感器或單片集成溫度傳感器。此種傳感器具有功能單一(僅測(cè)量溫度)、測(cè)溫誤差小、價(jià)格低、響應(yīng)速度快、傳輸距離遠(yuǎn)、體積小、微功耗等,適合遠(yuǎn)距離測(cè)溫、控溫,不需要進(jìn)行非線性校準(zhǔn),外圍電路簡(jiǎn)單。它是目前在國內(nèi)外應(yīng)用最為普遍的一種集成傳感器,典型產(chǎn)品有AD590、AD592、TMP17、LM135等;模擬集成溫度控制器。模擬集成溫度控制器主要包括溫控開關(guān)、可編程溫度控制器,典型產(chǎn)

4、品有LM56、AD22105和MAX6509。某些增強(qiáng)型集成溫度控制器(例如TC652/653)中還包含了A/D轉(zhuǎn)換器以及固化好的程序,這與智能溫度傳感器有某些相似之處。但它自成系統(tǒng),工作時(shí)并不受微處理器的控制,這是二者的主要區(qū)別;智能溫度傳感器。能溫度傳感器(亦稱數(shù)字溫度傳感器)是在20世紀(jì)90年代中期問世的。它是微電子技術(shù)、計(jì)算機(jī)技術(shù)和自動(dòng)測(cè)試技術(shù)(ATE)的結(jié)晶。智能溫度傳感器內(nèi)部都包含溫度傳感器、A/D轉(zhuǎn)換器、信號(hào)處理器、存儲(chǔ)器(或寄存器)和接口電路。有的產(chǎn)品還帶多路選擇器、中央控制器(CPU)、隨機(jī)存取存儲(chǔ)器(RAM)和只讀存儲(chǔ)器(ROM)。智能溫度傳感器的特點(diǎn)是能輸出溫度數(shù)據(jù)及相關(guān)

5、的溫度控制量,適配各種微控制器(MCU);并且它是在硬件的基礎(chǔ)上通過軟件來實(shí)現(xiàn)測(cè)試功能的,其智能化程度也取決于軟件的開發(fā)水平。 溫度傳感器的發(fā)展趨勢(shì)。 進(jìn)入21世紀(jì)后,溫度傳感器正朝著高精度、多功能、總線標(biāo)準(zhǔn)化、高可靠性及安全性、開發(fā)虛擬傳感器和網(wǎng)絡(luò)傳感器、研制單片測(cè)溫系統(tǒng)等高科技的方向迅速發(fā)展。 在傳統(tǒng)的溫度測(cè)量系統(tǒng)設(shè)計(jì)中,往往采用模擬技術(shù)進(jìn)行設(shè)計(jì),這樣就不可避免地遇到諸如引線誤差補(bǔ)償、多點(diǎn)測(cè)量中的切換誤差和信號(hào)調(diào)理電路的誤差等問題;而其中某一環(huán)節(jié)處理不當(dāng),就可能造成整個(gè)系統(tǒng)性能的下降。隨著現(xiàn)代科學(xué)技術(shù)的飛速發(fā)展,特別是大規(guī)模集成電路設(shè)計(jì)技術(shù)的發(fā)展,微型化、集成化、數(shù)字化正成為傳感器發(fā)展的一

6、個(gè)重要方向。美國Dallas半導(dǎo)體公司推出的數(shù)字溫度傳感器DS18B20,具有獨(dú)特的單總線接口,僅需要占用一個(gè)通用I/0端口即可完成與微處理器的通信;在-10+85 溫度范圍內(nèi)具有05 精度;用戶可編程設(shè)定912位的分辨率。以上特性使得DS18B20非常適用于構(gòu)建高精度、多點(diǎn)溫度測(cè)量系統(tǒng)。 本次設(shè)計(jì)就是基于單片機(jī)和DS18B20的多點(diǎn)溫度檢測(cè)報(bào)警裝置。一、設(shè)計(jì)任務(wù)及要求1.1設(shè)計(jì)任務(wù)利用DS18B20和AT89C51設(shè)計(jì)一個(gè)溫度測(cè)量系統(tǒng),系統(tǒng)功能:實(shí)現(xiàn)三點(diǎn)溫度檢測(cè),用LCD顯示溫度;溫度測(cè)量范圍:-55125,精度0.1。設(shè)定溫度上下限,當(dāng)溫度高于上限值或低于下限值時(shí),系統(tǒng)能自動(dòng)驅(qū)動(dòng)降溫與升溫

7、設(shè)備工作。要求一種合理、可行的溫度檢測(cè)報(bào)警系統(tǒng)。1.2 考察內(nèi)容專業(yè)知識(shí)應(yīng)用能力:包括電路分析、電子技術(shù)、單片機(jī)、檢測(cè)技術(shù)、電氣控制等課程。運(yùn)用知識(shí)的能力:包括對(duì)DS18B20芯片、液晶LCD1602、按鍵,以及對(duì)Keil4軟件、PROTEUS軟件的學(xué)習(xí),流程圖繪制。要求完成的工作量包括:1)現(xiàn)場(chǎng)仿真演示效果;2)結(jié)合課題進(jìn)行答辯;3)上交課題要求的各類設(shè)計(jì)技術(shù)文檔。二、設(shè)計(jì)思路2.1設(shè)計(jì)思路圖2.2設(shè)計(jì)框圖多點(diǎn)測(cè)溫控制裝置2.3設(shè)計(jì)思路通過多個(gè)DS18B20進(jìn)行溫度采集,采集信號(hào)傳給單片機(jī),單片機(jī)區(qū)分信號(hào),將各個(gè)傳感器的溫度在LCD1602上顯示。由獨(dú)立鍵盤設(shè)置溫度高溫、低溫的數(shù)值,當(dāng)溫度低

8、于設(shè)置的低溫?cái)?shù)值,單片機(jī)驅(qū)動(dòng)發(fā)光二極管,代替電阻絲加熱的過程;當(dāng)溫度高于設(shè)置的高溫?cái)?shù)值,單片機(jī)驅(qū)動(dòng)直流電機(jī)轉(zhuǎn)動(dòng),代表電風(fēng)扇工作降溫的過程。三、系統(tǒng)硬件部分設(shè)計(jì)3.1硬件介紹AT89C51AT89C51是一種帶4K字節(jié)FLASH存儲(chǔ)器(FPEROMFlash Programmable and Erasable Read Only Memory)的低電壓、高性能CMOS 8位微處理器,俗稱單片機(jī)。AT89C2051是一種帶2K字節(jié)閃存可編程可擦除只讀存儲(chǔ)器的單片機(jī)。單片機(jī)的可擦除只讀存儲(chǔ)器可以反復(fù)擦除1000次。該器件采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸

9、出管腳相兼容。由于將多功能8位CPU和閃速存儲(chǔ)器組合在單個(gè)芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C2051是它的一種精簡(jiǎn)版本。AT89C51單片機(jī)為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。外形及引腳排列如圖所示。VCC:供電電壓。GND:接地。P0口:P0口為一個(gè)8位漏級(jí)開路雙向I/O口,每腳可吸收8TTL門電流。當(dāng)P0口的管腳第一次寫1時(shí),被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù)/地址的低八位。在FIASH編程時(shí),P0 口作為原碼輸入口,當(dāng)FIASH進(jìn)行校驗(yàn)時(shí),P0輸出原碼,此時(shí)P0外部必須接上拉電阻。P1口:P1口是一個(gè)內(nèi)部提供

10、上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時(shí),P1口作為低八位地址接收。P2口:P2口為一個(gè)內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個(gè)TTL門電流,當(dāng)P2口被寫“1”時(shí),其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時(shí),P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),P2口輸出地址的高八位。在給出地址“1”時(shí),它利用內(nèi)部上拉優(yōu)勢(shì),當(dāng)對(duì)外部八

11、位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫時(shí),P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗(yàn)時(shí)接收高八位地址信號(hào)和控制信號(hào)。P3口:P3口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個(gè)TTL門電流。當(dāng)P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。P3口也可作為AT89C51的一些特殊功能口,如下表所示:口管腳 備選功能P3.0 RXD(串行輸入口)P3.1 TXD(串行輸出口)P3.2 /INT0(外部中斷0)P3.3 /INT1(外部中斷1)P3.4 T0(計(jì)時(shí)器0外部輸入)P3.5 T1(計(jì)時(shí)器1

12、外部輸入)P3.6 /WR(外部數(shù)據(jù)存儲(chǔ)器寫選通)P3.7 /RD(外部數(shù)據(jù)存儲(chǔ)器讀選通)P3口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號(hào)。RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。ALE/PROG:當(dāng)訪問外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的低位字節(jié)。/PSEN:外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的/PSEN信號(hào)將不出現(xiàn)。/EA/VPP:當(dāng)/EA保持低電平時(shí),則在此期間外部程序存儲(chǔ)器(0000H-FFFFH),不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式1時(shí),/EA

13、將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。XTAL2:來自反向振蕩器的輸出。DS18B20DS18B20是美國DSLLAS半導(dǎo)體公司推出的第一篇支持“一線總線”接口的溫度傳感器,它具有微型化、低功耗、高性能、抗干擾能力強(qiáng)、易配微處理器等優(yōu)點(diǎn),可直接將溫度轉(zhuǎn)化成串型數(shù)字信號(hào)供處理器處理。 1.DS18B20溫度傳感器特性 1) 適應(yīng)電壓范圍寬,電壓范圍在3.05.5V,在寄生電源方式下可有數(shù)據(jù)線供電。 2) 獨(dú)特的單線接口方式,它與微處理器連接時(shí)僅需

14、要一條口線即可實(shí)現(xiàn)微處理器與 DS18B20的雙向通信。 3) 支持多點(diǎn)組網(wǎng)功能,多個(gè)DS18B20可以并聯(lián)在唯一的三線上,實(shí)現(xiàn)組網(wǎng)多點(diǎn)測(cè)溫。 4) 在使用中不需要任何外圍元件,全部傳感器元件及轉(zhuǎn)換電路集成在形如一只三極管 的集成電路內(nèi)。 5) 測(cè)溫范圍-55+125,在-10+85時(shí)精度為0.5。 6) 可編程分辨率為912位,對(duì)應(yīng)的可分辨率溫度分別為0.5,0.25,0.125和 0.0625,可實(shí)現(xiàn)高精度測(cè)溫。 7) 在9位分辨率時(shí),最多在93.78ms內(nèi)把溫度轉(zhuǎn)換為數(shù)字;12位分辨率時(shí),最多在750ms 內(nèi)把溫度轉(zhuǎn)換為數(shù)字,顯示速度快。 8) 測(cè)量結(jié)果直接輸出數(shù)字溫度信號(hào),以“一線總線

15、”串行送給CPU,同時(shí)可傳送CRC 校驗(yàn)碼,具有極強(qiáng)的抗干擾糾錯(cuò)能力。 9) 負(fù)壓特性。電源極性接反時(shí),芯片不會(huì)因發(fā)熱而燒毀,但不能正常工作。2.應(yīng)用范圍1) 冷凍庫、糧倉、儲(chǔ)罐、電信機(jī)房、電力機(jī)房、電纜線槽等測(cè)溫和控制領(lǐng)域。 2) 軸瓦、缸體、紡織、空調(diào)等狹小空間工業(yè)設(shè)備測(cè)溫和控制。 3) 汽車空調(diào)、冰箱、冷柜以及中低緯度干燥箱等。 4) 供熱、制冷管道熱量計(jì)量、中央空調(diào)分戶熱能計(jì)量等。DS18B20實(shí)物圖接線方法面對(duì)著扁平的那一面,左負(fù)右正,一旦接反就會(huì)立刻發(fā)熱,有可能燒毀!同時(shí),接反也是導(dǎo)致該傳感器總是顯示85的原因。特點(diǎn)獨(dú)特的一線接口,只需要一條口線通信 多點(diǎn)能力,簡(jiǎn)化了分布式溫度傳感

16、應(yīng)用 無需外部元件 可用數(shù)據(jù)總線供電,電壓范圍為3.0 V至5.5 V 無需備用電源 測(cè)量溫度范圍為-55 C至+125 。華氏相當(dāng)于是-67 F到257華氏度 -10 C至+85 C范圍內(nèi)精度為0.5 C溫度傳感器可編程的分辨率為912位,溫度轉(zhuǎn)換為12位數(shù)字格式最大值為750毫秒,用戶可定義的非易失性溫度報(bào)警設(shè)置,應(yīng)用范圍包括恒溫控制、工業(yè)系統(tǒng)、電子產(chǎn)品溫度計(jì)、或任何熱敏感系統(tǒng)描述該DS18B20的數(shù)字溫度計(jì)提供9至12位(可編程設(shè)備溫度讀數(shù))。由于DS18B20是一條口線通信,所以中央微處理器與DS18B20只有一個(gè)一條口線連接。為讀寫以及溫度轉(zhuǎn)換可以從數(shù)據(jù)線本身獲得能量,不需要外接電源

17、。 因?yàn)槊恳粋€(gè)DS18B20的包含一個(gè)獨(dú)特的序號(hào),多個(gè)ds18b20s可以同時(shí)存在于一條總線。這使得溫度傳感器放置在許多不同的地方。它的用途很多,包括空調(diào)環(huán)境控制,感測(cè)建筑物內(nèi)溫設(shè)備或機(jī)器,并進(jìn)行過程監(jiān)測(cè)和控制。DS18B20采用一線通信接口。因?yàn)橐痪€通信接口,必須在先完成ROM設(shè)定,否則記憶和控制功能將無法使用。主要首先提供以下功能命令之一: 1 )讀ROM, 2 )ROM匹配, 3 )搜索ROM, 4 )跳過ROM, 5 )報(bào)警檢查。這些指令操作作用在沒有一個(gè)器件的64位光刻ROM序列號(hào),可以在掛在一線上多個(gè)器件選定某一個(gè)器件,同時(shí),總線也可以知道總線上掛有有多少,什么樣的設(shè)備。若指令成功

18、地使DS18B20完成溫度測(cè)量,數(shù)據(jù)存儲(chǔ)在DS18B20的存儲(chǔ)器。一個(gè)控制功能指揮指示DS18B20的演出測(cè)溫。測(cè)量結(jié)果將被放置在DS18B20內(nèi)存中,并可以讓閱讀發(fā)出記憶功能的指揮,閱讀內(nèi)容的片上存儲(chǔ)器。溫度報(bào)警觸發(fā)器TH和TL都有一字節(jié)EEPROM 的數(shù)據(jù)。如果DS18B20不使用報(bào)警檢查指令,這些寄存器可作為一般的用戶記憶用途。在片上還載有配置字節(jié)以理想的解決溫度數(shù)字轉(zhuǎn)換。寫TH,TL指令以及配置字節(jié)利用一個(gè)記憶功能的指令完成。通過緩存器讀寄存器。所有數(shù)據(jù)的讀,寫都是從最低位開始。DS18B20有六條控制命令溫度轉(zhuǎn)換 44H 啟動(dòng)DS18B20進(jìn)行溫度轉(zhuǎn)換讀暫存器 BEH 讀暫存器9字節(jié)

19、二進(jìn)制數(shù)字寫暫存器 4EH 將數(shù)據(jù)寫入暫存器的TH、TL字節(jié)復(fù)制暫存器 48H 把暫存器的TH、TL字節(jié)寫到E2PROM中重新調(diào)E2PROM B8H 把E2PROM中的TH、TL字節(jié)寫到暫存器TH、TL字節(jié)讀電源供電方式 B4H 啟動(dòng)DS18B20發(fā)送電源供電方式的信號(hào)給主CPU初始化(1) 先將數(shù)據(jù)線置高電平“1”。(2) 延時(shí)(該時(shí)間要求的不是很嚴(yán)格,但是盡可能的短一點(diǎn))(3) 數(shù)據(jù)線拉到低電平“0”。(4) 延時(shí)750微秒(該時(shí)間的時(shí)間范圍可以從480到960微秒)。(5) 數(shù)據(jù)線拉到高電平“1”。(6) 延時(shí)等待(如果初始化成功則在15到60微秒時(shí)間之內(nèi)產(chǎn)生一個(gè)由DS18B20所返回的

20、低電平“0”。據(jù)該狀態(tài)可以來確定它的存在,但是應(yīng)注意不能無限的進(jìn)行等待,不然會(huì)使程序進(jìn)入死循環(huán),所以要進(jìn)行超時(shí)控制)。(7) 若CPU讀到了數(shù)據(jù)線上的低電平“0”后,還要做延時(shí),其延時(shí)的時(shí)間從發(fā)出的高電平算起(第(5)步的時(shí)間算起)最少要480微秒。(8) 將數(shù)據(jù)線再次拉高到高電平“1”后結(jié)束。寫操作(1) 數(shù)據(jù)線先置低電平“0”。(2) 延時(shí)確定的時(shí)間為15微秒。(3) 按從低位到高位的順序發(fā)送字節(jié)(一次只發(fā)送一位)。(4) 延時(shí)時(shí)間為45微秒。(5) 將數(shù)據(jù)線拉到高電平。(6) 重復(fù)上(1)到(6)的操作直到所有的字節(jié)全部發(fā)送完為止。(7) 最后將數(shù)據(jù)線拉高。讀操作(1)將數(shù)據(jù)線拉高“1”

21、。(2)延時(shí)2微秒。(3)將數(shù)據(jù)線拉低“0”。(4)延時(shí)3微秒。(5)將數(shù)據(jù)線拉高“1”。(6)延時(shí)5微秒。(7)讀數(shù)據(jù)線的狀態(tài)得到1個(gè)狀態(tài)位,并進(jìn)行數(shù)據(jù)處理。(8)延時(shí)60微秒。 DS18B20寄生電源供電方式 如下面圖3.7(a)所示,在寄生電源供電方式下,DS18B20從單線信號(hào)線上汲取能量:在信號(hào)線DQ處于高電平期間把能量?jī)?chǔ)存在內(nèi)部電容里,在信號(hào)線處于低電平期間消耗電容上的電能工作,直到高電平到來再給寄生電源(電容)充電。 獨(dú)特的寄生電源方式有三個(gè)好處: 1) 進(jìn)行遠(yuǎn)距離測(cè)溫時(shí),無需本地電源 2) 可以在沒有常規(guī)電源的條件下讀取ROM 3) 電路更加簡(jiǎn)潔,僅用一根I/O口實(shí)現(xiàn)測(cè)溫 要想

22、使DS18B20進(jìn)行精確的溫度轉(zhuǎn)換,I/O線必須保證在溫度轉(zhuǎn)換期間提供足夠的能量,由于每個(gè)DS18B20在溫度轉(zhuǎn)換期間工作電流達(dá)到1mA,當(dāng)幾個(gè)溫度傳感器掛在同一根I/O線上進(jìn)行多點(diǎn)測(cè)溫時(shí),只靠4.7K上拉電阻就無法提供足夠的能量,會(huì)造成無法轉(zhuǎn)換溫度或溫度誤差極大。 因此,該電路只適應(yīng)于單一溫度傳感器測(cè)溫情況下使用,不適宜采用電池供電系統(tǒng)中。并且工作電源VCC必須保證在5V,當(dāng)電源電壓下降時(shí),寄生電源能夠汲取的能量也降低,會(huì)使溫度誤差變大。 DS18B20寄生電源強(qiáng)上拉供電方式改進(jìn)的寄生電源供電方式如下面圖3.7(b)所示,為了使DS18B20在動(dòng)態(tài)轉(zhuǎn)換周期中獲得足夠的電流供應(yīng),當(dāng)進(jìn)行溫度轉(zhuǎn)換

23、或拷貝到E2存儲(chǔ)器操作時(shí),用MOSFET把I/O線直接拉到VCC就可提供足夠的電流,在發(fā)出任何涉及到拷貝到E2存儲(chǔ)器或啟動(dòng)溫度轉(zhuǎn)換的指令后,必須在最多10S內(nèi)把I/O線轉(zhuǎn)換到強(qiáng)上拉狀態(tài)。在強(qiáng)上拉方式下可以解決電流供應(yīng)不足的問題,因此也適合于多點(diǎn)測(cè)溫應(yīng)用,缺點(diǎn)就是要多占用一根I/O口線進(jìn)行強(qiáng)上拉切換。 DS18B20的外部電源供電方式如下面圖3.7(c)所示,在外部電源供電方式下,DS18B20工作電源由VDD引腳接入,其VDD端用35.5V電源供電,此時(shí)I/O線不需要強(qiáng)上拉,不存在電源電流不足的問題,可以保證轉(zhuǎn)換精度,同時(shí)在總線上理論可以掛接任意多個(gè)DS18B20傳感器,組成多點(diǎn)測(cè)溫系統(tǒng)。注意

24、:在外部供電的方式下,DS18B20的GND引腳不能懸空,否則不能轉(zhuǎn)換溫度,讀取的溫度總是85。DS18B20工作原理DS18B20的讀寫時(shí)序和測(cè)溫原理與DS1820相同,只是得到的溫度值的位數(shù)因分辨率不同而不同,且溫度轉(zhuǎn)換時(shí)的延時(shí)時(shí)間由2s 減為750ms。高溫度系數(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重 新開始對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行計(jì)數(shù),如此循環(huán)直到計(jì)數(shù)器

25、2計(jì)數(shù)到0時(shí),停止溫度寄存器值的累加,此時(shí)溫度寄存器中的數(shù)值即 為所測(cè)溫度。圖3中的斜率累加器用于補(bǔ)償和修正測(cè)溫過程中的非線性,其輸出用于修正計(jì)數(shù)器1的預(yù)置值。DS18B20內(nèi)部結(jié)構(gòu)圖LCD1602工業(yè)字符型液晶,能夠同時(shí)顯示16x02即32個(gè)字符。(16列2行)注:為了表示的方便 ,后文皆以1表示高電平,0表示低電平。1602液晶也叫1602字符型液晶,它是一種專門用來顯示字母、數(shù)字、符號(hào)等的點(diǎn)陣型液晶模塊。它由若干個(gè)5X7或者5X11等點(diǎn)陣字符位組成,每個(gè)點(diǎn)陣字符位都可以顯示一個(gè)字符,每位之間有一個(gè)點(diǎn)距的間隔,每行之間也有間隔,起到了字符間距和行間距的作用,正因?yàn)槿绱怂运荒芎芎玫仫@示圖

26、形(用自定義CGRAM,顯示效果也不好)。1602LCD是指顯示的內(nèi)容為16X2,即可以顯示兩行,每行16個(gè)字符液晶模塊(顯示字符和數(shù)字)。市面上字符液晶大多數(shù)是基于HD44780液晶芯片的,控制原理是完全相同的,因此基于HD44780寫的控制程序可以很方便地應(yīng)用于市面上大部分的字符型液晶。1602采用標(biāo)準(zhǔn)的16腳接口,其中:第1腳:GND為電源地第2腳:VCC接5V電源正極第3腳:V0為液晶顯示器對(duì)比度調(diào)整端,接正電源時(shí)對(duì)比度最弱,接地電源時(shí)對(duì)比度最高(對(duì)比度過高時(shí)會(huì) 產(chǎn)生“鬼影”,使用時(shí)可以通過一個(gè)10K的電位器調(diào)整對(duì)比度)。第4腳:RS為寄存器選擇,高電平1時(shí)選擇數(shù)據(jù)寄存器、低電平0時(shí)選

27、擇指令寄存器。第5腳:RW為讀寫信號(hào)線,高電平(1)時(shí)進(jìn)行讀操作,第6腳:E(或EN)端為使能(enable)端,高電平(1)時(shí)讀取信息,負(fù)跳變時(shí)執(zhí)行指令。第714腳:D0D7為8位雙向數(shù)據(jù)端。第1516腳:空腳或背燈電源。15腳背光正極,16腳背光負(fù)極。3.2、系統(tǒng)電路設(shè)計(jì)AT89C51單片機(jī) 這部分為單片機(jī)復(fù)位電路和時(shí)鐘電路。單片機(jī)復(fù)位后,程序計(jì)數(shù)器PC=0000H,即指向程序存儲(chǔ)器0000H單元,使CPU從首地址重新開始執(zhí)行程序。產(chǎn)生單片機(jī)復(fù)位的條件是:在RST引腳端出現(xiàn)滿足復(fù)位時(shí)間要求的高電平狀態(tài),該時(shí)間等于系統(tǒng)時(shí)鐘震蕩周期建立時(shí)間再加2個(gè)機(jī)器周期時(shí)間(一般不小于10ms)。 時(shí)鐘電路

28、通過單片機(jī)的XTAL1和XTAL2引腳外接定時(shí)元件12M的晶振,電容C1和C2一般去30pF左右,主要作用是幫助振蕩器起震。晶體振蕩頻率高,則系統(tǒng)的時(shí)鐘頻率也越高,單片機(jī)運(yùn)行速速也就越快。DS18B20 LCD1602顯示電路 三個(gè)DS18B20采用單總線接線的方式獨(dú)立鍵盤設(shè)計(jì) 小燈和直流電機(jī)控制模塊 獨(dú)立鍵盤由鍵盤設(shè)置高溫和低溫的數(shù)值。直流電機(jī)由三極管驅(qū)動(dòng)繼電器組合控制,小燈用發(fā)光二極管直接接單片機(jī)。3.3總電路圖因?yàn)閱纹瑱C(jī)判斷不同溫度傳感器的溫度,并驅(qū)動(dòng)動(dòng)直流電機(jī)和發(fā)光二極管的方式和程序均相同,故只用一組直流電動(dòng)機(jī)和發(fā)光二極管進(jìn)行仿真,其余為節(jié)省器材,仿真時(shí)省略。四、系統(tǒng)軟件設(shè)計(jì)部分4.1

29、程序流程圖4.2程序開發(fā)過程頭文件部分內(nèi)容(詳見附錄)本次試驗(yàn)使用了LCD1602和DS1820兩個(gè)特殊頭文件,主要包括了LCD的初始化函數(shù)、讀寫顯示函數(shù)等和DS1820的溫度讀取返回函數(shù)。主函數(shù)主要內(nèi)容(詳見附錄)1、載入頭文件并定義引腳功能2、鍵盤掃描函數(shù)3、直流電機(jī)和發(fā)光二極管控制函數(shù)LD為發(fā)光二極管控制引腳的電平,DJ為直流電機(jī)控制引腳的電平,值為1時(shí)亮燈、電機(jī)轉(zhuǎn)動(dòng),值為0時(shí)燈熄滅,直流電機(jī)不轉(zhuǎn)動(dòng)。4、溫度數(shù)據(jù)處理函數(shù)temp1為需要顯示的第一個(gè)溫度傳感器的溫度temp為第一個(gè)傳感器中讀取的溫度的數(shù)據(jù)先判斷數(shù)據(jù)的正負(fù),如果為負(fù),顯示符號(hào)為“-”,并取反加一,否則符號(hào)為“+”。再對(duì)數(shù)據(jù)的

30、整數(shù)位,和小數(shù)位進(jìn)行轉(zhuǎn)換。五、系統(tǒng)仿真過程及結(jié)果溫度檢測(cè)并顯示,此時(shí)顯示三點(diǎn)溫度;下限22,上限28。判斷第一處溫度在上下限中間,電機(jī)不轉(zhuǎn)燈不亮。判斷第一個(gè)溫度傳感器的溫度小于下限,電機(jī)不轉(zhuǎn)燈亮。判斷第一個(gè)溫度傳感器的溫度在大于上限,電機(jī)轉(zhuǎn)動(dòng)燈不亮。按住調(diào)節(jié)按鈕,調(diào)節(jié)高、低溫?cái)?shù)值分別為19和32之后的結(jié)果。六、系統(tǒng)實(shí)物制作與調(diào)試6.1系統(tǒng)實(shí)物器件清單元件名稱 元件型號(hào)參數(shù) 數(shù)量單片機(jī) AT89C51 1個(gè)溫度傳感器 DS18B20 3個(gè)液晶顯示屏 LCD1602 1個(gè)按鍵 6個(gè)電阻 10K 9個(gè) 100 1個(gè)滑動(dòng)變阻器 10K 1個(gè)電阻排 8端口 1個(gè)電容 1nF 2個(gè) 1uF 1個(gè)晶振 11

31、.0592MHz 1個(gè)三極管 2N3906 1個(gè)繼電器 5V 1個(gè)直流電機(jī) 3V 1個(gè)發(fā)光二極管 紅色 1個(gè)6.2 實(shí)物制作過程本次制作的是多點(diǎn)測(cè)溫裝置,一開始的時(shí)候是設(shè)計(jì)成三個(gè)傳感器接三個(gè)端口的,但后來了解到DS18B20支持單總線的傳輸方式,就采取了現(xiàn)在的模式,我們小組利用手上的開發(fā)板和溫度傳感器來進(jìn)行制作。單點(diǎn)測(cè)溫和多點(diǎn)測(cè)溫是有很大區(qū)別的,只有一個(gè)傳感器的時(shí)候,可以跳過序列碼,但多個(gè)的時(shí)候,就要讀取DS18B20的序列碼并加以區(qū)分,一開始對(duì)這個(gè)序列碼的功用不是很了解,查了許多資料,知道這個(gè)序列碼有冗余碼的算法,這給我們程序編程帶來很大問題,為了解決這個(gè)問題,我們最后采用了一種方式,就是先

32、利用DS18B20讀取命令,編了序列碼讀取程序,把每個(gè)DS18B20的64位序列碼給讀出來,然后直接編在我們后來的程序里,這樣程序就可以直接讀已知序列碼的對(duì)應(yīng)傳感器的溫度。再后來的外圍電路制作過程中,我們發(fā)現(xiàn)單片機(jī)的負(fù)載驅(qū)動(dòng)還是很小的,稍微大一點(diǎn)負(fù)載還是要用三級(jí)管來控制的。最后因?yàn)槭情_發(fā)板的制作,所以整個(gè)制作過程并沒有要焊接的地方,這給我們省了很多功夫。6.3實(shí)物調(diào)試圖片七、心得體會(huì)這次課程設(shè)計(jì)讓我受益匪淺,無論從知識(shí)上還是其他的各個(gè)方面。上課的時(shí)候的學(xué)習(xí)從來沒有見過真正的單片機(jī),只是從理論的角度去理解枯燥乏味。但在實(shí)習(xí)中見過甚至使用了單片機(jī)及其系統(tǒng),能夠理論聯(lián)系實(shí)際的學(xué)習(xí),開闊了眼界,提高了

33、單片機(jī)知識(shí)的理解和水平。在這次課程設(shè)計(jì)中又讓我體會(huì)到了合作與團(tuán)結(jié)的力量,當(dāng)遇到不會(huì)或是設(shè)計(jì)不出來的地方,我們就會(huì)在QQ群里討論或者是同學(xué)之間相互幫助。團(tuán)結(jié)就是力量,無論在現(xiàn)在的學(xué)習(xí)中還是在以后的工作中,團(tuán)結(jié)都是至關(guān)重要的,有了團(tuán)結(jié)會(huì)有更多的理念、更多的思維、更多的情感。單片機(jī)是很重要的一門課程,老師和一些工作的朋友都曾說過,如果學(xué)好一門單片機(jī),就憑這個(gè)技術(shù)這門手藝找一個(gè)好工作也不成問題。盡管我們?cè)谡n堂學(xué)到的內(nèi)容很有限,但在以后的學(xué)習(xí)中單片機(jī)還需要好好的深入研究和學(xué)習(xí),學(xué)好了單片機(jī)也就多了一項(xiàng)生存的本錢。最后感謝老師對(duì)我們的精心指導(dǎo)和幫助,感謝同學(xué)們對(duì)我的幫助。八、參考文獻(xiàn)1黨峰、王敬農(nóng)、高國旺

34、.基于DS18B20的數(shù)字式溫度計(jì)的實(shí)現(xiàn)J.山西電子技術(shù),2007(3) 2趙海蘭、趙祥偉智能溫度傳感器DS18B20的原理與應(yīng)用J.現(xiàn)代電子技術(shù),2003,26(14) 3程院蓮.基于單總線器件DS18B20的智能溫度測(cè)量J.現(xiàn)代教育裝備,2010(23) 4宋起超 趙洪濤.基于DSl8B20的多點(diǎn)溫度巡回檢測(cè)系統(tǒng)研制J.交通科技與經(jīng)濟(jì),2007 5馬云峰.單片機(jī)與數(shù)字溫度傳感器DS18B20的接口設(shè)計(jì)J.計(jì)算機(jī)測(cè)量與控制,2002(04) 6郭天祥.新概念51單片機(jī)C語言教程入門、提高、開發(fā)、拓展全攻略.電子工業(yè)出版社M,2011 7林立、張俊亮、曹旭東.單片機(jī)原理及應(yīng)用(基于Proteu

35、s和Keil C)M.北京:電子工業(yè)出版社,2009 九、附錄文件主程序:#include#include#include #include #includeLCD1602.h#includeds1820.h#define uchar unsigned char#define unit unsigned intsbit DJ=P35;sbit LD=P34;sbit TJ=P10;sbit SXZ=P11;sbit SXY=P12;sbit XXZ=P14;sbit XXY=P13;uchar fh0,fh1,fh2;uint temp,temp1,temp2,temp3,temp1x,tem

36、p2x,temp3x,bw1,sw1,bw2,sw2,bw3,sw3;uint GB=28,DB=22;/顯示數(shù)據(jù)組uchar displaytemp116= ; /uchar displaytemp216= ; /uchar get_serial=168,0,0,7,86,244,171,40, 7,0,0,3,17,216,118,40, 66,0,0,3,17,154,163,40,/獲取的八個(gè)DS18B20內(nèi)部RAM64位序列號(hào) ;/* 延時(shí)函數(shù) *void delays(unsigned int us) while(us-); /* 顯示處理函數(shù) *void DISPLAY()dis

37、playtemp10=fh0;bw1=temp1/100;if(bw1=0) displaytemp11= ; /若百位為0則不顯示else displaytemp11=bw1+0x30; sw1=(temp1%100)/10;if(sw1=0) if(bw1=0)displaytemp12= ;elsedisplaytemp12=0;else displaytemp12=sw1+0x30; displaytemp13=(temp1%100)%10+0x30;displaytemp14=.;displaytemp15=temp1x/10+0x30;displaytemp16=0x27;disp

38、laytemp17=0x43; displaytemp18=fh1;bw2=temp2/100;if(bw2=0) displaytemp19= ; else displaytemp19=bw2+0x30; sw2=(temp2%100)/10;if(sw2=0) if(bw2=0)displaytemp110= ;elsedisplaytemp110=0;elsedisplaytemp110=sw2+0x30; displaytemp111=(temp2%100)%10+0x30;displaytemp112=.;displaytemp113=temp2x/10+0x30;displaytemp114=0x27;displaytemp115=0x43;displaytemp20=fh2;bw3=temp3/100;if(bw3=0) displaytemp21= ; else displaytemp21=bw3+0x30; sw3=(temp3%100)/10;if(sw3=0) if(bw3=0)displayte

溫馨提示

  • 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)論