基于單片機(jī)恒溫控制系統(tǒng)的設(shè)計(jì)_第1頁
基于單片機(jī)恒溫控制系統(tǒng)的設(shè)計(jì)_第2頁
基于單片機(jī)恒溫控制系統(tǒng)的設(shè)計(jì)_第3頁
基于單片機(jī)恒溫控制系統(tǒng)的設(shè)計(jì)_第4頁
基于單片機(jī)恒溫控制系統(tǒng)的設(shè)計(jì)_第5頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、-. z.獨(dú)創(chuàng)性聲明本人聲明所呈交的學(xué)位論文是本人在教師指導(dǎo)下進(jìn)展的研究工作及取得的研究成果,除了文中特別加以標(biāo)注和致謝的地方外,論文中不包含其他人已經(jīng)發(fā)表或撰寫過的研究成果。與我一同工作的同志對本研究所做的任何奉獻(xiàn)均已在論文中作了明確的說明并表示謝意。學(xué)位論文作者簽名:日期:學(xué)位論文使用授權(quán)書本學(xué)位論文作者授權(quán)長江師*學(xué)院可以將學(xué)位論文的全部或局部內(nèi)容編入有關(guān)數(shù)據(jù)庫進(jìn)展檢索,允許論文被查閱和借閱,可以采用影印、縮印或其它復(fù)制手段保存、匯編學(xué)位論文。*的學(xué)位論文在解密后適用本授權(quán)書學(xué)位論文作者簽名:指導(dǎo)教師簽名:日 期: 日期:-. z.摘要本設(shè)計(jì)主要研究的是基于單片機(jī)的恒溫控制,通過對單片機(jī)

2、添加外圍電路并編程來到達(dá)設(shè)計(jì)目的。其主要分為了軟件系統(tǒng)和硬件系統(tǒng)兩個(gè)局部,然而軟件系統(tǒng)的設(shè)計(jì)是建立在硬件系統(tǒng)的根底上進(jìn)展的。設(shè)計(jì)最終到達(dá)了恒溫控制功能的目的。包括實(shí)際溫度的測量及顯示、溫度上下限*圍設(shè)定、超過上下限溫度報(bào)警并亮燈以及處理。本設(shè)計(jì)是把AT89C52單片機(jī)作為控制中心,把DS18B20溫度傳感器作為溫度傳感器。它的測量*圍在0100之間, 分辨率為0.1攝氏度且誤差不大于1攝氏度;采用繼電器作為弱電控制強(qiáng)電輸出。作為恒溫控制系統(tǒng),它將溫度探測、單片機(jī)控制和弱電控制強(qiáng)電技術(shù)相結(jié)合,從而到達(dá)恒溫控制系統(tǒng)的目的。本設(shè)計(jì)不但能夠設(shè)置目標(biāo)溫度的上下限值*圍,并且當(dāng)實(shí)際溫度不高于設(shè)定目標(biāo)溫度下

3、限值的時(shí)候,繼電器一吸合燈亮開場加熱,蜂鳴器響且燈亮;當(dāng)溫度不低于設(shè)定目標(biāo)溫度上限值的時(shí)候,繼電器一斷開燈滅停頓加熱,同時(shí)繼電器二吸合燈亮開場降溫,蜂鳴器響且燈亮。關(guān)鍵字:51單片機(jī);恒溫控制系統(tǒng);DS18B20溫度傳感器AbstractThis design study is based on single-chip temperature control, by adding e*ternal circuit and microcontroller programming to meet the design objectives. The main software system is

4、divided into two parts and hardware systems , however, the design of software systems is based on the hardware system performed . Designed to ultimately achieve the purpose of temperature control function , including measurement and abc the actual temperature , upper and lower temperature range is s

5、et , over the lower temperature alarm and lighting and processing . This design is the AT89C52 microcontroller as the control center, the DS18B20 temperature sensor as a temperature sensor , its measurement range between 0 100 , with a resolution of 0.1 degrees Celsius and the error is less than 1 d

6、egree Celsius ; using the relay as a weak control the strong electric output. As temperature control system, it will detect the temperature , single-chip control and weak control technology bined with strong power , so as to achieve a constant temperature control system. This design can not only set

7、 the target temperature of the upper and lower limits , and when the actual temperature is not higher than the target set temperature limits when the relay a pull start heating lights , buzzer and lights, when the temperature is not lower than set the target temperature limit , when a broken lamp re

8、lay stops heating , while the relay pull two lights began to cool , the buzzer sounds and lights.Keywords:51 microcontroller;temperature control system;DS18B20 temperature sensor-. z.-. z.目 錄 TOC o 1-3 h z u HYPERLINK l _Toc386651240摘要 PAGEREF _Toc386651240 h IHYPERLINK l _Toc386651241Abstract PAGER

9、EF _Toc386651241 h IIHYPERLINK l _Toc3866512421 緒論 PAGEREF _Toc386651242 h 1HYPERLINK l _Toc3866512431.1 課題背景 PAGEREF _Toc386651243 h 1HYPERLINK l _Toc3866512441.2 研究的目的和意義PAGEREF _Toc386651244 h 1HYPERLINK l _Toc3866512451.3 本文研究的主要內(nèi)容 PAGEREF _Toc386651245 h 1HYPERLINK l _Toc3866512461.4 本文的章節(jié)安排 PA

10、GEREF _Toc386651246 h 1HYPERLINK l _Toc3866512472 方案選擇 PAGEREF _Toc386651247 h2HYPERLINK l _Toc3866512482.1 溫度測量局部 PAGEREF _Toc386651248 h 2HYPERLINK l _Toc3866512492.2 主控局部 PAGEREF _Toc386651249 h 2HYPERLINK l _Toc3866512502.3 顯示局部 PAGEREF _Toc386651250 h 2HYPERLINK l _Toc3866512512.4 數(shù)據(jù)掉電存儲局部 PAGE

11、REF _Toc386651251 h 3HYPERLINK l _Toc3866512522.5 弱電控制強(qiáng)電局部 PAGEREF _Toc386651252 h 3HYPERLINK l _Toc3866512532.6 控制算法分析 PAGEREF _Toc386651253 h 3HYPERLINK l _Toc3866512543 系統(tǒng)設(shè)計(jì)PAGEREF _Toc386651254 h 5HYPERLINK l _Toc3866512553.1 硬件設(shè)計(jì) PAGEREF _Toc386651255 h 5HYPERLINK l _Toc3866512563.1.1 中央控制器設(shè)計(jì) P

12、AGEREF _Toc386651256 h 5HYPERLINK l _Toc3866512573.1.2 數(shù)據(jù)掉電保護(hù)電路 PAGEREF _Toc386651257 h 6HYPERLINK l _Toc3866512583.1.3 鍵盤電路 PAGEREF _Toc386651258 h 8HYPERLINK l _Toc3866512593.1.4 加熱器控制電路 PAGEREF _Toc386651259 h 8HYPERLINK l _Toc3866512603.1.5 溫度測量芯片DS18B20 PAGEREF _Toc386651260 h 9HYPERLINK l _Toc

13、3866512613.1.6 1602LCD顯示電路 PAGEREF _Toc386651261 h 11HYPERLINK l _Toc3866512623.2 軟件設(shè)計(jì) PAGEREF _Toc386651262 h 12HYPERLINK l _Toc3866512633.2.1 主程序 PAGEREF _Toc386651263 h 13HYPERLINK l _Toc3866512643.2.2 溫度讀取子程序 PAGEREF _Toc386651264 h 13HYPERLINK l _Toc386651265上下限溫度比擬子程序 PAGEREF _Toc386651265 h 1

14、3HYPERLINK l _Toc3866512663.2.4 AT24C02掉電保護(hù)子程序 PAGEREF _Toc386651266 h 14HYPERLINK l _Toc386651267溫度計(jì)算子程序 PAGEREF _Toc386651267 h 14HYPERLINK l _Toc3866512683.2.6 溫度數(shù)據(jù)顯示子程序 PAGEREF _Toc386651268 h 15HYPERLINK l _Toc3866512693.3 測試及分析 PAGEREF _Toc386651269 h 15HYPERLINK l _Toc3866512704 設(shè)計(jì)總結(jié) PAGEREF

15、_Toc386651270 h 16HYPERLINK l _Toc386651271參考文獻(xiàn) PAGEREF _Toc386651271 h 17HYPERLINK l _Toc386651272致謝 PAGEREF _Toc386651272 h 18HYPERLINK l _Toc386651273附錄A C語言源程序 PAGEREF _Toc386651273 h19-. z.-. z.1 緒論1.1 課題背景隨著社會的進(jìn)步和工業(yè)的快速開展,在工業(yè)生產(chǎn)過程中以及日常生活中,都對各種溫度、壓力、流量以及液位這四種過程變量有著更高的要求。其中,溫度的過程變量是最為重要,也是應(yīng)用最為廣泛的。

16、在很多地方,都需要用到對溫度的控制。然而,使用常規(guī)的方法來進(jìn)展控制是沒有多少開展?jié)摿Φ?,而且還不能夠滿足用戶所想要的性能要求。因此,本設(shè)計(jì)將利用51單片機(jī)和溫度傳感器來設(shè)計(jì)一個(gè)恒溫控制系統(tǒng)。1.2 研究的目的和意義恒溫控制系統(tǒng)的設(shè)計(jì),可以滿足較高的性能要求,具有控制方便、簡單和靈活性大、降低消耗、控制本錢等優(yōu)點(diǎn),而且可以大幅度提高被測溫度的技術(shù)指標(biāo),從而能夠大大提高產(chǎn)品的質(zhì)量和數(shù)量,從而提高生產(chǎn)效率。為了能夠?qū)囟葌鞲衅饔羞M(jìn)一步的認(rèn)識和了解,研究其用法與用途。因此,本人利用51單片機(jī)再結(jié)合溫度傳感器技術(shù)而設(shè)計(jì)了這一恒溫控制系統(tǒng)。本設(shè)計(jì)適用*圍比擬廣,不但可以作為工業(yè)鍋爐的溫度控制還能夠用于室內(nèi)

17、監(jiān)控系統(tǒng)、大棚恒溫控制系統(tǒng)、水溫控制系統(tǒng)等等。課題主要任務(wù)是完成恒溫控制,利用單片機(jī)實(shí)現(xiàn)溫度在一定*圍內(nèi)實(shí)現(xiàn)恒溫且具有操作方便,控制靈活的優(yōu)點(diǎn)。1.3 本文研究的主要內(nèi)容本文簡單介紹了溫度智能控制系統(tǒng)的歷史開展,重點(diǎn)介紹如何用單片機(jī)和溫度傳感器實(shí)現(xiàn)恒溫控制系統(tǒng)的設(shè)計(jì)和制作,并且分析其算法。并通過KeilC編譯軟件來對設(shè)計(jì)的程序進(jìn)展仿真調(diào)試,從而實(shí)現(xiàn)本次畢業(yè)設(shè)計(jì)。本文重點(diǎn)局部主要表達(dá)在對單片機(jī)最小系統(tǒng)的設(shè)計(jì),包括實(shí)時(shí)溫度測量電路的設(shè)計(jì),單片機(jī)時(shí)鐘電路的設(shè)計(jì),單片機(jī)復(fù)位電路的設(shè)計(jì),掉電保護(hù)數(shù)據(jù)電路的設(shè)計(jì),鍵盤輸入電路的設(shè)計(jì),LCD顯示電路的設(shè)計(jì),弱電控制強(qiáng)電的設(shè)計(jì)等。以及這些電路工作的各個(gè)子程序。

18、本文重點(diǎn)強(qiáng)調(diào)的是原理和實(shí)用性,原理結(jié)合實(shí)例,綜合分析了恒溫控制系統(tǒng)的工作原理和實(shí)現(xiàn)方法。1.4 本文的章節(jié)安排本文分為3章:第1章是緒論,作為引子,介紹文章用到的一些簡單概念,介紹恒溫智能控制系統(tǒng)的歷史背景,應(yīng)用以及各種工業(yè)傳感器的其它一些知識,說明恒溫控制系統(tǒng)的應(yīng)用以及本文的意義。第2章為關(guān)鍵技術(shù),介紹測量電路、主控電路、顯示電路等各個(gè)方案的優(yōu)缺點(diǎn),并從幾個(gè)方案中選擇一個(gè)最優(yōu)的方案進(jìn)展系統(tǒng)設(shè)計(jì)。第3章為電路設(shè)計(jì),分為硬件設(shè)計(jì)和軟件設(shè)計(jì)及測試結(jié)果,電路的硬件設(shè)計(jì),包括AT89C52單片機(jī)電路、鍵盤電路、加熱器控制電路、溫度測量電路、LCD1602顯示電路等。程序設(shè)計(jì)主要介紹恒溫控制系統(tǒng)的主程序

19、和各個(gè)子程序,子程序包括:讀取溫度子程序、溫度上下限比擬子程序、溫度計(jì)算子程序、顯示溫度數(shù)據(jù)子程序等。簡要介紹了測試恒溫控制系統(tǒng)的測試方法和測試結(jié)果。2方案選擇2.1 溫度測量局部溫度測量電路設(shè)計(jì)可以采用AD590溫度傳感器,溫度*圍在-55+150之間,精度較高,在溫度*圍內(nèi)非線性誤差在0.3內(nèi)。AD590可以承受44V正向電壓和20V反向電壓,因而器件反接也不會損壞,使用可靠。它能夠在只有直流電源的環(huán)境下工作,無需進(jìn)展線性校正,使用方便,接口簡單。和電壓輸出型相比,它有很強(qiáng)的抗外界干擾能力,測量信號可遠(yuǎn)傳百余米。但是51單片機(jī)沒有A/D接口,如果采用AD590就要增加硬件本錢。溫度測量電路

20、設(shè)計(jì)可以采用DS18B20溫度傳感器,DS18B20數(shù)字溫度傳感器是DALLAS公司生產(chǎn)的單總線器件,它具有線路簡單,體積小的特點(diǎn)4;該芯片直接向單片機(jī)傳輸數(shù)字信號,便于單片機(jī)處理及控制。本制作的最大特點(diǎn)之一就是直接采用溫度傳感器對溫度進(jìn)展測量,使電路更簡單操作更方便。因此,本設(shè)計(jì)采用溫度傳感器DS18B20進(jìn)展溫度測量,表達(dá)了設(shè)計(jì)制作的集成化趨勢。使總體設(shè)計(jì)電路更簡潔,有效地減少了一些不必要的干擾,提高精準(zhǔn)度。2.2 主控局部設(shè)計(jì)中采用AT89C52是一個(gè)低電壓,高性能CMOS 8位單片機(jī),它除具有了89C51單片機(jī)所具有的優(yōu)點(diǎn)外,AT89C52單片機(jī)的內(nèi)部 RAM 存儲器還擴(kuò)展為 256

21、字節(jié),相比89C51單片機(jī)的容量增大了;AT89C52單片機(jī)的內(nèi)部FLASH PERAM 也增加1倍,到達(dá)8K。額外在89C51單片機(jī)的根底上還多了一個(gè)定時(shí)器/計(jì)數(shù)器T2。且價(jià)格廉價(jià),再編程方便,在工業(yè)控制中有廣泛的應(yīng)用,因此在本次畢業(yè)設(shè)計(jì)中采用AT89C52作為主控器。2.3 顯示局部顯示電路設(shè)計(jì)中可以采用LED數(shù)碼管顯示器件來作為顯示模塊,然而LED不同位顯示的時(shí)間間隔局限性較大,間隔太短,由于發(fā)光二極管從導(dǎo)通到發(fā)光有一定的延時(shí),使導(dǎo)通時(shí)間太短,發(fā)光太弱沒有方法看清。間隔太長,由于要受到臨界閃爍頻率的限制,時(shí)間越長,占用CPU時(shí)間也越多。它的優(yōu)點(diǎn)是LED數(shù)碼管價(jià)格廉價(jià),顯示清晰并且編程較簡

22、單。由于選用數(shù)碼管顯示會占用許多CPU的時(shí)間所以我沒有采用它。顯示電路設(shè)計(jì)中也可以采用液晶顯示器件作為顯示模塊,它具有體積小,功耗低,顯示內(nèi)容豐富等特點(diǎn)。在單片機(jī)系統(tǒng)中使用LCD液晶顯示器件作為顯示輸出模塊有以下優(yōu)點(diǎn):(1)數(shù)字式接口:LCD1602液晶顯示器一般采用數(shù)字式的接口,使用起來更加簡單快捷。(2)體積小,重量輕。(3)功率消耗?。合啾萀ED數(shù)碼管顯示器件LCD1602液晶顯示器占用CPU時(shí)間少,功率消耗比其它顯示器要小。(4)顯示效果好:在收到信號后,LCD1602液晶顯示器上的每一個(gè)點(diǎn)都將保持原有的色彩和亮度,使其恒定發(fā)光,屏幕不會出現(xiàn)閃爍現(xiàn)象。1602型LCD顯示模塊具備這么多

23、優(yōu)點(diǎn),所以這次設(shè)計(jì)采用了1602LCD作為顯示模塊。2.4數(shù)據(jù)掉電存儲局部數(shù)據(jù)掉電存儲電路在很多地方都是需要用到的,比方,電子日歷等一些需要電源的電子產(chǎn)品,如果沒有設(shè)置數(shù)據(jù)掉電保護(hù)電路,則在突然掉電后,它的數(shù)據(jù)將得不到保護(hù),就會自動回到初始狀態(tài)的數(shù)據(jù)設(shè)置,在下一次通電時(shí)用戶需要再一次的去設(shè)置各種數(shù)據(jù),增加了用戶的操作,使整個(gè)產(chǎn)品變得不適用,然而數(shù)據(jù)掉電存儲電路設(shè)計(jì)中采用I2C總線式串行器件,它有體積小、抗干擾、低功耗等特點(diǎn),而且能夠完美的解決上面所提到的種種問題。所以本次設(shè)計(jì)選用AT24C02芯片作為數(shù)據(jù)掉電存儲芯片。2.5 弱電控制強(qiáng)電局部畢業(yè)設(shè)計(jì)中有一局部電路是弱電控制強(qiáng)電的,它的作用是用

24、單片機(jī)的輸出信號去控制繼電器的斷開與吸合,然后把繼電器的控制端接在電熱絲或壓縮機(jī)上。在設(shè)計(jì)中用繼電器作為弱電控制強(qiáng)電輸出,其實(shí)還可以用可控硅作為弱電控制強(qiáng)電輸出。常用的繼電器有電磁繼電器、固體繼電器、舌簧繼電器等幾種,然而在實(shí)際應(yīng)用的時(shí)候要根據(jù)實(shí)際的情況來做出選擇,用途不一樣,所選擇的繼電器也不一樣。如何選擇適宜的繼電器是關(guān)鍵。下面簡要介紹幾種繼電器的工作原理:1電磁繼電器:它主要是利用電磁鐵鐵芯與銜鐵間產(chǎn)生的吸力作用來使電路吸合通和斷開的一種電氣繼電器。2固體繼電器:它是使電源的輸入和輸出相隔離從而到達(dá)通、斷的效果的一種繼電器。3舌簧繼電器:它是利用觸電簧片和銜鐵磁路在一個(gè)密封的空間內(nèi)產(chǎn)生雙

25、重作用的舌簧動作來使電路通、斷或者轉(zhuǎn)換的一種繼電器因?yàn)殡娮邮袌鲭姶爬^電器比擬廉價(jià)而且控制簡單,因此在本設(shè)計(jì)中采用電磁繼電器作為弱電控制強(qiáng)電輸出。電磁繼電器參數(shù)為:輸入為5V,可以和單片機(jī)接口相匹配,輸出額定驅(qū)動電流為10A、驅(qū)動電壓為250V,能滿足我的設(shè)計(jì)要求,而且額定驅(qū)動電流和電壓越大,價(jià)格越高。51單片機(jī)的驅(qū)動電流小,不能直接驅(qū)動電磁繼電器工作,還要在電路設(shè)計(jì)中加上繼電器的驅(qū)動電路。繼電器的驅(qū)動電路可以采用ULN2803作為繼電器驅(qū)動電路,因?yàn)樗哂泻芏鄡?yōu)點(diǎn)。ULN2803,是采用AP=DIP18,AFW=SOL18封裝方式的八路NPN達(dá)林頓連接晶體管陣系列特別適用于低邏輯電平數(shù)字電路諸

26、如TTL, CMOS或PMOS/NMOS和較高的電流/電壓要求之間的接口,廣泛應(yīng)用于計(jì)算機(jī),工業(yè)用和消費(fèi)類產(chǎn)品中的燈、繼電器、打印錘或其它類似負(fù)載中;所有器件具有集電極開路輸出和續(xù)流箱位二極管,用于抑制躍變。ULN2803的設(shè)計(jì)與標(biāo)準(zhǔn)TTL系列兼容,而ULN2804 最適于6至15伏高電平CMOS或PMOS18。繼電器的驅(qū)動電路也可以采用三極管驅(qū)動,它具有電路簡單,抗干擾能力強(qiáng)等優(yōu)點(diǎn)。2.6控制算法分析下面先簡要描述一下PID算法:PID是工業(yè)控制上的一種常見的、實(shí)用性強(qiáng)的控制算法,其中P表示的是比例,I表示的是積分,D表示的是微分。以溫度控制的PID程序?yàn)槔?其公式為:Uo(N)=P*E(

27、N)+I*E(N)+E(N-1)+.+E(0)+D*E(N)-E(N-1)E-表示的是誤差值。P-表示的是比例,它可以提高主機(jī)的響應(yīng)速度并且減小靜態(tài)誤差值,但是如果P的值太大也是會增大超調(diào)量以及穩(wěn)定時(shí)間的,因此在應(yīng)用的時(shí)候要注意其值得大小適宜。I表示的是積分,它的作用與P大致一樣,然而它確可以使靜態(tài)誤差值小到0。D-表示的是微分,它的作用與P和I的剛好相反,它是為了減小超調(diào)和穩(wěn)定時(shí)間的。然而,在實(shí)際應(yīng)用中我們要綜合性的對P、I、D進(jìn)展考慮,在通常情況下先把I、D的值設(shè)定為零,這樣就方便我們把P的值調(diào)好,在調(diào)好I的值,把誤差降到最低,這時(shí)我們再把D的值加進(jìn)去,這是一個(gè)繁雜的過程要有耐心反復(fù)調(diào)試,

28、這樣才能到達(dá)較好的結(jié)果??刂撇煌膶ο笏捎玫乃惴ㄒ彩遣煌?,而且在對P、I、D進(jìn)展調(diào)試的時(shí)候難度差異也是比擬大的。因此在應(yīng)用時(shí)要結(jié)合實(shí)際的情況靈活運(yùn)用。本次畢業(yè)設(shè)計(jì)是對繼電器進(jìn)展控制因此沒有采用上述的PID控制算法,但是這種控制算法在工業(yè)生產(chǎn)中得到了廣泛的應(yīng)用。而使采用了反應(yīng)式溫度控制系統(tǒng),組成局部見下列圖。其中數(shù)字控制器的功能由51單片機(jī)AT89C52來實(shí)現(xiàn)。圖2-1反應(yīng)式控制系統(tǒng)方框圖綜上所述我設(shè)計(jì)的恒溫控制系統(tǒng)實(shí)際采用電路方案如下列圖:圖2-2總體設(shè)計(jì)方框圖-. z.3 系統(tǒng)設(shè)計(jì)3.1 硬件設(shè)計(jì)3.1.1中央控制器設(shè)計(jì)本設(shè)計(jì)中,采用了AT89C52單片機(jī)作為中央控制器。從圖3-1中,我

29、們可以看出AT89C52單片機(jī)內(nèi)部主要包括了CPU,定時(shí)器/計(jì)數(shù)器,I/0接口等多個(gè)局部,然而每一個(gè)局部都是不可缺少的,都有著各自的作用。下列圖是AT89C52單片機(jī)的內(nèi)部構(gòu)造總框圖。圖3-1 AT89C52單片機(jī)內(nèi)部構(gòu)造框圖P3口除可作為一般的I/O口線外,更重要的用途是它的第二功能,如表3-1所示:表3-1 P3口第二功能端口引腳第二功能P3.0R*D(串行輸入口)P3.1T*D串行輸出口P3.2/INT0外中斷0P3.3/INT1外中斷1P3.4T0定時(shí)/計(jì)數(shù)器0P3.5T1定時(shí)/計(jì)數(shù)器1P3.6/WR外部數(shù)據(jù)存儲器寫選通P3.7/RD外部數(shù)據(jù)存儲器讀選通下列圖是這次畢業(yè)設(shè)計(jì)中的單片機(jī)設(shè)

30、計(jì)原理圖:圖3-2 AT89C52 外圍電路圖圖中單片機(jī)的P0口接在LCD1602液晶顯示器的數(shù)據(jù)端口,P25口、P26口、P27口分別接LCD1602液晶顯示器的RS口、R/W口、EN口。單片機(jī)的P10口、P11口、P12口、P13口分別接上一個(gè)按鍵,這樣單片機(jī)就有四個(gè)輸入設(shè)備,分別用來進(jìn)展溫度上下限參數(shù)的設(shè)置。單片機(jī)的P20口、P21口分別用于控制一路繼電器,一路用于控制電熱絲加熱,一路用于控制壓縮機(jī)降溫。單片機(jī)P37口接在溫度傳感器DS18B20的數(shù)據(jù)端口,P36口用于控制蜂鳴器和LED報(bào)警指示燈。 數(shù)據(jù)掉電保護(hù)電路 數(shù)據(jù)掉電保護(hù)電路,是為了保護(hù)整個(gè)設(shè)計(jì)的系統(tǒng)在工作中所設(shè)置的數(shù)據(jù)在人為斷

31、電或者突然地異常斷電后能夠被保存,使系統(tǒng)在下次運(yùn)行時(shí)不用重新設(shè)置,減少了人工操作,讓整個(gè)設(shè)計(jì)系統(tǒng)更簡單、方便。數(shù)據(jù)掉電保護(hù)電路設(shè)計(jì)中AT24C02芯片硬件電路及與單片機(jī)接口如圖3-3:圖3-3 AT24C02與單片機(jī)接口電路圖由上圖可以看出,本設(shè)計(jì)的數(shù)據(jù)掉電保護(hù)電路是非常簡單的,其中AT24C02的1、2、3三個(gè)腳分別是A0、A1、A2三條地址線,都是用來接地的,主要作用是用來確定AT24C02芯片的硬件地址;8腳和4腳分別是為AT24C02芯片提供+5V電源以及接地的,不然芯片沒有電源不能正常工作;5腳SDA是作為串行數(shù)據(jù)的輸入/輸出,在本設(shè)計(jì)電路中與單片機(jī)的P2.4口相連接;6腳SCL是作

32、為串行時(shí)鐘的輸入線,在本設(shè)計(jì)電路中是與單片機(jī)的P2.3口連接;在+5V電源與5腳、6腳間各需要接一個(gè)10K的上拉電阻;而7腳則與1、2、3、三個(gè)腳一樣需要接地。-. z. 鍵盤電路本次恒溫控制系統(tǒng)設(shè)計(jì)中,除了復(fù)位按鍵有專門的電路及專一的功能外,還需要四個(gè)設(shè)置恒溫上下限*圍的按鍵,這四個(gè)按鍵的電路我們稱為鍵盤電路,它們都是以開關(guān)狀態(tài)的形式來工作的。本系統(tǒng)采用的是非編碼鍵盤硬件電路,它的電路非常簡單。當(dāng)有鍵按按下時(shí),系統(tǒng)開場執(zhí)行一個(gè)時(shí)長為10ms的延時(shí)程序,然后再來判斷該鍵的現(xiàn)在的電平狀態(tài),如果現(xiàn)在呈現(xiàn)出來的是閉合狀態(tài)電平則系統(tǒng)就會認(rèn)為有按鍵按按下。本設(shè)計(jì)中的四個(gè)設(shè)置按鍵的一端接地,而另一端分別與

33、AT89C52單片機(jī)的P10,P11,P12,P13。具體如下列圖3-4所示:圖3-4 按鍵與單片機(jī)接口電路圖 加熱器控制電路本設(shè)計(jì)采用的AT89C52單片機(jī)的驅(qū)動電流小,不能直接驅(qū)動電磁繼電器工作,還要在電路設(shè)計(jì)中加上繼電器的驅(qū)動電路。本設(shè)計(jì)從本錢及電路方面考慮,決定采用三極管來作為繼電器的驅(qū)動電路。三極管驅(qū)動繼電器控制電路如圖3-5所示:圖3-5三極管驅(qū)動繼電器控制電路圖 溫度測量芯片DS18B20本次畢業(yè)設(shè)計(jì)中采用的是DS18B20溫度傳感器,它是一種集成芯片,能減小干擾,提高精準(zhǔn)度,簡化電路,它可以直接讀出被測物的溫度,并根據(jù)用戶要*現(xiàn)912位的數(shù)字值讀數(shù)方式,其性能特點(diǎn)如下:獨(dú)特的單

34、線接口僅需要一個(gè)端口引腳進(jìn)展通信;多個(gè)DS18B20溫度傳感器可以并聯(lián)在一起使用,檢測多個(gè)地方的溫度;無須外部器件;允許電壓*圍在3.05.5之間,可以采用數(shù)據(jù)線供電;零待機(jī)功耗;溫度以9或12位數(shù)字;用戶可定義報(bào)警設(shè)置;電源極性接反時(shí),不會損壞元器件,只是無法正常工作;它的內(nèi)部構(gòu)造框圖如圖3-6所示。圖3-6 DS18B20溫度傳感器內(nèi)部構(gòu)造框圖DS18B20溫度傳感器中的高速暫存RAM的構(gòu)造如表3-2所示。表3-2 DS18B20溫度傳感器高速暫存RAM的構(gòu)造溫度 LSB溫度 MSBTH用戶字節(jié)1TL用戶字節(jié)2配置存放器保存保存保存CRCTMR1R011111-. z.由表3-3可見,DS

35、18B20溫度傳感器在使用的過程中需要不短的轉(zhuǎn)換時(shí)間,而且當(dāng)分辨率越高的情況下,所需要的轉(zhuǎn)換時(shí)間就會越長。因此,在實(shí)際應(yīng)用中需要考慮這兩個(gè)因素。表3-3是一局部溫度值對應(yīng)的二進(jìn)制溫度數(shù)據(jù)。表3-3 DS18B20溫度轉(zhuǎn)換時(shí)間表R1R0分辨率/位溫度最大轉(zhuǎn)向時(shí)間/MS00993.750110187.510113751112750本設(shè)計(jì)中DS18B20溫度傳感器完成溫度轉(zhuǎn)換后,就會進(jìn)展溫度比擬,把DS18B20溫度傳感器測得的溫度值T與用戶設(shè)定在RAM中的TH、TL*圍作比擬。當(dāng)發(fā)生TTH或者TTL的情況下,則對主機(jī)發(fā)出的報(bào)警命令作出相應(yīng)的響應(yīng)。在DS18B20溫度傳感器中,低溫度系數(shù)晶振的振蕩頻

36、率用來產(chǎn)生固定頻率的脈沖信號并送給計(jì)數(shù)器1;高溫度系數(shù)晶振產(chǎn)生的振蕩頻率所產(chǎn)生的信號作為計(jì)數(shù)器2的脈沖輸入。下面是一局部溫度對應(yīng)值表格3-4。表3-4一局部溫度對應(yīng)值表溫度/二進(jìn)制表示十六進(jìn)制表示+1250000 0111 1101 000007D0H+850000 0101 010100000550H+25.06250000 0001 1001 00010191H+10.1250000 0000 1010 001000A2H+0.50000 0000 0000 10000008H00000 0000 0000 00000000H-0.51111 1111 1111 1000FFF8H-10.

37、1251111 1111 0101 1110FF5EH-25.06251111 1110 0110 1111FE6FH-551111 1100 1001 0000FC90H本設(shè)計(jì)中DS18B20溫度傳感器的電路設(shè)計(jì)非常簡單,主要是在3腳加了一個(gè)+5V的電源和一個(gè)10K的電阻。具體的電路及與單片機(jī)的接口如圖3-7。圖3-7 DS18B20溫度傳感器硬件電路以及與單片機(jī)的接口電路圖3.1.6 1602LCD顯示電路隨著用戶的需要,液晶顯示模塊已經(jīng)成為最常用的顯示器件。LCD1602液晶顯示模塊的體積小而且功耗低最重要的是它顯示的內(nèi)容比其他顯示模塊豐富。外型尺寸:80*36*13L*W*H2.接口信

38、號說明表3-5 LCD1602顯示器的引腳介紹序號符號引腳名稱序號符號引腳名稱1VSS電源地9D2Data I/O2VDD電源正極10D3Data I/O3VL液晶顯示偏壓信號11D4Data I/O4RS數(shù)據(jù)/命令選擇端12D5Data I/O5R/W讀寫選擇端13D6Data I/O6E使能信號14D7Data I/O7D0Data I/O15BLA背光源正極8D1Data I/O16BLK背光源負(fù)極3.主要技術(shù)參數(shù)表3-6 LCD1602液晶顯示器的主要技術(shù)參數(shù)顯示容量16*2個(gè)字符芯片工作電壓4.55.5V芯片工作電流2.0mA模塊最正確工作電壓5.0V尺寸大小4數(shù)據(jù)指針設(shè)置AT89C

39、52單片機(jī)內(nèi)部設(shè)有一個(gè)數(shù)據(jù)地址指針,用戶可以根據(jù)需要通過它們訪問RAM。表3-7 數(shù)據(jù)指針設(shè)置5其它設(shè)置表3-8 其它設(shè)置6LCD1602本次電路設(shè)計(jì)圖如下:圖3-8 LCD1602硬件電路以及與單片機(jī)接口電路圖圖中單片機(jī)的P0口接在LCD1602液晶顯示器數(shù)據(jù)端口,P25、P26、P27分別接LCD1602的RS、R/W、EN。LCD1602液晶顯示器1腳和16腳接地,2腳和15腳接+5V電源。VL為LCD比照度調(diào)節(jié)端口。通過改變10K電位器阻值可以改變顯示屏的比照度。3.2 軟件設(shè)計(jì)軟件設(shè)計(jì)是一個(gè)系統(tǒng)的核心,就像人吃的食物一樣,如果沒有它,則就什么都做不了,有的就只是一個(gè)空殼,因此,本設(shè)計(jì)

40、中為了到達(dá)恒溫控制的目的,也設(shè)計(jì)了相應(yīng)的軟件程序,整個(gè)程序的設(shè)計(jì)分為了主程序和子程序,下面我們就介紹一下各個(gè)程序所存在的目的以及他的流程圖和局部源程序。 主程序本設(shè)計(jì)中主程序的主要功能是實(shí)時(shí)顯示溫度、讀取并處理DS18B20溫度傳感器所測得的當(dāng)前溫度值,DS18B20溫度傳感器每10ms重新進(jìn)展一次測量。其程序流程見圖3-9所示。初始化DS18B200CCH跳過讀序號列號的操作初始化DS18B200CCH跳過讀序號列號的操作44H 啟動溫度轉(zhuǎn)換0CCH 跳過讀序號列號的操作0BEH 讀取溫度暫存器9字節(jié)讀取溫度低8位、高8位返回調(diào)用初始化DS18B20子程序DS18B20初始化成功單片機(jī)各個(gè)端

41、口及顯示初始化NY調(diào)用讀取溫度值子程序調(diào)用顯示溫度值子程序調(diào)用實(shí)際溫度值和設(shè)置的上下限比擬子程序調(diào)用鍵盤掃描子程序調(diào)用讀AT24C02子程序圖3-9主程序流程圖圖3-10讀出溫度流程圖 溫度讀取子程序溫度讀取子程序主要是讀出RAM中的字節(jié),并校驗(yàn)CRC,當(dāng)有不正確時(shí)則不進(jìn)展溫度數(shù)據(jù)的改寫。其程序流程圖如圖3-10所示。上下限溫度比擬子程序上下限溫度比擬子程序時(shí)用來判斷當(dāng)前溫度是否在設(shè)定溫度*圍內(nèi),假設(shè)低于設(shè)定的溫度則加熱繼電器吸合,進(jìn)展溫度升高,假設(shè)高于設(shè)定的溫度則加熱繼電器斷開,降溫繼電器吸合,開場降溫。具體如下列圖所示:溫度是否超過*圍溫度是否超過*圍是超溫還是低溫返回返回返回吸合降溫繼電

42、器吸合加熱繼電器Y超溫Y低溫N進(jìn)入比擬子程序圖3-11 上下限溫度比擬流程圖AT24C02掉電保護(hù)子程序AT24C02掉電保護(hù)子程序是負(fù)責(zé)初始化AT24C02芯片,然后對芯片進(jìn)展數(shù)據(jù)的讀寫。當(dāng)單片機(jī)設(shè)置好溫度的上下限值后,按鍵處理子程序調(diào)用數(shù)據(jù)存儲子程序,對數(shù)據(jù)進(jìn)展掉電保護(hù)。如果*種原因斷電了,下次開機(jī)上電后程序自動調(diào)用數(shù)據(jù)讀子程序把溫度的上下限值放入相應(yīng)RAM存儲。其程序流程見圖312所示。 圖3-1224C02掉電保護(hù)子程序溫度計(jì)算子程序溫度計(jì)算子程序是將從RAM中讀取的值進(jìn)展BCD碼的轉(zhuǎn)換運(yùn)算并進(jìn)展溫度值正負(fù)的判定,其程序流程圖如圖3-13所示。圖3-13溫度計(jì)算子程序流程圖圖3-14溫

43、度數(shù)據(jù)顯示子程序流程圖 溫度數(shù)據(jù)顯示子程序溫度數(shù)據(jù)顯示子程序主要是對顯示器顯示數(shù)據(jù)進(jìn)展刷新,當(dāng)最高=0時(shí),則將符號顯示位移入下一位。其程序流程圖如圖3-14。3.3 測試及分析恒溫控制系統(tǒng)因?yàn)樯婕暗?20V強(qiáng)電,所以沒有加上電熱絲加熱,是用繼電器的通與斷來模擬加熱與不加熱,實(shí)際的控制效果和連接上電熱絲效果一樣。測試環(huán)境為室內(nèi)常溫度。測試儀器為標(biāo)準(zhǔn)數(shù)字溫度計(jì)量程0-100攝氏度由測試知,溫控報(bào)警電路的輸出與實(shí)際溫度值誤差不大于0.5度。另外設(shè)置好溫度的上下限值,當(dāng)溫度低于下限值時(shí)繼電器吸合表示開場加熱同時(shí)蜂鳴器響提示溫度過低,當(dāng)溫度高于上限值時(shí)繼電器斷開表示停頓加熱同時(shí)蜂鳴器響提示溫度過高。測試

44、效果明顯,到達(dá)了預(yù)期的設(shè)計(jì)效果-. z.4設(shè)計(jì)總結(jié)通過本次對恒溫控制系統(tǒng)的設(shè)計(jì)制作,使我在各個(gè)方面都得到了進(jìn)一步的提升,在整個(gè)設(shè)計(jì)制作過程中,一定要注意對每一個(gè)細(xì)小的環(huán)節(jié)都做到認(rèn)真的檢查,只有這樣才能夠確保制作能夠順利完成。然而一般在出現(xiàn)錯(cuò)誤后的檢查順序?yàn)椋涸韴DPCB圖裝配情況焊接工藝,一步一步的仔細(xì)檢查,要有耐心。從整體來說這是一個(gè)復(fù)雜枯燥的過程,但是,只要細(xì)心慎重,反復(fù)的檢查,也就不是什么太大的問題。本次畢業(yè)設(shè)計(jì)的制作歷時(shí)好幾個(gè)星期,從一開場確實(shí)定題目,到后來的不斷查閱資料查找相關(guān)文獻(xiàn)、理論學(xué)習(xí),再到近來的調(diào)試和測試過程,這一切的一切都使我在理論知識和動手能力上都得到進(jìn)一步的提升。在整個(gè)

45、的設(shè)計(jì)制作過程中我也不是一帆風(fēng)順的,也遇到過各種的問題,在這種時(shí)候,遇到的問題越多就應(yīng)該要越保持一個(gè)良好的心態(tài),心態(tài)很重要。我在遇到問題的時(shí)候一般都是先自己在網(wǎng)上查閱相關(guān)資料,翻閱相關(guān)的書籍,如果遇到這樣都還不能解決的問題時(shí),我就會請教一些我的朋友、同學(xué)、教師,就這樣再聯(lián)系書本理論知識積極地思考,所有的問題也都不再是問題,雖然在制作過程中不可防止地遇到很多問題,但是最后還是在教師以及同學(xué)的幫助下以及自己的努力下圓滿解決了這些問題,實(shí)現(xiàn)了整個(gè)系統(tǒng)的設(shè)計(jì)與最后調(diào)試,很好地完成了本次設(shè)計(jì)任務(wù)。經(jīng)過四年學(xué)習(xí)的積累,在已經(jīng)了解和掌握相關(guān)專業(yè)方面知識及其它各方面知識的情況下,我嚴(yán)肅認(rèn)真的完成了畢業(yè)設(shè)計(jì)。本

46、次設(shè)計(jì)制作在整個(gè)過程中我一次次的失敗,又一次次的重新開場,有時(shí)候真想放棄,最后還是堅(jiān)持了下來,在這一個(gè)充滿了挑戰(zhàn)性也伴隨挫折感,充滿了熱情又伴隨打擊的過程中,我逐漸成長,它不僅僅是一個(gè)對我四年學(xué)習(xí)情況和我動手能力的檢驗(yàn),它還是對我面對困難的心態(tài),做事的毅力和耐心的考驗(yàn)。在這個(gè)過程中我深深的感受到了做畢業(yè)設(shè)計(jì)的真正意義所在。參考文獻(xiàn)1徐愛鈞.單片機(jī)高級語言 C51 應(yīng)用程序設(shè)計(jì)M. :電子工業(yè),20022全國大學(xué)生電子設(shè)計(jì)競賽組委會編.第五屆全國大學(xué)生電子設(shè)計(jì)競賽獲獎作品選編(2001), :理工大學(xué),20033金偉正.單線數(shù)字溫度傳感器的原理與應(yīng)用 J.電子技術(shù)應(yīng)用.2000(6):30-45

47、4金發(fā)慶等編. 傳感器技術(shù)與應(yīng)用M.:機(jī)械工業(yè),20025林伸茂.8051單片機(jī)徹底研究根底篇M.:人民郵電 20046夏路易等.電路原理圖與電路板設(shè)計(jì)教程M.:希望電子 20027趙晶.Protel99高級應(yīng)用M.:人民郵電 20008李霞.秦建敏.*志棟 數(shù)字溫度傳感器DS18B20在冰情測報(bào)系統(tǒng)中的應(yīng)用 J .*理工大學(xué)學(xué)報(bào).2008(1):3-59M. Palumbo, C. Pearson, J. Nagel, M.C. Petty. A single chip multi-channel surface plasmon resonance imaging system. J. 20

48、03 : 5-1510樊建明.陳淵睿 基于數(shù)字溫度濕度傳感器的溫室多點(diǎn)測量系統(tǒng)設(shè)計(jì) J.傳感器與微系統(tǒng).2007(7):21-3011王俊杰等.DS18B20在糧倉測溫系統(tǒng)中的應(yīng)用 J.*輕工業(yè)學(xué)院學(xué)報(bào).200710:5-812顧振宇.*魯源.杜振輝 DS18B20接口的C語言程序設(shè)計(jì) J.單片機(jī)與嵌入式系統(tǒng)應(yīng)用.2002(7):5-17 13*勇.PROTEL 99SE 電路設(shè)計(jì)技術(shù)入門與應(yīng)用(第一版)M.:電子工業(yè),200214*和平.單片機(jī)原理及應(yīng)用M.*:*大學(xué),2002 15何力民編. 單片機(jī)高級教程M.:航空大學(xué),200016B.D. Theelen, A.C. Verschuer

49、en b, V.V. Reyes Su_arez c, M.P.J. Stevens a, A. Nunez. A scalable single-chip multi-processor architecture with on-chip RTOS kernel. J. 2003: 22-3017Jayanta Mukherjee, Manfred K. Lang b, S.K. Mitra. Demosaicing of images obtained from single-chip imaging sensors in YUV color space. J. 2005:13-1818b

50、aike.baidu./linkurl=09Zm*LBnQ*eDN*LyoRVyPJ8iBQr7qF3zVpdRHzFjDO5Lws13i3-FpGASfK*CV55_sG6pVwvoOFg7-3ED90oU-K#2致謝大學(xué)生活到這里即將劃上一個(gè)句號,而對我來說這是一個(gè)完畢但也是我人生的另一個(gè)開場。求學(xué)生涯在各位教師、同學(xué)、親友的大力支持下一直走到了現(xiàn)在,索然走得辛苦卻也收獲滿囊。在論文即將付梓之際,思緒萬千,心情久久不能平靜。我要把我的敬意和贊美獻(xiàn)給栽培我四年的母校和教師,是你們用汗水和知識哺育了我,從一個(gè)懵懂女生到一個(gè)懂知識、有素質(zhì)有理想的大學(xué)生,教師的孜孜教導(dǎo)讓我懂得了怎么樣去做人、做事

51、和學(xué)習(xí)思考。教師為我們營造了一個(gè)良好的學(xué)習(xí)氣氛。耳濡目染,潛移默化,我們的綜合素質(zhì)和能力也不斷的得到提高。我要感謝我的畢業(yè)設(shè)計(jì)指導(dǎo)教師,在實(shí)習(xí)工作過程中,一直以來對我們的關(guān)心和鼓勵(lì),并及時(shí)向我們轉(zhuǎn)達(dá)學(xué)校領(lǐng)導(dǎo)在各階段的工作安排,確保我們能按時(shí)返校順利完成畢業(yè)設(shè)計(jì)。在本課題在選題及設(shè)計(jì)過程中得到許教師的大力支持,教師屢次詢問課題設(shè)計(jì)進(jìn)程和結(jié)果,并指點(diǎn)迷津和錯(cuò)誤,幫助我開拓思路,教師細(xì)心查收論文,使我的論文層次清楚,重點(diǎn)突出,無明顯的錯(cuò)誤,確保順利過關(guān)。教師一絲不茍的作風(fēng),嚴(yán)謹(jǐn)*的態(tài)度,踏踏實(shí)實(shí)的精神,讓我對教師的感謝已經(jīng)找不到語言來表達(dá)。還要我的同學(xué)、朋友,是你們讓我的大學(xué)生活變得豐富多彩,有你們

52、的幫助,我遇到的問題和困難才游刃有余。我也要感謝我的父母,一直以來對我的支持和鼓勵(lì),那是我學(xué)習(xí)的動力,是你們含辛茹苦,省吃儉用供我上學(xué),讓我衣食無憂,安心學(xué)習(xí)。畢業(yè)之后我將走向工作崗位,那是我的另一個(gè)新的起跑線,有不同年齡的、有不同學(xué)歷的同事,也有像我一樣的其他學(xué)校的應(yīng)屆畢業(yè)生,我的大學(xué)路走的有點(diǎn)坎坷,但是我有信心,在社會劇烈的競爭中,我會不斷的學(xué)習(xí),補(bǔ)充自己,為自己的一席之地奮斗,我不會讓教師失望,不會讓父母失望,更不會讓自己失望。我再一次感謝大家一直以來對我的關(guān)心和幫助!謝謝大家!附錄A C語言源程序#include #include #include #define uchar unsi

53、gned char#define uint unsigned intsbit DQ = P37 ; /定義DS18B20端口DQ sbit BEEP=P36 ; /蜂鳴器驅(qū)動線sbit K1 = P10 ; /定義按鍵K1 sbit K2 = P11 ; /定義按鍵K2 sbit K3 = P12 ; /定義按鍵K3 sbit K4 = P13 ; /定義按鍵K4 sbit JD1 = P20 ; /定義繼電器1控制端口sbit JD2 = P21 ; /定義繼電器2控制端口bit presence ;/DS18B20是否正常標(biāo)志位sbit LCD_RS = P25 ; /定義LCD1602端

54、口 sbit LCD_RW = P26 ;sbit LCD_EN = P27 ;uchar code cdis1 = WENDU: . C ;uchar code cdis2 = TH:000 TL:000 ;uchar code cdis3 = DS18B20 ERR0R ;uchar code cdis4 = PLEASE CHECK ;unsigned char data temp_data2 = 0*00,0*00 ;unsigned char data display5 = 0*00,0*00,0*00,0*00,0*00 ;unsigned char data UP = 0*00;

55、unsigned char data DOWN = 0*00;unsigned char data baohu2 = 0*00,0*00 ;unsigned char data wendu = 0*00;unsigned char data TH3 = 0*00,0*00,0*00 ;unsigned char data TL3 = 0*00,0*00,0*00 ;unsigned char code ditab16 = 0*00,0*01,0*01,0*02,0*03,0*03,0*04,0*04, 0*05,0*06,0*06,0*07,0*08,0*08,0*09,0*09 ;void

56、beep() ; unsigned char code mytab8 = 0*0C,0*12,0*12,0*0C,0*00,0*00,0*00,0*00 ;#define delayNOP() ; _nop_() ;_nop_() ;_nop_() ;_nop_() ; ;/*/void delay1(int ms) unsigned char y ; while(ms-) for(y = 0 ; y250 ; y+) _nop_() ; _nop_() ; _nop_() ; _nop_() ; /*/*檢查LCD忙狀態(tài) */*lcd_busy為1時(shí),忙,等待。lcd-busy為0時(shí),閑,可

57、寫指令與數(shù)據(jù)。 */*/ bit lcd_busy() bit result ; LCD_RS = 0 ; LCD_RW = 1 ; LCD_EN = 1 ; delayNOP() ; result = (bit)(P0&0*80) ; LCD_EN = 0 ; return(result) ; /*寫指令數(shù)據(jù)到LCD */*RS=L,RW=L,E=高脈沖,D0-D7=指令碼。 */*/void lcd_wcmd(uchar cmd) while(lcd_busy() ; LCD_RS = 0 ; LCD_RW = 0 ; LCD_EN = 0 ; _nop_() ; _nop_() ; P0

58、 = cmd ; delayNOP() ; LCD_EN = 1 ; delayNOP() ; LCD_EN = 0 ; /*/*寫顯示數(shù)據(jù)到LCD */*RS=H,RW=L,E=高脈沖,D0-D7=數(shù)據(jù)。 */*/void lcd_wdat(uchar dat) while(lcd_busy() ; LCD_RS = 1 ; LCD_RW = 0 ; LCD_EN = 0 ; P0 = dat ; delayNOP() ; LCD_EN = 1 ; delayNOP() ; LCD_EN = 0 ; /* LCD初始化設(shè)定 */*/void lcd_init() delay1(15) ; l

59、cd_wcmd(0*01) ; /去除LCD的顯示內(nèi)容 lcd_wcmd(0*38) ; /16*2顯示,5*7點(diǎn)陣,8位數(shù)據(jù) delay1(5) ; lcd_wcmd(0*38) ; delay1(5) ; lcd_wcmd(0*38) ; delay1(5) ; lcd_wcmd(0*0c) ; /顯示開,關(guān)光標(biāo) delay1(5) ; lcd_wcmd(0*06) ; /移動光標(biāo) delay1(5) ; lcd_wcmd(0*01) ; /去除LCD的顯示內(nèi)容 delay1(5) ;/* 設(shè)定顯示位置 */*/void lcd_pos(uchar pos) lcd_wcmd(pos |

60、0*80) ; /數(shù)據(jù)指針=80+地址變量/*自定義字符寫入CGRAM */*/void writetab() unsigned char i ; lcd_wcmd(0*40) ; /寫CGRAM for (i = 0 ; i 0 ; i-) DQ = 0 ; / 給脈沖信號 dat = 1 ; DQ = 1 ; / 給脈沖信號 if(DQ) dat |= 0*80 ; Delay(4) ; return (dat) ;/* 寫一個(gè)字節(jié) */*/ WriteOneChar(unsigned char dat) unsigned char i = 0 ; for (i = 8 ; i 0 ; i

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論