數(shù)顯溫度控制器_第1頁
數(shù)顯溫度控制器_第2頁
數(shù)顯溫度控制器_第3頁
數(shù)顯溫度控制器_第4頁
數(shù)顯溫度控制器_第5頁
已閱讀5頁,還剩26頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、本科畢業(yè)論文(設計)LED數(shù)顯溫度控制器畢業(yè)設計(論文)原創(chuàng)性聲明和使用授權說明原創(chuàng)性聲明本人鄭重承諾:所呈交的畢業(yè)設計(論文),是我個人在指導教師的指 導下進行的研究工作及取得的成果。盡我所知,除文中特別加以標注和致謝 的地方外,不包含其他人或組織已經(jīng)發(fā)表或公布過的研究成果,也不包含我 為獲得及其它教育機構的學位或?qū)W歷而使用過的材料。對本研究提供過幫助和做出過貢獻的個人或集體,均已在文中作了明確的說明并表示 了謝意。作者簽名: 日 期:指導教師簽名: 日 期: 使用授權說明本人完全了解大學關于收集、保存、使用畢業(yè)設計(論文)的規(guī)定,即:按照學校要求提交畢業(yè)設計(論文)的印刷本和電子版本;學校

2、有 權保存畢業(yè)設計(論文)的印刷本和電子版,并提供目錄檢索與閱覽服務; 學??梢圆捎糜坝?、縮印、數(shù)字化或其它復制手段保存論文;在不以贏利為 目的前提下,學校可以公布論文的部分或全部內(nèi)容。作者簽名: 日 期:學位論文原創(chuàng)性聲明本人鄭重聲明:所呈交的論文是本人在導師的指導下獨立進行研究所取得 的研究成果。除了文中特別加以標注引用的內(nèi)容外,本論文不包含任何其他 個人或集體已經(jīng)發(fā)表或撰寫的成果作品。對本文的研究做出重要貢獻的個人 和集體,均已在文中以明確方式標明。本人完全意識到本聲明的法律后果由 本人承擔。作者簽名:日期: 年 月 日學位論文版權使用授權書本學位論文作者完全了解學校有關保留、 使用學位

3、論文的規(guī)定,同意學校 保留并向國家有關部門或機構送交論文的復印件和電子版,允許論文被查閱 和借閱。本人授權大學可以將本學位論文的全部或部分內(nèi)容編入有關數(shù)據(jù)庫進行檢索,可以采用影印、縮印或掃描等復制手段保存和匯編 本學位論文。涉密論文按學校規(guī)定處理。作者簽名:日期: 年 月 日導師簽名:日期: 年 月注意事項1設計(論文)的內(nèi)容包括:1)封面(按教務處制定的標準封面格式制作)2)原創(chuàng)性聲明3)中文摘要(300字左右)、關鍵詞4 )外文摘要、關鍵詞5)目次頁(附件不統(tǒng)一編入)6)論文主體部分:引言(或緒論)、正文、結論7)參考文獻8)致謝9)附錄(對論文支持必要時)2論文字數(shù)要求:理工類設計(論文

4、)正文字數(shù)不少于1萬字(不包括圖紙、程序清單等),文科類論文正文字數(shù)不少于 1.2萬字。3附件包括:任務書、開題報告、外文譯文、譯文原文(復印件)。4文字、圖表要求:1 )文字通順,語言流暢,書寫字跡工整,打印字體及大小符合要求,無錯別字,不準請他人代寫2 )工程設計類題目的圖紙,要求部分用尺規(guī)繪制,部分用計算機繪制,所有圖紙應符合國家技術標準規(guī)范。圖表整潔,布局合理,文字注釋必須使用工程字書寫,不準用徒手畫3)畢業(yè)論文須用 A4單面打印,論文 50頁以上的雙面打印4)圖表應繪制于無格子的頁面上5 )軟件工程類課題應有程序清單,并提供電子文檔5裝訂順序1)設計(論文)2)附件:按照任務書、開題

5、報告、外文譯文、譯文原文(復印件)次序裝訂摘要現(xiàn)代社會,單片機技術已經(jīng)成為一種比較成熟的技術,它已經(jīng)普及到我們生活、工作、 科研、各個領域中,溫度也是日常生活中最基本的環(huán)境參數(shù),它與我們的生活工作密切相 關,本文主要介紹了一個基于AT89C5單片機的溫度控制報警系統(tǒng),采用溫度傳感器 DS18B2的溫度上下限報警器,能夠自動測量當前環(huán)境溫度,由單片機AT89C205控制,并通過三位段數(shù)碼管顯示提示,如果目前環(huán)境溫度超過此溫度,系統(tǒng)會發(fā)出報警。采用的單 片機AT89C5做信號處理單元,其成本低廉,精確度高,LEE顯示測量數(shù)值,選用紅外傳感器采集人體信號,經(jīng)過放大整形電路后傳送給單片機 AT89C5

6、來處理,最后該信號傳送至 LEE顯示屏。該系統(tǒng)能夠方便的實現(xiàn)溫度的采集和顯示, 并根據(jù)需要可任意設定報警溫度,它使用起來非常方便,具有體積小、精度高、量程寬、靈敏度高、功耗低等優(yōu)點,適用于我們?nèi)?常生活和工、農(nóng)業(yè)生產(chǎn)中的溫度控制,也可以作為其他主系統(tǒng)的輔助擴展,當作溫度處理 模塊嵌入其它系統(tǒng)中。DS18B2與 AT89C5的結合實現(xiàn)了最簡溫度控制系統(tǒng),該系統(tǒng)抗干擾 能力強,結構簡單,對惡劣環(huán)境下進行現(xiàn)場溫度的控制也適合,應用前景較為廣泛。關鍵詞:單片機;溫度控制;AT89C51 DS18B20AbstractIn moder n society, Sin gle chip tech no lo

7、gy has become a mature tech no logy, it has spread to our lives, work, research, in various fields, the most basic environmental parameters of temperature is in daily life, and it is closely related to our life and work, this paper introduces a control alarm system based on AT89C51 single-chip micro

8、computer temperature. Using the temperature sen sor DS18B20 upper and lower limit alarm, can automatically measure the curre nt ambie nt temperature, con trolled by AT89C2051, and display the prompt by three segme nt digital tube, if the current ambient temperature over this temperature, the system

9、will send out alarm. Uses the mono lithic in tegrated circuit AT89C51 to do sig nal process ing un it, its low cost, high accuracy, LED display measured value, using in frared sen sors to collect sig nals of the huma n body, to deal with after amplifying and shaping circuit and then transmitted to t

10、he single chip microcomputer AT89C51, fin ally the sig nal is tran smitted to the LED display.The system can facilitate the realization of temperature acquisition and display, and according to the need can be arbitrarily set the alarm temperature, it is very convenient to use, has the advantagesof s

11、mall volume, high precision, range wide, high sensitivity, low power con sumpti on, suitable for our daily lives and in dustrial and agricultural producti on in the temperature control, can also be used as other auxiliary the main system expansion, as the temperature process ing module embedded in o

12、ther systems. The comb in ati on of DS18B20 and AT89C51 to achieve the most simple temperature control system, the system has strong anti-interferenee capacity, simple structure, control of the on-site temperature under harsh en vir onment is suitable, more exte nsive applicati on prospects.Key word

13、s: single-chip microcomputerAT89C51; wireless transmission module; sickbed beeper目錄摘要IAbstractv目錄VI1引言11.1研究的背景與意義11.2國內(nèi)外研究現(xiàn)狀12系統(tǒng)的設計與安排12.1設計要求及預期目標 錯誤!未定義書簽。2.2 設計可行性 錯誤!未定義書簽。2.3設計方案及步驟 錯誤!未定義書簽。3系統(tǒng)硬件的設計23.1系統(tǒng)硬件設計的原理框圖 23.2單片機AT89C51簡介23.3 硬件模板設計 24系統(tǒng)軟件設計 34.1設計的軟件環(huán)境簡介 34.2單片機 C語言程序設計步驟錯誤!未定義書簽。5系

14、統(tǒng)檢測與調(diào)試錯誤!未定義書簽。6 總結與展 錯誤!未定義書簽。考文 錯誤!未定義書簽。附錄 錯誤!未定義書簽。1引言1.1研究的背景與意義無論是在日常生活中,還是在工業(yè)生產(chǎn)過程中溫度控制都起著非常重要的作用。本次 畢業(yè)設計選題的目的主要是讓生活在信息發(fā)達時代的我們,把所學的知識應用于生活生產(chǎn) 當中,熟練掌握系統(tǒng)總體設計的流程,方案的論證,選擇,實施與完善。隨著社會經(jīng)濟的 快速發(fā)展,現(xiàn)在越來越多的生產(chǎn)部門及生產(chǎn)環(huán)節(jié)對溫度控制精度的可靠性和穩(wěn)定性等有了 更高的要求。由于苛刻的生產(chǎn)環(huán)節(jié)對溫度要求較高,而傳統(tǒng)的溫度控制器控制精度卻普遍 不高,已經(jīng)不能滿足其要求。當今社會,溫度是工業(yè)對象中的一個重要的被

15、控參數(shù),它的測量與控制系統(tǒng)在生產(chǎn)與 生活的各個領域中扮演著越來越重要的角色,大到工業(yè)煉金,環(huán)境檢測,分離物質(zhì),機房 電力,糧倉,凍庫,衛(wèi)生醫(yī)療等方面,小到家庭空調(diào),冰箱,電飯煲,太陽能熱水器等方 面都得到了廣泛的應用,溫度控制系統(tǒng)的廣泛應用也使得這方面研究意義非常的重要。 1.2國內(nèi)外研究現(xiàn)狀雖然溫度控制系統(tǒng)在國內(nèi)各行各業(yè)己經(jīng)得到廣泛應用,但從國內(nèi)生產(chǎn)的溫度控制器 來說,總體發(fā)展水平仍然不高,同美國、日本、德國等先進發(fā)達國家相比,仍有著較大的 差距。20世紀70年代,國外就對溫度控制技術有研究。先是采用模擬式的組合儀表,采集 現(xiàn)場信息并進行指示、記錄和控制。80年代末就出現(xiàn)了分布式控制系統(tǒng)?,F(xiàn)

16、在正在開發(fā)和 研制計算機數(shù)據(jù)采集控制系統(tǒng)的多因子綜合控制系統(tǒng)。現(xiàn)在世界各國的溫度測控技術發(fā)展 很快,一些國家在實現(xiàn)自動化的基礎上正向著完全自動化、無人化的方向發(fā)展。我國研究 溫度測控技術較晚,20世紀80年代開始,在吸收發(fā)達國家溫度測控技術的基礎上,我國工 程技術人員才掌握了溫度室內(nèi)微機控制技術,這項技術僅限于對溫度的單項環(huán)境因子的控 制。我國溫度測控設施的計算機應用,在總體上正從消化吸收、簡單應用階段過渡和發(fā)展。 在技術上,以單片機控制的單參數(shù)單回路系統(tǒng)居多,尚無真正意義上的多參數(shù)綜合控制系 統(tǒng),與發(fā)達國家相比,存在較大差距。2設計的內(nèi)容及性能指標本設計主要是介紹了單片機控制下的溫度報警系統(tǒng)

17、,詳細介紹了其硬件和軟件設計, 并對其各功能模塊做了詳細介紹,其主要功能和指標如下:單片機實時檢測溫度傳感器 DS18B20勺狀態(tài),并將DS18820得到的數(shù)據(jù)進行處理。上電后數(shù)碼管顯示當前的環(huán)境溫度, 通過按鍵可設置高低溫報警值,當檢測到的溫度高于設置的報警值的時候,蜂鳴器報警同 時報警燈閃爍,溫度檢測精確到0.1度。并具有掉電保存功能,數(shù)據(jù)保存在單片機內(nèi)部EEPOM 中,進入設置界面后如果沒有鍵按下系統(tǒng)會在15秒后自動退出設置界面。3系統(tǒng)方案比較、設計與論證該系統(tǒng)主要由溫度測量和溫度設置及系統(tǒng)狀態(tài)顯示三部分電路組成,下面介紹實現(xiàn)此 系統(tǒng)功能的方案。3.1主控制器模塊采用STC89C52單片

18、機作為整個系統(tǒng)的核心,用其控制行進中的小車,以實現(xiàn)其既定 的性能指標。充分分析我們的系統(tǒng),其關鍵在于實現(xiàn)小車的自動控制,而在這一點上,單 片機就顯現(xiàn)出來它的優(yōu)勢一一控制簡單、方便、快捷。這樣一來,單片機就可以充分發(fā)揮 其資源豐富、有較為強大的控制功能及可位尋址操作功能、價格低廉等優(yōu)點。STC89C5單片機具有功能強大的位操作指令,I/O 口均可按位尋址,程序空間多達 8K,對于本設計也 綽綽有余,更可貴的是STC89C5洋片機價格非常低廉。3.2溫度測量采用數(shù)字溫度芯片DS18B2 0測量實際溫度,輸出信號全數(shù)字化。便于單片機處理及控 制,省去傳統(tǒng)的測溫方法的很多外圍電路。且該芯片的物理化學性

19、很穩(wěn)定,它能用做工業(yè) 測溫元件,此元件線形較好。在 0100攝氏度時,最大線形偏差小于1攝氏度。DS18B20 的最大特點之一采用了單總線的數(shù)據(jù)傳輸,由數(shù)字溫度計DS18B2和微控制器STC89C5構成的溫度測量裝置,它直接輸出溫度的數(shù)字信號,可直接與計算機連接。這樣,測溫系統(tǒng)的 結構就比較簡單,體積也不大。采用51單片機控制,軟件編程的自由度大,可通過編程實 現(xiàn)各種各樣的算術算法和邏輯控制,而且體積小,硬件實現(xiàn)簡單,安裝方便。既可以單獨 對多DS18B2控制工作,還可以與PC機通信上傳數(shù)據(jù),另外AT89C5在工業(yè)控制上也有著 廣泛的應用,編程技術及外圍功能電路的配合使用都很成熟。3.3設置溫

20、度采用鍵盤輸入設置溫度,鍵盤則可以用 4個按鍵,一個復位鍵,一個功能設定鍵,一 個加減一個減鍵。四個鍵比較常用,而且用到的接口得到了極好的利用,僅需要4個接口。3.4顯示模塊用LED數(shù)碼管實現(xiàn)數(shù)值的顯示,LED數(shù)碼管顯示相對來說比較直觀、明亮,可以用 動態(tài)顯示和靜態(tài)顯示兩種方法編程實現(xiàn),數(shù)碼管由于顯示速度快,使用簡單,顯示效果簡 潔明了而得到了廣泛應用。LCD雖然其顯示清晰,顯示內(nèi)容豐富、清晰,顯示信息量大, 使用方便,顯示快速。但對于此系統(tǒng)我們不需要顯示豐富的內(nèi)容,而且LCD液晶價格貴,因此我們選擇用數(shù)碼管顯示。3.5電源選取采用干電池供電。干電池價格低廉、攜帶方便、運用靈活,經(jīng)過實驗驗證系

21、統(tǒng) 工作時,單片機、傳感器的工作電壓穩(wěn)定能夠滿足系統(tǒng)的要求,而且電池更換方便。3.6報警設備的論證與選擇采用聲、光同時報警,既可以利用不同顏色的等對應不同的狀態(tài)判別出此時的溫度 處于的狀況,又可以使工作人員在一定距離范圍內(nèi)監(jiān)測到溫度異常進行及時處理。4系統(tǒng)器件選擇.溫度傳感器的選擇由于傳統(tǒng)的熱敏電阻等測溫元件測出的一般都是電壓,再轉(zhuǎn)換成對應的溫度,需要比較多的外部元件支持,且硬件電路復雜,制作成本相對較高。這里采用DALLAS公司的數(shù)字溫度傳感器DS18B20乍為測溫元件。DALLASDS1820 uIII圖2外部封裝形式圖3傳感器電路圖5硬件實現(xiàn)及單元電路設計5.1主控制模塊主控制最系統(tǒng)電路

22、如圖4所示。ODnanc- flw 1 * 1* 4 fl - f - -Kr-!xr 帶J4J二 j Bl- 嚮覺khlssssesk -UE-Lkj -LM.t到EdXUL1XEAL1 ETCCpar1ou圖4單片主控電路5.2顯示模塊電路顯示采用四位數(shù)碼管顯示,當位選打開時,送入相應的段碼,則相應的數(shù)碼管打開, 關掉位選,打開另一個位選,送入相應的段碼,則數(shù)碼管打開,而每次打開關掉相應的位 選時,時間間隔低于20ms從人類視覺的角度上看,就仿佛是全部數(shù)碼管同時顯示的一樣 顯示電路如圖5-o6QO7H V 亠 君 弄 H n q o o 0.0.0.0.rvlr -taf6-j|B1-?D

23、S1 SMGCML_1r*i WLVCI (一 NcCC一V 一圖7溫度傳感器電路引腳圖542 DS18B20控制方法DS18B2C有六條控制命令:溫度轉(zhuǎn)換44H啟動DS18B20進行溫度轉(zhuǎn)換讀暫存器BEH讀暫存器9個字節(jié)內(nèi)容寫暫存器4EH將數(shù)據(jù)寫入暫存器的TH TL字節(jié)復制暫存器48H把暫存器的TH TL字節(jié)寫到E2RAM中重新調(diào)E2RAM B8H把E2RAM中的TH TL字節(jié)寫到暫存器 TH TL字節(jié) 讀電源供電方式B4H啟動DS18B20發(fā)送電源供電方式的信號給主 CPU5.4.3 DS18B20 供電方式DS18B2可以采用兩種方式供電,一種是采用電源供電方式,此時DS18B2的1腳接

24、地, 2腳作為信號線,3腳接電源。另一種是寄生電源供電方式,如圖3.1所示單片機端口接單線總線,為保證在有效的 DS18B2時鐘周期內(nèi)提供足夠的電流,可用一個三極管來完成對 總線的上拉。本設計采用電源供電方式,P2.2 口接單線總線為保證在有效的 DS18B2時鐘 周期內(nèi)提供足夠的電流,可用一個上拉電阻和STC89C5的P2.2來完成對總線的上拉。當DS18B2處于寫存儲器操作和溫度 A/D變換操作時,總線上必須有強的上拉,上拉開啟時 間最大為10卩s。采用寄生電源供電方式是 VDD和GNC端均接地。由于單線制只有一根線, 因此發(fā)送接收口必須是三狀態(tài)的。主機控制 DS18B2完成溫度轉(zhuǎn)換必須經(jīng)

25、過3個步驟:。初始化。ROM操乍指令存儲器操作指令。5.6 蜂鳴器、發(fā)光二極管報警電路電路如圖8主要是用來設定溫度報警溫度的、有高溫和低溫報警GXD圖8蜂鳴器、發(fā)光二極管驅(qū)動引腳圖6系統(tǒng)軟件設計6.1程序結構分析主程序調(diào)用了 3個子程序,分別是數(shù)碼管顯示程序、溫度信號處理程序、按鍵設定報 警溫度程序。溫度信號處理程序:對溫度芯片送過來的數(shù)據(jù)進行處理,進行判斷和顯示。數(shù) 碼管顯示程序:向數(shù)碼管的顯示送數(shù),控制系統(tǒng)的顯示部分。按鍵設定程序:可以設定低溫 和高溫報警可精確到0.1度。6.2 系統(tǒng)程序流圖主程序的主要功能是負責溫度的實時顯示、讀出并處理 DS18B2啲測量的當前溫度值, 溫度測量每1s

26、進行一次。這樣可以在一秒之內(nèi)測量一次被測溫度,主程序的主要功能是負 責溫度的實時顯示,讀出并處理 DS18B20勺當前溫度值,與設定的報警溫度比較,其程序 流程見圖9所示。通過調(diào)用讀溫度子程序把存入內(nèi)存儲中的整數(shù)部分與小數(shù)部分開分存放在不的的兩 個單元中,然后通過調(diào)用顯示子程序顯示出來調(diào)用顯示子程序瀆出溫度值圖9 DS18B20溫度流程圖6.2.1 DS18B20初始化程序流程圖在DS18B2C工作之前需要進行初始化,流程圖如下:圖10初始化程序流程圖622讀溫度子程序流程圖讀溫度子程序的主要功能是從序流程圖如下:DS18B2中讀出溫度數(shù)據(jù),移入溫度暫存器保存。其程圖11溫度子程序流程圖7系統(tǒng)

27、的安裝與調(diào)試7.1安裝步驟1. 檢查元件的好壞按電路圖買好元件后首先檢查買回元件的好壞,按各元件的檢測方法分別進行檢測, 一定要仔細認真。而且要認真核對原理圖是否一致,在檢查好后才可上件、焊件,防止出 現(xiàn)錯誤焊件后不便改正。2. 放置、焊接各元件按原理圖的位置放置各元件,在放置過程中要先放置、焊接較低的元件,后焊較高的 和要求較高的元件。特別是容易損壞的元件要后焊,在焊集成芯片時連續(xù)焊接時間不要超 過10s,注意芯片的安裝方向。7.2電路的調(diào)試首先燒入顯示程序,看顯示正不正常。在調(diào)試程序時,發(fā)現(xiàn)有的指令用的不正確,導 致電路功能不能完全實現(xiàn),另外軟件程序中的延時有的過長、有的過短。類似的現(xiàn)象還

28、有 很多就不一一列舉了。7.3 本章小結本章的主要內(nèi)容是電路的測試和調(diào)試注意事項結 論本溫度報警器,通過單片機實時檢測溫度傳感器DS18B2的狀態(tài),并將DS1882得到的數(shù)據(jù)進行處理。上電后數(shù)碼管顯示當前的環(huán)境溫度,通過按鍵可設置高低溫報警值,當 檢測到的溫度高于設置的報警值的時候, 蜂鳴器報警同時報警燈閃爍,溫度檢測精確到0.1 度。并具有掉電保存功能,數(shù)據(jù)保存在單片機內(nèi)部EEPO中,進入設置界面后如果沒有鍵按下系統(tǒng)會在15秒后自動退出設置界面。由于采用了 4節(jié)干電池供電使系統(tǒng)的抗干擾性得 到加強。在軟件上,充分利用了 STC89C5的系統(tǒng)資源,系統(tǒng)運行流暢。本設計結構簡單,調(diào)試方便,系統(tǒng)反

29、映快速靈活,經(jīng)實驗測試,該溫度報警系統(tǒng)設 計方案正確、可行,各項指標穩(wěn)定、可靠。參考文獻1曹巧媛主編.單片機原理及應用(第二版).北京:電子工業(yè)出版社,20022全國大學生電子設計競賽組委會編.第五屆全國大學生電子設計競賽獲獎作品選編(2001),北京:北京理工大學出版社,20033何力民編.單片機高級教程.北京:北京航空大學出版社,20004金發(fā)慶等編.傳感器技術與應用.北京機械工業(yè)出版社,20025劉坤、宋戈、趙洪波、張憲棟編.51單片機C語言應用開發(fā)技術大全,北京:人民郵電出版社,20086譚浩強著.C程序設計北京:清華大學出版社,20077王忠飛,胥芳.MCS-51單片機原理及嵌入式系

30、統(tǒng)應用M.西安:西安電子科技大學出 版社,2007. P268-2738 Peter Van Der Lin den 著,徐波譯.C專家編程,人民郵電出版社,2003附錄1整體電路原理圖工 工蘭 口尊GTO他池盒接口T h*數(shù)耐哪動電路:GHDE15 ;n】e snn *尹對口 H:JE. ?L2TTrK ?TbP14T3T電源接口電路PIOP 1M.2KJH 4H-SKJH 7EtET(EBlPJO EA吧7和tTLW.SSLS5JTXFAL2BTI- FSTALLKJONDMO777TT|eK Th按鍵電路1師20溫度傳感器is945附錄2 部分源程序#in elude #in elude

31、 eepom52.h#defi ne uehar un sig ned char#defi ne uintun sig ned int/數(shù)碼管段選定義0123456789uchar code smg_du=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90, 0x88,0x83,0xc6,0xa1,0x86,0x8e,0xff;/ 斷碼/數(shù)碼管位選定義uchar code smg_we=0xef,0xdf,0xbf,0x7f;uchar dis_smg8 = 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8;ucha

32、r smg=3;/顯示數(shù)碼管的個位數(shù)sbit dq = P2A4;/18b20 IO 口的定義sbit beep =卩2人5;蜂鳴器IO 口定義uchar a_a;uint temperature ;/bit flag_300ms ;uchar key_ca n;/按鍵值的變量uchar men u_1;/菜單設計的變量uint t_high = 300,t_low = 100;bit flag_lj_e n;按鍵連加使能bit flag_lj_3_en; /按鍵連3次連加后使能加的數(shù)就越大了 uchar key_time,flag_value;/用做連加的中間變量bit key_500ms

33、;uchar flag_clock;uchar zd_break_e n, zd_break_value;/ 自動退出設置界面*1ms延時函*void delay_1ms( uint q) -uint i,j;for(i=0;iq;i+)for(j=0;j120;j+);M、延時函*/*void delay_ uint(uint q) -while(q_);/*碼顯示函*void display() uchar i; for(i=0;ismg;i+)P3 = smg_wei; P1 = dis_smgi; delay_1ms(1);P3 = 0xff;P1 = 0xff;/位選/段選/位選/消

34、隱/*把數(shù)據(jù)保存至y單片機內(nèi)咅pvoid write_eepom() -SectorErase(0x2000);byte_write(0x2000, t_high % 256);byte_write(0x2001, t_high / 256);byte_write(0x2002, t_low % 256);byte_write(0x2003, t_low / 256); byte_write(0x2055, a_a);- -eepom r中 */*void read_eepom() -把數(shù)據(jù)從單片機內(nèi)部eepom 中讀出來 */t_high = byte_read(0x2001);t_high

35、 = 8;t_high |= byte_read(0x2000);t_low= byte_read(0x2003);t_low = 8;t_low |= byte_read(0x2002); a_a = byte_read(0x2055);- -* 18b20初始化函數(shù) *void in it_18b20() bit q;dq = 1; delay_ui nt(1);dq = 0; delay_ui nt(80);dq = 1; delay_ui nt(10); q = dq;delay_ui nt(20); dq = 1;/把總線拿高15us/給復位脈沖750us/把總線拿高等待110usI

36、I讀取18b20初始化信號200us把總線拿高釋放總線*寫 I8b20 內(nèi) 的數(shù)據(jù) */void write_18b20(uchar dat) -uchar i;for(i=0;i= 1;*讀取 18b20 內(nèi)的數(shù)據(jù) *iuchar read_18b20() -uchar i,value;for(i=0;i= 1;II讀數(shù)據(jù)是低位開始dq = 1;II釋放總線if(dq = 1)II開始讀寫數(shù)據(jù)60us的時間value |= 0x80;delay_ui nt(5); II60us讀一個時間隙最少要保持return value;II 返回數(shù)據(jù)I* 讀取溫度的值讀出來的是小數(shù) */uint rea

37、d_temp() -uint value;uchar low;會影響到18b20的時序in it_18b20(); write_18b20(0xcc); write_18b20(0x44); delay_ui nt(50);/在讀取溫度的時候如果中斷的太頻繁了,就應該把中斷給關了,否則初始化18b20跳過64位ROM啟動一次溫度轉(zhuǎn)換命令500usin it_18b20();初始化18b20write_18b20(0xcc); write_18b20(0xbe);跳過64位ROM發(fā)出讀取暫存器命令EA = 0;low = read_18b20(); value = read_18b20();EA

38、 = 1;value = 10) - write_eepom(); key_value = 0; key_ new = 1; flag_lj_e n = 0;flag_lj_3_e n = 0; flag_value = 0; -elseif(P2 & OxOf) != 0x0f)key_value +;按鍵按下的時候elsekey_value = 0;if(key_value = 7)key_value = 0;key_ new = 0;flag_lj_en = 1; / 連加使能zd_break_en = 1; II自動退出設置界使能 zd_break_value = 0; II自動退出設

39、置界變量清零key_can = 20; if(key_500ms = 1)-key_500ms = 0;zd_break_en = 1; /自動退出設置界使能zd_break_value = 0; /自動退出設置界變量清零 key_ new = 0;key_old = 1;if(key_ new = 0) & (key_old = 1) - -switch(P2 & OxOf)4; break;II得到k1鍵值3; break;II得到k2鍵值2; break;II得到k3鍵值1; break;II得到k4鍵值case 0x0e: key_ca n = case 0x0d: key_ca n

40、=case 0x0 b: key_ca n = case 0x07: key_ca n = -key_old = key_ new;- - void key_with()/*按鍵處理數(shù)碼管顯示函數(shù)*-if(key_ca n = 4)-menu_1 +;if(me nu_1 = 3)-menu_1 = 0; -if(me nu_1 = 0)-dis_smg0 = smg_dutemperature % 10;/ 取溫度的小數(shù)顯示dis_smg1 = smg_dutemperature / 10 % 10 & 0x7f; / 取溫度的個位顯示 dis_smg2 = smg_dutemperatur

41、e / 100 % 10 ;/ 取溫度的十位顯示smg_i = 3; -if(me nu_1 = 1)-dis_smg0 = smg_dut_high % 10;/ 取小數(shù)顯示dis_smg1 = smg_dut_high / 10 % 10 & 0x7f;/ 取個位顯示dis_smg2 = smg_dut_high / 100 % 10 ;/取 low 十位顯示dis_smg3 = 0x89;smg_i = 4; -if(me nu_1 = 2)-dis_smg0 = smg_dut_low % 10;/取 low 小數(shù)顯示dis_smg1 = smg_dut_low / 10 % 10 &

42、 0x7f;取個位顯示dis_smg2 = smg_dut_low / 100 % 10 ;/ 取十位顯示dis_smg3 = 0xc7;smg_i = 4; -if(me nu_1 = 1)/設置高溫報警-if(key_ca n = 3)-if(flag_lj_3_en = 0)t_high + ;/按鍵按下未松開自動加三次elset_high += 10; /按鍵按下未松開自動加三次之后每次自動加 10 if(t_high 990)t_high = 990;dis_smg0 = smg_dut_high % 10;/ 取小數(shù)顯示dis_smg1 = smg_dut_high / 10 % 10 & 0x7f;/ 取個位顯示dis_smg2 = smg_dut_high / 100 % 10 ;/ 取十位顯示dis_smg3 = 0x89

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論