溫度顯示系統(tǒng)(STC單片機(jī)、18B20傳感器、1602顯示)_第1頁(yè)
溫度顯示系統(tǒng)(STC單片機(jī)、18B20傳感器、1602顯示)_第2頁(yè)
溫度顯示系統(tǒng)(STC單片機(jī)、18B20傳感器、1602顯示)_第3頁(yè)
溫度顯示系統(tǒng)(STC單片機(jī)、18B20傳感器、1602顯示)_第4頁(yè)
溫度顯示系統(tǒng)(STC單片機(jī)、18B20傳感器、1602顯示)_第5頁(yè)
已閱讀5頁(yè),還剩23頁(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、單片機(jī)實(shí)訓(xùn)論文論文題目:溫度采集顯示系統(tǒng)學(xué) 院:年 級(jí):專 業(yè):姓 名:學(xué) 號(hào):指導(dǎo)教師: 2014年5月16日摘要溫度測(cè)量在物理實(shí)驗(yàn)、醫(yī)療衛(wèi)生、食品生產(chǎn)等領(lǐng)域,尤其在熱學(xué)試驗(yàn)中,有特別重要的意義。隨著人們生活水平的不斷提高,,人們對(duì)溫度計(jì)的要求越來(lái)越高,傳統(tǒng)的溫度計(jì)功能單一、精度低,要為現(xiàn)代人工作、科研、生活、提供更好的更方便的設(shè)施就需要從單片機(jī)技術(shù)入手,一切向著數(shù)字化控制,智能化控制方向發(fā)展。數(shù)字溫度計(jì)(Digital Thermometer)簡(jiǎn)稱D溫度是許多監(jiān)控系統(tǒng)中的一個(gè)重要參數(shù)。TM,它是采用數(shù)字化測(cè)量技術(shù),把連續(xù)的溫度值轉(zhuǎn)換成不連續(xù)、離散的數(shù)字形式并加以顯示的儀表。采用單片機(jī)控制的

2、數(shù)字溫度計(jì),由于精度高、可擴(kuò)展性強(qiáng)、集成方便、抗干擾能力強(qiáng),得到了廣泛的應(yīng)用。本設(shè)計(jì)以單片機(jī)和溫度傳感器為核心,設(shè)計(jì)數(shù)字溫度計(jì)。實(shí)現(xiàn)對(duì)溫度的采集、監(jiān)視和報(bào)警。在溫度采集的實(shí)現(xiàn)中,使用了AT89S52單片機(jī)和溫度傳感器DS18B20,通過(guò)LCD1602實(shí)現(xiàn)溫度顯示。溫度測(cè)量范圍-55+125,能準(zhǔn)確達(dá)到設(shè)計(jì)要求。關(guān)鍵詞溫度測(cè)量;單片機(jī);溫度傳感器AbstractTemperature measurement in physics experiments, medical and health, food production and other fields, especially in the

3、 thermal test, have particularly important sense. With the continuous improvement of people's living standard, people on the thermometer, the increasingly high demand, the traditional thermometer has single function, low precision, for the modern work, scientific research, life, provide better a

4、nd more convenient facilities needs from SCM technology proceed with, all to the digital control, intelligent control direction.Digital thermometer ( Digital Thermometer ) D temperature is many monitoring system is an important parameter. TM, it is the use of digital measuring technology, the contin

5、uous temperature value is converted into a continuous, discrete digital form and to display instrument. MCU control of the digital thermometer, because of high precision, good expansibility, convenient integration, strong anti-interference ability, has been widely used.The design of single chip comp

6、uter and temperature sensors as the core, the design of digital thermometer. To achieve the collection of temperature, monitoring and alarm. The temperature acquisition implementation, using AT89S52 MCU and temperature sensor DS18B20.ByLCD1602temperature display.The measuring range of the temperatur

7、e of - 55 DEG C to 125 degrees C.,can accurately achieve the design requirement.Key wordsSCM;single chip computer ;temperature sensorII畢業(yè)論文題目(五號(hào)楷體居中書(shū)寫(xiě))目錄摘要IAbstractII前言1第一章 溫度測(cè)量的背景及意義11.1 溫度測(cè)量的背景11.2 溫度測(cè)量的目的及意義2第二章 硬件電路及原理32.1 系統(tǒng)的結(jié)構(gòu)框圖32.2 單片機(jī)簡(jiǎn)介32.3 DS18B20簡(jiǎn)介82.4 LCD1602液晶顯示屏12第三章 軟件設(shè)計(jì)流程153.1 系統(tǒng)總體框圖1

8、53.2 液晶流程圖153.3 溫度傳感器流程圖163.4 仿真與調(diào)試16結(jié)論17附錄一18附錄二19致謝243前言溫度是工業(yè)控制中主要的被測(cè)參數(shù),隨著電子技術(shù)和微型計(jì)算機(jī)的快速發(fā)展,溫度的測(cè)量和控制技術(shù)在工業(yè)發(fā)展中起到了舉足輕重的作用。比如消防電氣的非破壞性溫度檢測(cè),電力、電訊設(shè)備的過(guò)熱故障預(yù)知檢測(cè),空調(diào)系統(tǒng)的溫度檢測(cè),在醫(yī)院的監(jiān)護(hù)中也用到溫度的測(cè)量,化工、機(jī)械等設(shè)備溫度過(guò)熱檢測(cè),土壤各個(gè)層面上的溫度將會(huì)影響植物的生長(zhǎng),以及熱處理中工件各個(gè)部位的溫度對(duì)工件形成后的性能至關(guān)重要等等。總之,現(xiàn)代電子工業(yè)的飛速發(fā)展對(duì)溫度檢測(cè)的智能化精確度要求越來(lái)越高。單片機(jī)具有處理能力強(qiáng)、運(yùn)行速度快、功耗低等優(yōu)點(diǎn)

9、。應(yīng)用在溫度測(cè)量方面簡(jiǎn)單方便,測(cè)量范圍廣精度高,從而提高了生產(chǎn)效率。本次課程設(shè)計(jì)用STC89C52單片機(jī)做內(nèi)核,選用18B20溫度傳感器作為輸入原件,將電信號(hào)傳送到CPU,然后送到LCD液晶顯示器顯示數(shù)值,從而達(dá)到測(cè)量要求,得到測(cè)量結(jié)果。第一章 溫度測(cè)量的背景及意義1.1 溫度測(cè)量的背景隨著人們生活水平的不斷提高數(shù)字化無(wú)疑是人們追求的目標(biāo)之一,它所給人帶來(lái)的方便也是不可否定的,其中數(shù)字溫度計(jì)就是一個(gè)典型的例子,一切向著數(shù)字化控制,智能化控制方向發(fā)展。數(shù)字溫度計(jì)與傳統(tǒng)的溫度計(jì)相比,具有讀數(shù)方便,測(cè)溫范圍廣,測(cè)溫準(zhǔn)確,其輸出溫度采用數(shù)字顯示,主要用于對(duì)測(cè)溫比較準(zhǔn)確的場(chǎng)所,或科研實(shí)驗(yàn)室使用。21世紀(jì)

10、的今天,科學(xué)技術(shù)的發(fā)展日新月異,科學(xué)技術(shù)的進(jìn)步同時(shí)也帶動(dòng)了測(cè)量技術(shù)的發(fā)展,現(xiàn)代控制設(shè)備不同于以前,它們?cè)谛阅芎徒Y(jié)構(gòu)發(fā)生了翻天覆地的變化。我們已經(jīng)進(jìn)入了高速發(fā)展的信息時(shí)代,測(cè)量技術(shù)是當(dāng)今社會(huì)的主流,廣泛地深入到應(yīng)用工程的各個(gè)領(lǐng)域。溫度是工業(yè)、農(nóng)業(yè)生產(chǎn)中常見(jiàn)的和最基本的參數(shù)之一,在生產(chǎn)過(guò)程中常需對(duì)溫度進(jìn)行檢測(cè)和監(jiān)控,采用微型機(jī)進(jìn)行溫度檢測(cè)、數(shù)字顯示、信息存儲(chǔ)及實(shí)時(shí)控制,對(duì)于提高生產(chǎn)效率和產(chǎn)品質(zhì)量、節(jié)約能源等都有重要的作用。伴隨工業(yè)科技、農(nóng)業(yè)科技的發(fā)展,溫度測(cè)量需求越來(lái)越多,也越來(lái)越重要。溫度計(jì)是常用的熱工儀表,常用于工業(yè)現(xiàn)場(chǎng)作為過(guò)程的溫度測(cè)量。在工業(yè)生產(chǎn)過(guò)程中,不僅需要了解當(dāng)前溫度讀數(shù),而且還希望

11、能了解過(guò)程中的溫度變化情況。隨著工業(yè)現(xiàn)代化的發(fā)展,對(duì)溫度測(cè)量?jī)x表的要求越來(lái)越高,而數(shù)字溫度表具有結(jié)構(gòu)簡(jiǎn)單,抗干擾能力強(qiáng),功耗小,可靠性高,速度快等特點(diǎn),更加適合于工業(yè)過(guò)程中以及科學(xué)試驗(yàn)中對(duì)溫度進(jìn)行在線測(cè)量的要求。近年來(lái),數(shù)字溫度表廣泛應(yīng)用在各個(gè)領(lǐng)域,它與模擬式溫度表相比較,歸納起來(lái)有如下特點(diǎn)。準(zhǔn)確度高,測(cè)量范圍寬、靈敏度高,測(cè)量速度快,使用方便、操作簡(jiǎn)單,抗干擾能力強(qiáng),自動(dòng)化程度高,讀數(shù)清晰、直觀方便。數(shù)字溫度計(jì)的高速發(fā)展,使它已成為實(shí)現(xiàn)測(cè)量自動(dòng)化、提高工作效率不可缺少的儀表。數(shù)字化是當(dāng)前計(jì)量?jī)x器儀表發(fā)展的主要方向之一。而高準(zhǔn)確度數(shù)字溫度計(jì)的出現(xiàn),又使溫度計(jì)進(jìn)入了精密標(biāo)準(zhǔn)測(cè)量領(lǐng)域。與此相適應(yīng),

12、測(cè)量的可靠性、準(zhǔn)確性顯得越來(lái)越重要。1.2 溫度測(cè)量的目的及意義溫度是工業(yè)生產(chǎn)過(guò)程中重要的被控參數(shù)之一,在冶金、機(jī)械、食品、化工等各類工業(yè)生產(chǎn)過(guò)程中廣泛使用的各種加熱爐、熱處理爐、反應(yīng)爐,對(duì)工件的處理溫度等均需要對(duì)溫度嚴(yán)格控制。隨著現(xiàn)代信息技術(shù)的飛速發(fā)展和傳統(tǒng)工業(yè)的逐步實(shí)現(xiàn),由微機(jī)構(gòu)成的溫度測(cè)控系統(tǒng)已在眾多領(lǐng)域被采用。該課題就是解決對(duì)工業(yè)現(xiàn)場(chǎng)溫度信號(hào)的采集控制和傳輸問(wèn)題。伴隨著計(jì)算機(jī)技術(shù)和網(wǎng)絡(luò)技術(shù)的發(fā)展,工業(yè)參數(shù)的數(shù)字采集促進(jìn)了現(xiàn)場(chǎng)總線(Fieldbus)技術(shù)的發(fā)展,目前現(xiàn)場(chǎng)總線已經(jīng)從當(dāng)初的420mA電流信號(hào)加載數(shù)字信號(hào),發(fā)展成為全數(shù)字通訊,解決了現(xiàn)場(chǎng)信號(hào)遠(yuǎn)距離高速傳送問(wèn)題,而且提高了抗干擾性

13、能,增加了系統(tǒng)配置的靈活性,節(jié)省了硬件投資,是未來(lái)生產(chǎn)自動(dòng)化和過(guò)程控制的發(fā)展方向。較有影響的總線有:CAN.LONWORKS.PROFIBUS.FF等。雖然這些總線無(wú)主從方式工作,速度較快、網(wǎng)絡(luò)支持較完善,但系統(tǒng)造價(jià)高,應(yīng)用受到限制。而RS-485總線主機(jī)調(diào)度網(wǎng)以其制造容易、造價(jià)低、軟硬件豐富、配置靈活等特點(diǎn),得到了廣泛的應(yīng)用。它不僅具有良好的抗噪聲干擾性,較遠(yuǎn)的傳輸距離,而且它可以實(shí)現(xiàn)多點(diǎn)互聯(lián),還可以實(shí)現(xiàn)全雙工通信,因此對(duì)遠(yuǎn)程溫度采集控制系統(tǒng)的研究具有現(xiàn)實(shí)的意義和實(shí)際的價(jià)值。第二章 硬件電路及原理本章主要介紹本系統(tǒng)的硬件電路的組成、原理以及各個(gè)模塊的功能。2.1 系統(tǒng)的結(jié)構(gòu)框圖采用數(shù)字溫度傳

14、感器DS18B20測(cè)量溫度,輸出信號(hào)全數(shù)字化。便于單片機(jī)處理及控制,省去傳統(tǒng)的測(cè)溫方法的很多外圍電路。且該芯片的物理化學(xué)性很穩(wěn)定,它能用做工業(yè)測(cè)溫元件,此元件線性度較好。在0100攝氏度時(shí),最大線形偏差小于1攝氏度。DS18B20的最大特點(diǎn)之一采用了單總線的數(shù)據(jù)傳輸,由數(shù)字溫度計(jì)DS1820和微控制器AT89S52構(gòu)成的溫度測(cè)量裝置,它直接輸出溫度的數(shù)字信號(hào),可直接與計(jì)算機(jī)連接。這樣,測(cè)溫系統(tǒng)的結(jié)構(gòu)就比較簡(jiǎn)單,體積也不大,且由于AT89S52可以帶多個(gè)DSB1820,因此可以非常容易實(shí)現(xiàn)多點(diǎn)測(cè)量。輕松的組建傳感器網(wǎng)絡(luò)。采用溫度芯片DS18B20測(cè)量溫度,可以體現(xiàn)系統(tǒng)芯片化這個(gè)趨勢(shì)。部分功能電路

15、的集成,使總體電路更簡(jiǎn)潔,搭建電路和焊接電路時(shí)更快。而且,集成塊的使用,有效地避免外界的干擾,提高測(cè)量電路的精確度。所以集成芯片的使用將成為電路發(fā)展的一種趨勢(shì)。本方案應(yīng)用這一溫度芯片,也是順應(yīng)這一趨勢(shì)。CPU采用STC89C52單片機(jī)實(shí)現(xiàn)。單片機(jī)軟件編程的自由度大,可通過(guò)編程實(shí)現(xiàn)各種各樣的算術(shù)算法和邏輯控制。而且體積小,硬件實(shí)現(xiàn)簡(jiǎn)單,安裝方便。另外STC89C52在工業(yè)控制上也有著廣泛的應(yīng)用,編程技術(shù)及外圍功能電路的配合使用都很成熟。LCD1602液晶顯示單片機(jī)STC89C52(CPU)DS18B20溫度傳感器電源LM7805圖2-1 系統(tǒng)結(jié)構(gòu)圖2.2 單片機(jī)簡(jiǎn)介STC89C52是STC公司生

16、產(chǎn)的一種低功耗、高性能CMOS8位微控制器,具有8K在系統(tǒng)可編程Flash存儲(chǔ)器。STC89C52使用經(jīng)典的MCS-51內(nèi)核,但做了很多的改進(jìn)使得芯片具有傳統(tǒng)51單片機(jī)不具備的功能。在單芯片上,擁有靈巧的8位CPU和在系統(tǒng)可編程Flash,使得STC89C52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。具有以下標(biāo)準(zhǔn)功能: 8k字節(jié)Flash,512字節(jié)RAM,32位I/O口線,看門(mén)狗定時(shí)器,內(nèi)置4KB EEPROM,MAX810復(fù)位電路,3個(gè)16位定時(shí)器/計(jì)數(shù)器,4個(gè)外部中斷,一個(gè)7向量4級(jí)中斷結(jié)構(gòu)(兼容傳統(tǒng)51的5向量2級(jí)中斷結(jié)構(gòu)),全雙工串行口。另外 STC89C52可降至0Hz

17、靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式。空閑模式下,CPU 停止工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。最高運(yùn)作頻率35MHz,6T/12T可選。其實(shí)物圖如下所示:圖2-2 STC89C52RC實(shí)物圖1管腳說(shuō)明:VCC:供電電壓。GND:接地。P0口:P0口為一個(gè)8位漏級(jí)開(kāi)路雙向I/O口,每腳可吸收8TTL門(mén)電流。當(dāng)P1口的管腳第一次寫(xiě)1時(shí),被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù)/地址的第八位。在FLASH編程時(shí),P0 口作為原碼輸入口,當(dāng)FLASH進(jìn)

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

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

20、 T0(記時(shí)器0外部輸入)P3.5 T1(記時(shí)器1外部輸入)P3.6 /WR(外部數(shù)據(jù)存儲(chǔ)器寫(xiě)選通)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)訪問(wèn)外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過(guò)一個(gè)ALE脈沖。如想禁止ALE的輸出

21、可在SFR區(qū)中的8EH地址上置0。此時(shí), ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無(wú)效。PSEN:外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次PSEN有效。但在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的PSEN信號(hào)將不出現(xiàn)。EA/VPP:當(dāng)EA保持低電平時(shí),則在此期間外部程序存儲(chǔ)器(0000H-FFFFH),不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式1時(shí),EA將內(nèi)部鎖定為RESET;當(dāng)EA端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。XTAL1:

22、反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。XTAL2:來(lái)自反向振蕩器的輸出。2振蕩器特性:XTAL1和XTAL2分別為反向放大器的輸入和輸出。該反向放大器可以配置為片內(nèi)振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時(shí)鐘源驅(qū)動(dòng)器件,XTAL2應(yīng)不接。有余輸入至內(nèi)部時(shí)鐘信號(hào)要通過(guò)一個(gè)二分頻觸發(fā)器,因此對(duì)外部時(shí)鐘信號(hào)的脈寬無(wú)任何要求,但必須保證脈沖的高低電平要求的寬度。3芯片擦除:整個(gè)PEROM陣列和三個(gè)鎖定位的電擦除可通過(guò)正確的控制信號(hào)組合,并保持ALE管腳處于低電平10ms 來(lái)完成。在芯片擦操作中,代碼陣列全被寫(xiě)“1”且在任何非空存儲(chǔ)字節(jié)被重復(fù)編程以前,該操作必須被執(zhí)行。此外,AT89S52

23、設(shè)有穩(wěn)態(tài)邏輯,可以在低到零頻率的條件下靜態(tài)邏輯,支持兩種軟件可選的掉電模式。在閑置模式下,CPU停止工作。但RAM,定時(shí)器,計(jì)數(shù)器,串口和中斷系統(tǒng)仍在工作。在掉電模式下,保存RAM的內(nèi)容并且凍結(jié)振蕩器,禁止所用其他芯片功能,直到下一個(gè)硬件復(fù)位為止。其引腳圖如下所示:圖2-3 STC89C52RC引腳圖4特性8K字節(jié)程序存儲(chǔ)空間;512字節(jié)數(shù)據(jù)存儲(chǔ)空間;內(nèi)帶2K字節(jié)EEPROM存儲(chǔ)空間;可直接使用串口下載;AT89S52單片機(jī):8K字節(jié)程序存儲(chǔ)空間;256字節(jié)數(shù)據(jù)存儲(chǔ)空間;自帶2KB的EEPROM存儲(chǔ)空間;5參數(shù)1)增強(qiáng)型8051單片機(jī),6 時(shí)鐘/機(jī)器周期和12 時(shí)鐘/機(jī)器周期可以任意 選擇,指

24、令代碼完全兼容傳統(tǒng)8051.22)工作電壓:5.5V3.3V(5V單片機(jī))/3.8V2.0V(3V 單片機(jī))3)工作頻率范圍:040MHz,相當(dāng)于普通8051 的080MHz,實(shí)際工作頻率可達(dá)48MHz4)用戶應(yīng)用程序空間為8K字節(jié)5)片上集成512 字節(jié)RAM6)通用I/O 口(32 個(gè)),復(fù)位后為:P0/P1/P2/P3 是準(zhǔn)雙向口/弱上拉, P0 口是漏極開(kāi)路輸出,作為總線擴(kuò)展用時(shí),不用加上拉電阻,作為 I/O 口用時(shí),需加上拉電阻。7)ISP(在系統(tǒng)可編程)/IAP(在應(yīng)用可編程),無(wú)需專用編程器,無(wú) 需專用仿真器,可通過(guò)串口(RxD/P3.0,TxD/P3.1)直接下載用戶程 序,數(shù)

25、秒即可完成一片8)具有EEPROM 功能9)共3個(gè)16位定時(shí)器/計(jì)數(shù)器。即定時(shí)器T0、T1、T210)外部中斷4路,下降沿中斷或低電平觸發(fā)電路,Power Down 模式可 由外部中斷低電平觸發(fā)中斷方式喚醒11)通用異步串行口(UART),還可用定時(shí)器軟件實(shí)現(xiàn)多個(gè)UART12)工作溫度范圍:-40+85(工業(yè)級(jí))/075(商業(yè)級(jí))13)PDIP封裝其最小系統(tǒng)電路如下圖所示:圖2-4 STC89C52RC的最小系統(tǒng)6STC89C52RC單片機(jī)的工作模式掉電模式:典型功耗<0.1A,可由外部中斷喚醒,中斷返回后,繼續(xù)執(zhí)行原程序空閑模式:典型功耗2mA正常工作模式:典型功耗4Ma7mA掉電模式

26、可由外部中斷喚醒,適用于水表、氣表等電池供電系統(tǒng)及便攜設(shè)備2.3 DS18B20簡(jiǎn)介正文溫度傳感器DS18B20是一種新型數(shù)字溫度傳感器,它采用獨(dú)特的單線接口方式,僅需一個(gè)端口引腳來(lái)發(fā)送或接收信息,在單片機(jī)和DS18B20之間僅需一條數(shù)據(jù)線和一條地線進(jìn)行接口。DS18B20采用TO-92封裝,引腳排列如圖6所示。各引腳功能如下:圖2-5 DS18B20引腳圖GND:地。DQ:?jiǎn)尉€應(yīng)用的數(shù)據(jù)輸入/輸出引腳。VDD:可選的外部供電電源引腳。DS18B20內(nèi)部有三個(gè)主要數(shù)字部件:64位激光ROM、溫度傳感器、非易失性溫度報(bào)警觸發(fā)器TH和TL。DS18B20可以采用寄生電源方式工作,從單總線上汲取能量

27、,在信號(hào)線處于高電平期間把能量?jī)?chǔ)存在內(nèi)部電容里,在信號(hào)線處于低電平期間消耗電容上的電能工作,直到高電平到來(lái)再給寄生電源(電容)充電。DS18B20也可用外部35.5V電源供電,這兩種供電方式的電路如圖所示。圖2-6 兩種供電方式采用寄生電源方式時(shí),VDD引腳必須接地,另外為了得到足夠的工作電流,應(yīng)給單片機(jī)的I/O口線提供一個(gè)強(qiáng)上拉,一般可以使用一個(gè)場(chǎng)效應(yīng)管將I/O口線直接拉到電源上。采用外部供電方式時(shí)可以不用強(qiáng)上拉,但外部電源要處于工作狀態(tài),GND引腳不得懸空。溫度高于100時(shí),不推薦使用寄生電源,應(yīng)采用外部電源供電。DS18B20依靠一個(gè)單線端口通信,必須先建立ROM操作協(xié)議,才能進(jìn)行存儲(chǔ)器

28、和控制操作。因此,單片機(jī)必須先提供下面5個(gè)ROM操作命令之一:讀出ROM,代碼為33H,用于讀出DS18B20的序列號(hào),即64位激光ROM代碼。匹配ROM,代碼為55H,用于辨識(shí)(或選中)某一特定的DS18B20進(jìn)行操作。搜索ROM,代碼為F0H,用于確定總線上的節(jié)點(diǎn)數(shù)以及所有節(jié)點(diǎn)的序列號(hào)。跳過(guò)ROM,代碼為CCH,命令發(fā)出后系統(tǒng)將對(duì)所有DS18B20進(jìn)行操作,通常用于啟動(dòng)所有DS18B20轉(zhuǎn)換之前,或系統(tǒng)中只有一個(gè)DS18B20時(shí)。報(bào)警搜索,代碼為ECH,主要用于鑒別和定位系統(tǒng)中超出程序設(shè)定的報(bào)警溫度界限的節(jié)點(diǎn)。這些命令對(duì)每個(gè)器件的激光ROM部分進(jìn)行操作,在單線總線上掛有多個(gè)器件時(shí),可以區(qū)分

29、出單個(gè)器件,同時(shí)指明有多少器件或是什么型號(hào)的器件。DS18B20提供了如下存儲(chǔ)器操作命令:溫度轉(zhuǎn)換,代碼為44H,用于啟動(dòng)DS18B20進(jìn)行溫度測(cè)量,溫度轉(zhuǎn)換命令被后DS18B20保持等待狀態(tài)。如果主機(jī)在這條命令之后跟著發(fā)出讀時(shí)間隙,而DS18B20又忙于進(jìn)行溫度轉(zhuǎn)換的話,DS18B20將在總線上輸出“0”,若溫度轉(zhuǎn)換完成,則輸出“1”。如果使用寄生電源,主機(jī)必須在發(fā)出這條命令后立即啟動(dòng)強(qiáng)上拉,并保持750ms,在這段時(shí)間內(nèi)單總線上不允許進(jìn)行任何其他操作。讀暫存器,代碼為BEH,用于讀取暫存器中的內(nèi)容,從字節(jié)0開(kāi)始最多可以讀取9個(gè)字節(jié),如果不想讀完所有字節(jié),主機(jī)可以在任何時(shí)間發(fā)出復(fù)位命令來(lái)終止

30、讀取。寫(xiě)暫存器,代碼為4EH,用于將數(shù)據(jù)寫(xiě)入到DS18B20暫存器的地址2和地址3(TH和TL字節(jié))??梢栽谌魏螘r(shí)刻發(fā)出復(fù)位命令來(lái)終止寫(xiě)入。復(fù)制暫存器,代碼為48H,用于將暫存器的內(nèi)容復(fù)制到DS18B20的非易失性E²RAM中,即把溫度報(bào)警觸發(fā)字節(jié)存入非易失性存儲(chǔ)器里。如果主機(jī)在這條命令之后跟著發(fā)出讀時(shí)間隙,而DS18B20又正在忙于把暫存器的內(nèi)容復(fù)制到E²RAM存儲(chǔ)器,DS18B20就會(huì)輸出一個(gè)“0”,如果復(fù)制結(jié)束的話,DS18B20則輸出“1”。如果使用寄生電源,主機(jī)必須在這條命令發(fā)出后立即啟動(dòng)強(qiáng)上拉并最少保持10ms,在這段時(shí)間內(nèi)單總線上不允許進(jìn)行任何其他操作。重讀E

31、²RAM,代碼為B8H,用于將存儲(chǔ)在非易失性E²RAM中的內(nèi)容重新讀入到暫存器(溫度觸發(fā)器)中。這種復(fù)制操作在DS18B20上電時(shí)自動(dòng)執(zhí)行,這樣器件一上電,暫存器里馬上就存在有效的數(shù)據(jù)了。若在這條命令發(fā)出之后發(fā)出讀時(shí)間隙,器件會(huì)輸出溫度轉(zhuǎn)換忙的標(biāo)志:“0”代表忙,“1”代表完成。讀電源,代碼為B4H,用于將DS18B20的供電方式信號(hào)發(fā)送到主機(jī)。若在這條命令發(fā)出之后發(fā)出讀時(shí)間隙,DS18B20將返回它的供電模式:“0”代表寄生電源,“1”代表外部電源。一條溫度轉(zhuǎn)換命令啟動(dòng)DS18B20完成一次溫度測(cè)量,測(cè)量結(jié)果以二進(jìn)制補(bǔ)碼形式存放在高速暫存器中,占用暫存器的字節(jié)1(LSB)

32、和字節(jié)2(MSB)。用一條讀暫存器內(nèi)容的存儲(chǔ)器操作命令可以把暫存器中的數(shù)據(jù)讀出。溫度報(bào)警觸發(fā)器TH和TL各由一個(gè)E²PROM字節(jié)構(gòu)成,可以用一條寫(xiě)存儲(chǔ)器操作命令對(duì)TH和TL進(jìn)行寫(xiě)入,對(duì)這些寄存器的讀出需要通過(guò)暫存器。當(dāng)符號(hào)位S=0時(shí),表示測(cè)得的溫度值為正,可以直接對(duì)測(cè)得的二進(jìn)制數(shù)進(jìn)行計(jì)算并轉(zhuǎn)換為十進(jìn)制數(shù)。當(dāng)符號(hào)位S=1時(shí),表示測(cè)得的溫度值為負(fù),此時(shí)測(cè)得的二進(jìn)制數(shù)為補(bǔ)碼數(shù),要先變成原碼數(shù)再進(jìn)行計(jì)算。表2所示為部分溫度值對(duì)應(yīng)的二進(jìn)制數(shù)據(jù)。表2-1 溫度對(duì)應(yīng)值表:溫度/二進(jìn)制表示十六進(jìn)制表示+1250000 0111 1101 000007D0H+850000 0101 0101 0000

33、0550H+25.06250000 0001 1001 00000191H+10.1250000 0000 1010 000100A2H+0.50000 0000 1010 00010008H00000 0000 0000 10000000H-0.51111 1111 1111 0000FFF8H-10.1251111 1111 0101 1110FF5EH-25.06251111 1110 0110 1111FE5FH-551111 1100 1001 0000FC90HDS18B20完成溫度轉(zhuǎn)換后,就把測(cè)得的溫度值t與暫存器中的TH、TL字節(jié)內(nèi)容進(jìn)行比較,若t>TH或t<TL,

34、則將DS18B20內(nèi)部報(bào)警標(biāo)志位置1,并對(duì)主機(jī)發(fā)出的報(bào)警搜索命令做出響應(yīng),因此可用多只DS18B20進(jìn)行多點(diǎn)溫度循環(huán)檢測(cè)。2.4 LCD1602液晶顯示屏字符型液晶顯示模塊是一種專門(mén)用于顯示字母、數(shù)字、符號(hào)等點(diǎn)陣式LCD,目前常用16*1,16*2,20*2和40*2行等的模塊。下面以長(zhǎng)沙太陽(yáng)人電子有限公司的1602字符型液晶顯示器為例,介紹其用法。一般1602字符型液晶顯示器實(shí)物如圖圖2-7 1602實(shí)物圖1.LCD1602主要技術(shù)參數(shù):顯示容量:16×2個(gè)字符芯片工作電壓:4.55.5V工作電流:2.0mA(5.0V)模塊最佳工作電壓:5.0V字符尺寸:2.95×4.3

35、5(W×H)mm2.引腳功能說(shuō)明LCD1602采用標(biāo)準(zhǔn)的16腳(帶背光)接口,各引腳接口說(shuō)明如表:引腳接口說(shuō)明表表2-2 LCD1602引腳接口說(shuō)明編號(hào)符號(hào)引腳說(shuō)明編號(hào)符號(hào)引腳說(shuō)明1VSS電源地9D2數(shù)據(jù)2VDD電源正極10D3數(shù)據(jù)3VL液晶顯示偏壓11D4數(shù)據(jù)4RS數(shù)據(jù)/命令選擇12D5數(shù)據(jù)5R/W讀/寫(xiě)選擇13D6數(shù)據(jù)6E使能信號(hào)14D7數(shù)據(jù)7D0數(shù)據(jù)15BLA背光源正極8D1數(shù)據(jù)16BLK背光源負(fù)極第1腳:VSS為地電源。第2腳:VDD接5V正電源。第3腳:VL為液晶顯示器對(duì)比度調(diào)整端,接正電源時(shí)對(duì)比度最弱,接地時(shí)對(duì)比度最高,對(duì)比度過(guò)高時(shí)會(huì)產(chǎn)生“鬼影”,使用時(shí)可以通過(guò)一個(gè)10K

36、的電位器調(diào)整對(duì)比度。第4腳:RS為寄存器選擇,高電平時(shí)選擇數(shù)據(jù)寄存器、低電平時(shí)選擇指令寄存器。第5腳:R/W為讀寫(xiě)信號(hào)線,高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫(xiě)操作。當(dāng)RS和R/W共同為低電平時(shí)可以寫(xiě)入指令或者顯示地址,當(dāng)RS為低電平R/W為高電平時(shí)可以讀忙信號(hào),當(dāng)RS為高電平R/W為低電平時(shí)可以寫(xiě)入數(shù)據(jù)。第6腳:E端為使能端,當(dāng)E端由高電平跳變成低電平時(shí),液晶模塊執(zhí)行命令。第714腳:D0D7為8位雙向數(shù)據(jù)線。第15腳:背光源正極。第16腳:背光源負(fù)極。圖2-8 1602外設(shè)電路圖3.線段的顯示:點(diǎn)陣圖形式液晶由M×N個(gè)顯示單元組成,假設(shè)LCD顯示屏有64行,每行有128列,每8列對(duì)應(yīng)

37、1字節(jié)的8位,即每行由16字節(jié),共16×8=128個(gè)點(diǎn)組成,屏上64×16個(gè)顯示單元與顯示RAM區(qū)1024字節(jié)相對(duì)應(yīng),每一字節(jié)的內(nèi)容和顯示屏上相應(yīng)位置的亮暗對(duì)應(yīng)。例如屏的第一行的亮暗由RAM區(qū)的000H00FH的16字節(jié)的內(nèi)容決定,當(dāng)(000H)=FFH時(shí),則屏幕的左上角顯示一條短亮線,長(zhǎng)度為8個(gè)點(diǎn);當(dāng)(3FFH)=FFH時(shí),則屏幕的右下角顯示一條短亮線;當(dāng)(000H)=FFH,(001H)=00H,(002H)=00H,(00EH)=00H,(00FH)=00H時(shí),則在屏幕的頂部顯示一條由8段亮線和8條暗線組成的虛線。這就是LCD顯示的基本原理。4.字符的顯示用LCD顯示

38、一個(gè)字符時(shí)比較復(fù)雜,因?yàn)橐粋€(gè)字符由6×8或8×8點(diǎn)陣組成,既要找到和顯示屏幕上某幾個(gè)位置對(duì)應(yīng)的顯示RAM區(qū)的8字節(jié),還要使每字節(jié)的不同位為“1”,其它的為“0”,為“1”的點(diǎn)亮,為“0”的不亮。這樣一來(lái)就組成某個(gè)字符。但由于內(nèi)帶字符發(fā)生器的控制器來(lái)說(shuō),顯示字符就比較簡(jiǎn)單了,可以讓控制器工作在文本方式,根據(jù)在LCD上開(kāi)始顯示的行列號(hào)及每行的列數(shù)找出顯示RAM對(duì)應(yīng)的地址,設(shè)立光標(biāo),在此送上該字符對(duì)應(yīng)的代碼即可。第三章 軟件設(shè)計(jì)流程3.1 系統(tǒng)總體框圖整個(gè)系統(tǒng)的功能是由硬件電路配合軟件來(lái)實(shí)現(xiàn)的,當(dāng)硬件基本定型后軟件的功能也就基本定下來(lái)了。從軟件的功能不同可分為兩大塊:第一塊是對(duì)數(shù)

39、字溫度傳感器的操作,通過(guò)單片機(jī)對(duì)DS18B20進(jìn)復(fù)位,進(jìn)行數(shù)據(jù)讀取等操作;第二塊是控制LCD1602顯示,將溫度數(shù)據(jù)在液晶上顯示出來(lái)。圖3-1 軟件總體實(shí)物圖3.2 液晶流程圖圖3-2 液晶流程圖3.3 溫度傳感器流程圖圖3-3 溫度傳感器流程圖3.4 仿真與調(diào)試首先調(diào)試液晶程序。單片機(jī)STC89C52的P2口接液晶數(shù)據(jù)口,根據(jù)液晶手冊(cè),將RS1和RE借口接高電平;RS、R/W、EN接口接單片機(jī)P30,P31,P32口,單獨(dú)調(diào)試液晶程序,將hex文件下載到單片機(jī),看看是否在液晶第一排是否顯示“溫度”,在第三排是否顯示“液晶溫度顯示”。然后根據(jù)DS18B20的手冊(cè)書(shū)寫(xiě)程序,將液晶程序設(shè)為頭文件,

40、若DS18B20程序無(wú)誤,則在液晶的第一排首位開(kāi)始會(huì)顯示“溫度”,第二排的第三個(gè)字符開(kāi)始會(huì)顯示溫度值XX,第三排不顯示,第四排首位開(kāi)始顯示“液晶溫度顯示”。如果程序有誤,則再看看芯片資料和程序的書(shū)寫(xiě)是否有出入,如有錯(cuò)誤則再更正,直至顯示正確為止。結(jié)論此次課程設(shè)計(jì)是我大學(xué)生活重要的一步。從最初的選題,開(kāi)題到寫(xiě)論文直到完成論文。其間,查找資料,老師指導(dǎo),與同學(xué)交流,然后反復(fù)修改,每一個(gè)過(guò)程都是對(duì)自己能力的一次檢驗(yàn)和充實(shí)。通過(guò)這次實(shí)踐,鍛煉了設(shè)計(jì)實(shí)踐能力,此次課程設(shè)計(jì)是對(duì)我專業(yè)知識(shí)和專業(yè)基礎(chǔ)知識(shí)一次實(shí)際檢驗(yàn)和鞏固。 這次課程設(shè)計(jì)收獲很多,比如學(xué)會(huì)了查找相關(guān)資料相關(guān)標(biāo)準(zhǔn),分析數(shù)據(jù),提高了自己的制作能力

41、。終于完成了我的單片機(jī)課程設(shè)計(jì),雖然沒(méi)有完全達(dá)到設(shè)計(jì)要求,但從心底里說(shuō),還是高興的,畢竟這次設(shè)計(jì)花了我很多心血,高興之余不得不深思呀!在本次設(shè)計(jì)的過(guò)程中,我發(fā)現(xiàn)很多的問(wèn)題,比如缺乏綜合應(yīng)用專業(yè)知識(shí)的能力,對(duì)材料的不了解等等。由于時(shí)間有限,未能完成全部安裝與調(diào)試工作,對(duì)設(shè)計(jì)結(jié)果沒(méi)有作出最后的檢驗(yàn),也感到遺憾。這次實(shí)踐是對(duì)自己大學(xué)三年所學(xué)的一次大檢閱,使我明白自己知識(shí)還很不全面。單片機(jī)課程設(shè)計(jì)重點(diǎn)就在于軟件算法的設(shè)計(jì),需要有很巧妙的程序算法,雖然以前寫(xiě)過(guò)幾次程序,但我覺(jué)的寫(xiě)好一個(gè)程序并不是一件簡(jiǎn)單的事,只有我們?nèi)ピ囍隽?,才能真正的掌握,只學(xué)習(xí)理論有些東西是很難理解的,更談不上掌握。從這次的課程設(shè)

42、計(jì)中,使我真正的意識(shí)到,在以后的學(xué)習(xí)中,要理論聯(lián)系實(shí)際,把我們所學(xué)的理論知識(shí)用到實(shí)際當(dāng)中,學(xué)習(xí)單機(jī)片機(jī)更是如此,程序只有在經(jīng)常的寫(xiě)與讀的過(guò)程中才能提高,這就是我在這次課程設(shè)計(jì)中的最大收獲。在此感謝老師的悉心指導(dǎo)和同學(xué)們的大力幫助!附錄一系統(tǒng)總體電路設(shè)計(jì)附錄二#include<reg51.h>#define uchar unsigned char#define uint unsigned intsbit DQ=P37;/ds18b20與單片機(jī)連接口sbit RS=P30;sbit RW=P31;sbit EN=P32;unsigned char code str1="tem

43、perature: "unsigned char code str2="? "uchar data disdata5;uint tvalue;/溫度值uchar tflag;/溫度正負(fù)標(biāo)志/*lcd1602程序*/void delay1ms(unsigned int ms)/延時(shí)1毫秒(不夠精確的)unsigned int i,j;for(i=0;i<ms;i+)for(j=0;j<100;j+);void wr_com(unsigned char com)/寫(xiě)指令/ delay1ms(1);RS=0;RW=0;EN=0;P2=com;delay1ms

44、(1);EN=1;delay1ms(1);EN=0;void wr_dat(unsigned char dat)/寫(xiě)數(shù)據(jù)/ delay1ms(1);RS=1;RW=0;EN=0;P2=dat;delay1ms(1);EN=1;delay1ms(1);EN=0;void lcd_init()/初始化設(shè)置/delay1ms(15);wr_com(0x38);delay1ms(5);wr_com(0x08);delay1ms(5);wr_com(0x01);delay1ms(5);wr_com(0x06);delay1ms(5);wr_com(0x0c);delay1ms(5);void displ

45、ay(unsigned char *p)/顯示/while(*p!='0')wr_dat(*p);p+;delay1ms(1);init_play()/初始化顯示 lcd_init();wr_com(0x80);display(str1);wr_com(0xc0);display(str2); /*ds1820程序*/void delay_18B20(unsigned int i)/延時(shí)1微秒while(i-);void ds1820rst()/*ds1820復(fù)位*/unsigned char x=0;DQ = 1; /DQ復(fù)位delay_18B20(4); /延時(shí)DQ = 0; /DQ拉低delay_18B20(100); /精確延時(shí)大于480usDQ = 1; /拉高delay_18B20(40); uchar ds1820rd()/*讀數(shù)據(jù)*/unsigned char i=0;unsigned char dat = 0;for (i=8;i>0;i-)DQ = 0

溫馨提示

  • 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ù)網(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)論