




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、學號 20080603050111 密級 公開 畢業論文畢業論文基于基于 80518051 單片機的溫度控制系統的設計單片機的溫度控制系統的設計學 院 名 稱:專 業 名 稱:電子信息科學與技術學 生 姓 名:指 導 教 師:二一二年五月bachelors degree thesis of lanzhou city universitythe design of temperature control system based on 8051 scmcollege :school of peili engineerning & technology subject :electronic in
2、formation science and technology name : may 2012鄭鄭 重重 聲聲 明明本人呈交的學位論文,是在導師的指導下,獨立進行研究工作所取得的成果,所有數據、圖片資料真實可靠。盡我所知,除文中已經注明引用的內容外,本學位論文的研究成果不包含他人享有著作權的內容。對本論文所涉及的研究工作做出貢獻的其他個人和集體,均已在文中以明確的方式標明。本學位論文的知識產權歸屬于培養單位。本人簽名: 日期: 摘 要隨著微機測量和控制技術的迅速發展與廣泛應用,以單片機為核心的溫度采集與控制系統的研發與應用在很大程度上提高了生產生活中對溫度的控制水平。本設計采用一種以 at8
3、9s52 單片機為主控制單元,以 ds18b20 為溫度傳感器的溫度控制系統,該控制系統可以實時溫度的自動控制。系統設計了相關的硬件電路和相關應用程序。硬件電路主要包括 at89s52 單片機最小系統,led 液晶顯示電路、報警電路、溫度控制電路和溫度傳感電路。系統程序主要包括主程序,讀出溫度子程序,計算溫度子程序、溫度處理程序、led 顯示程序等。該系統具備較高的測量精度,能較好的完成設計要求。關鍵詞:at89s52 單片機;ds18b20 傳感器;溫度控制;顯示電路abstractalong with the computer measurement and control technol
4、ogy of the rapid development and wide application, with the single chip processor as the core temperature gathering and control system development and application greatly improve the production of the control of the temperature in the life level the design uses a at89s52 scm control unit to give pri
5、ority to the temperature sensor ds18b20 for the temperature control system, the control system can real-time temperature automatic control system design of the related hardware circuit and related application hardware circuit at89s52 scm mainly include smallest system, led display circuit alarm circ
6、uit temperature control circuit and temperature sensing system including the main circuit program program, read the temperature procedure, the calculation of temperature subroutines temperature treatment program led display procedure of the system has high measuring accuracy and can be good to compl
7、ete the design requirements.keywords: at89s52 single chip microcomputer;ds18b20 sensors;the temperature controls; manifestation gives or get an lectric shock 目目 錄錄第 1 章 緒論 .1 1.1 引言 .1 1.2 項目要求 .1 1.3 研究意義 .1第 2 章 硬件設計 .2 2.1 硬件設計概要 .2 2.2 單片機控制部分 .2 2.3 溫度檢測電路 .6 2.3.1 溫度檢測電路 .6 2.3.2 報警電路.9 2.3.3
8、控制電路及顯示電路 .9第 3 章 軟件設計 .13 3.1 中斷控制程序 .13 3.2 顯示程序 .14 3.3 溫度測量 .15 3.4 溫度處理 .21結 論 .23參考文獻 .24致 謝 .26第第 1 1 章章 緒論緒論1.11.1 引言引言水溫控制系統無論是工業生產過程,還是日常生活都起著非常重要的作用,過低過高的水溫都會使水資源失去應有的作用,從而造成水資源的極大浪費,給生活生產帶來許多不利因素。在能源日益緊張的今天,電熱水器、飲水機、電飯煲之類的家用電器在保溫時,由于簡單的溫度控制系統,因而會造成很大的能源浪費。基于 8051 單片機的水溫控制系統與傳統的水溫控制系統相比具有
9、操作方便、價格便宜、精確度高和開展容易等優點,因此市場前景看好1。1.21.2 項目要求項目要求設計制作一個水溫自動控制系統,控制對象為 10l 水,容器為搪瓷器皿。水溫可以在一定范圍內由人工設定,并能在環境溫度降低時實現自動控制,以保持設定溫度保持不變。基于 8051 單片機水溫控制器晶振采用 12mhz,具體要求如下:(1)初始溫度設置為 50 度,溫度低于 50 度加熱;(2)越限報警溫度為 70 度,溫度高于 70 度,報警,停止加熱;(3)控制精度為 1 度(4)控制范圍為環境溫度室溫到 70 度1.31.3 研究意義研究意義在人類生活的環境中,溫度扮演著及其重要的角色。自 18 世
10、紀工業革命以來,工業的發展與是否掌握溫度有著密切的聯系。溫度不但對于工業如此重要,在農業生產中溫度的檢測與控制也有著十分重要的意義。同時,溫度測量系統在電子產品中的應用越來越廣泛,比如:空調、電飯煲、太陽能熱水器等都用到了溫度控制系統。當前,能源問題是最熱門的話題,也是我們急需解決的,因而我們從節省能源,保護環境出發,設計出本系統。本設計使用單片機作為核心進行控制。單片機具有集成度高,通用性好,功能強,特別是體積小,重量輕,耗能低,可靠性高,抗干擾能力強和使用方便等獨特優點,在數字、智能化方面有廣泛的用途2。單片機對溫度的控制問題是一個日常生活中經常會遇到的問題。因此,對該系統的研究有著極其重
11、要的意義。第第 2 2 章章 硬件設計硬件設計2.12.1 硬件設計概要硬件設計概要根據需求,我的系統以 at89s52 單片機3為中心控制器件,由溫度采集電路、顯示電路、加熱電路、報警電路組成。溫度采集使用 18b204,使用它可以使電路簡化。控制電路用外部中斷來調節溫度,為了使操作方便,加一個顯示控制溫度值的數碼管,來便于使用。報警電路,這個電路用一個三極管這為放大器去驅動一個喇叭。總硬件框圖如圖 2.1所示:圖 2.1 總硬件設計示意圖2.22.2 單片機單片機控制部分控制部分 此部分是電路的核心部分,系統采用了 51 系列單片機。在眾多的 51 單片機系列中,at89 系列單片機在我國
12、得到及其廣泛的應用,越來越受到人們的矚目。at89 系列單片機是美國 atmel 公司的 8 位 flash 單片機產品。它的最大特點是在片內含有 flash 存儲器,在系統的開發過程中修改程序容易,使開發調試更為方便。at89 系列單片機以 8031 為內核,是與 8051 系列單片機兼容的系列,其型號可以分為標準型、低檔型和高檔型 3 類。高檔型單片機有at89s51、at89s52、at89s53 和 at89s8252 等型號,其中 at89s52 為 atmel 所生溫度采集電路at89s52加熱電路顯示電路報警電路產的一種低功耗、高性能 cmos8 位微控制器,內部有 8kb 的可
13、下載 flash 存儲器,2kb 的 eeprom,提高了存儲容量,系統不必擴展外部程序存儲器和數據存儲器這樣大大的減少了系統硬件部分5。因此,本系統使用 at89s52 單片機作為微處理器,微處理器電路如圖 2.2 所示:圖 2.2 微處理器電路圖1、at89s52 主要功能列舉如下:(1)擁有靈巧的 8 位 cpu 和在系統可編程 flash(2)晶片內部具時鐘振蕩器(傳統最高工作頻率可至 12mhz)(3)內部程序存儲器(rom)為 8kb(4)內部數據存儲器(ram)為 256 字節(5)32 個可編程 i/o 口線(6)8 個中斷向量源(7)三個 16 位定時器/計數器(8)三級加密
14、程序存儲器(9)全雙工 uart 串行通道2、at89s52 各引腳功能介紹6如圖 2.3 所示:圖 2.3 at89s52 引腳圖vcc:at89s52 電源正端輸入,接+5v。vss:電源地端。xtal1:單芯片系統時鐘的反相放大器輸入端。xtal2:系統時鐘的反相放大器輸出端,一般在設計上只要在 xtal1 和 xtal2 上接上一只石英振蕩晶體系統就可以動作了,此外可以在兩引腳與地之間加入一 20pf 的小電容,可以使系統更穩定,避免噪聲干擾而死機。 reset:at89s52 的重置引腳,高電平動作,當要對晶片重置時,只要對此引腳電平提升至高電平并保持兩個機器周期以上的時間,at89
15、s51 便能完成系統重置的各項動作,使得內部特殊功能寄存器之內容均被設成已知狀態,并且至地址0000h 處開始讀入程序代碼而執行程序7。ea/vpp: ea為英文external access的縮寫,表示存取外部程序代碼之意,低電平動作,也就是說當此引腳接低電平后,系統會取用外部的程序代碼(存于外部 eprom 中)來執行程序。因此在 8031 及 8032 中,ea 引腳必須接低電平,因為其內部無程序存儲器空間。如果是使用 8751 內部程序空間時,此引腳要接成高電平。此外,在將程序代碼燒錄至 8751 內部 eprom 時,可以利用此引腳來輸入 21v 的燒錄高壓(vpp)。 ale/pr
16、og:ale 是英文address latch enable的縮寫,表示地址鎖存器啟用信號。at89s52 可以利用這支引腳來觸發外部的 8 位鎖存器(如 74ls373),將端口 0 的地址總線(a0a7)鎖進鎖存器中,因為 at89s52 是以多工的方式送出地址及數據。平時在程序執行時 ale 引腳的輸出頻率約是系統工作頻率的1/6,因此可以用來驅動其他周邊晶片的時基輸入。此外在燒錄 8751 程序代碼時,此引腳會被當成程序規劃的特殊功能來使用。psen:此為program store enable的縮寫,其意為程序儲存啟用,當 8051被設成為讀取外部程序代碼工作模式時(ea=0),會送
17、出此信號以便取得程序代碼,通常這支腳是接到 eprom 的 oe 腳。at89s52 可以利用 psen 及 rd 引腳分別啟用存在外部的 ram 與 eprom,使得數據存儲器與程序存儲器可以合并在一起而共用 64k 的定址范圍。port0(p0.0p0.7):端口 0 是一個 8 位寬的開路汲極(open drain)雙向輸出入端口,共有 8 個位,p0.0 表示位 0,p0.1 表示位 1,依此類推。其他三個 i/o 端口(p1、p2、p3)則不具有此電路組態,而是內部有一提升電路,p0 在當做 i/o 用時可以推動 8 個 ls 的 ttl 負載。如果當 ea 引腳為低電平時(即取用外
18、部程序代碼或數據存儲器),p0 就以多工方式提供地址總線(a0a7)及數據總線(d0d7)。設計者必須外加一鎖存器將端口 0 送出的地址栓鎖住成為a0a7,再配合端口 2 所送出的 a8a15 合成一完整的 16 位地址總線,而定址到 64k 的外部存儲器空間。port2(p2.0p2.7):端口 2 是具有內部提升電路的雙向 i/o 端口,每一個引腳可以推動 4 個 ls 的 ttl 負載,若將端口 2 的輸出設為高電平時,此端口便能當成輸入端口來使用。p2 除了當做一般 i/o 端口使用外,若是在 at89s52 擴充外接程序存儲器或數據存儲器時,也提供地址總線的高字節 a8a15,這個時
19、候 p2 便不能當做 i/o 來使用了。port1(p1.0p1.7):端口 1 也是具有內部提升電路的雙向 i/o 端口,其輸出緩沖器可以推動 4 個 ls ttl 負載,同樣地若將端口 1 的輸出設為高電平,便是由此端口來輸入數據。如果是使用 8052 或是 8032 的話,p1.0 又當做定時器2 的外部脈沖輸入腳,而 p1.1 可以有 t2ex 功能,可以做外部中斷輸入的觸發腳位。port3(p3.0p3.7):端口 3 也具有內部提升電路的雙向 i/o 端口,其輸出緩沖器可以推動 4 個 ttl 負載,同時還多工具有其他的額外特殊功能,包括串行通信、外部中斷控制、計時計數控制及外部數
20、據存儲器內容的讀取或寫入控制等功能。其引腳分配如下:p3.0:rxd,串行通信輸入。p3.1:txd,串行通信輸出。p3.2:int0,外部中斷 0 輸入。p3.3:int1,外部中斷 1 輸入。p3.4:t0,計時計數器 0 輸入。p3.5:t1,計時計數器 1 輸入。p3.6:wr:外部數據存儲器的寫入信號。p3.7:rd,外部數據存儲器的讀取信號。整個單片機系統接口分配情況如下:p0 口復用于傳輸 led 位數據以及值數據傳輸、p2 口的 p2.0-p2.1 作為六位 led 的公共端的控制信號、p1 口分配做鍵盤接口、p3.0 和 p3.1 分別用于串口通信的數據的接收端和發送端、p3
21、.2 用于溫度數據接口8。2.32.3 溫度檢測電路溫度檢測電路2.3.12.3.1 溫度檢測電路溫度檢測電路ds18b20數字傳感器是dallas公司生產的1wire總線技術的典型產品9。它可以將被測溫度直接轉換成數字量,因此單片機可以方便的通過串行總線實現讀取。另外,1wire具有成本低、節省i/o口、抗干擾能力強,便于總線擴展和維護等特點。ds18b20通過編程后,可以實現912位的溫度度數。由于ds18b20可以由數據線本身提供電源,因此單片機與其連接時,需要一根數據線和地線。ds18b20的工作性能如下:(1)1wire數據通信(2)可用數據線供電,電壓范圍35.5v(3)最高12位
22、分辨率(4)12位分辨率時的最大工作周期為750ms(5)可選擇寄生工作方式(6)檢測溫度范圍為55c+125c(7)被測溫度在10c+85c時,精度為0.5c(8)內置eeprom,限溫報警功能(9)64位光刻rom,內置產品序列號,方便多機掛接(10)封裝形式多樣(11)負壓特性。電源極性接反時,芯片不會燒毀ds18b20 內部結構10主要由四部分組成:64 位光刻 rom、溫度傳感器、非揮發的溫度報警觸發器 th 和 tl、配置寄存器。ds18b20 的管腳排列如圖 2.4 所示:圖 2.4 ds18b20 的結構圖dq 為數字信號輸入/輸出端;gnd 為電源地;vdd 為外接供電電源輸
23、入端(在寄生電源接線方式時接地)。光刻 rom 中的 64 位序列號是出廠前被光刻好的,它可以看作是該 ds18b20的地址序列碼。64 位光刻 rom 的排列是:開始 8 位(28h)是產品類型標號,接著的 48 位是該 ds18b20 自身的序列號,最后 8 位是前面 56 位的循環冗余校驗碼(crc=x8+x5+x4+1)。光刻 rom 的作用是使每一個 ds18b20 都各不相同,這樣就可以實現一根總線上掛接多個 ds18b20 的目的。ds18b20 中的溫度傳感器可完成對溫度的測量,以 12 位轉化為例:用 16 位符號擴展的二進制補碼讀數形式提供,以 0.0625/lsb 形式表
24、達,其中 s 為符號位。 表 2.1 12 位轉化后得到的 12 位數據lsbytemsbyte232221202-12-22-32-4bit7bit6bit5bit4bit3bit2bit1bit0ssss262425sbit15 bit14 bit13 bit12 bit11 bit10 bit9bit8這是 12 位轉化后得到的 12 位數據,存儲在 18b20 的兩個 8 比特的 ram 中,二進制中的前面 5 位是符號位,如果測得的溫度大于 0,這 5 位為 0,只要將測到的數值乘于 0.0625 即可得到實際溫度;如果溫度小于 0,這 5 位為 1,測到的數值需要取反加 1 再乘于
25、 0.062511即可得到實際溫度。例如+125的數字輸出為 07d0h,+25.0625的數字輸出為 0191h,-25.0625的數字輸出為 ff6fh,-55的數字輸出為 fc90h。溫度檢測控制電路如圖 2.5 所示:gndvccdds18b20vccr 4.7kat89s52p3.2圖 2.5 溫度檢測控制電路圖2.3.22.3.2 報警電路報警電路報警電路設計12的工作過程:如圖 2.6 所示,該報警電路由兩個主要部件組成,buzz 喇叭報警裝置和三極管,如果來自單片機 p1.1 端的信號使三極管的發射極導通,即有電流通過時,那么從 vcc 到 buzz 到集電極也會有電流通過,這
26、樣會讓 buzz 報警裝置發出報警聲音,如果來自來單片機 p1.1 端的信號使三極管的發射極沒有導通,則無電流通過,喇叭不發聲音。即當 p1.1 端的信號為低電平時,喇叭報警,當 p1.1 端的信號為高電平時喇叭不響。圖 2.6 報警電路2.3.32.3.3 控制電路及顯示電路控制電路及顯示電路通過 2 個外部電路來控制溫度,只要在中斷口讓 2 個開關接地。然后把調節后的溫度通過數碼管顯示出來。1、led 顯示器13結構與原理led 顯示器由 7 條發光二極管組成顯示字段,有的還帶有一個小數點 dp 將 7段發光二極管陰極連在一起,成為共陰極接法,當某個字段的陽極為高電平時,對應的字段就點亮。
27、共陽極接法是將 led 的所有陽極并接后就連到+5v 上,當某一字段的陰極為 0 時,對應的字段就點亮。靜態串行顯示器的結構圖如 2.7 所示:abcdefgdpv ccabcdefgdp共陰極 共陽極圖 2.7 靜態串行顯示器的結構圖點亮 led 顯示器有靜態和動態兩種方法14。所謂靜態顯示,就是顯示某一字段時,相應的發光二極管恒定的導通或截止,這種方式,每一顯示位都需要一個8 位輸出口控制,占用硬件較多,一般僅用于顯示器位數較少的場合。所謂動態顯示,就是一位一位地輪流點亮各位顯示器。對每為顯示器而言,每隔一段時間顯示一次。顯示位的亮度既跟導通電流有關,也和點亮時間與間隔時間的比例有關。動態
28、顯示器因硬件成本較低而被采用。為了顯示字符,要為 led 顯示器提供顯示段碼,組成一個“8”字形的 7 段,再加上 1 個小數點位,共計 8 段,因此提供 led 顯示器的顯示段碼為一個字節。 2、led 顯示器與單片機的接線圖本設計通過單片機 p0 口并經總線驅動器 74ls245 控制 6 位數碼管的段碼,通過位選線 p2.0-2.1 經三極管逐位逐位去控制數碼管掃描顯示。由于采用動態顯示,其優點是占用硬件資源少,功耗小。但必須注意:掃描周期必須控制在視覺停頓時間內,一般在 20ms 以內,否則會出現閃爍或跳動現象。如圖 2.8 所示為 led 與單片機的接線圖15。圖 2.8 led 與
29、單片機的接線圖顯示器有四個 led 數碼管組成。輸入串行數據線 din 和位移信號 clk,四個串/并移位寄存器與芯片74ls245相連。每片的并行輸出作為 led 數碼管的碼段。74ls245是用來驅動 led 的設備16,它是8路同相三態雙向總線收發器,可雙向傳輸數據。74ls245還具有雙向三態功能,既可以輸出,也可以輸入數據。當at89s52單片機的 p0口總線負載達到或超過 p0最大負載能力時,必須接入74ls245等總線驅動器。當片選端 ce 低電平有效時,dir=“0”,信號由 b 向 a傳輸(接收);dir=“1”,信號由 a 向 b 傳輸(發送);當 ce 為高電平時,a、b
30、 均為高阻態。p0口與74ls245輸入端相連,e 端接地,保證數據現暢通。at89s52的 rd 和psen 相與后接 dir,使得 rd 或 psen 有效時,74ls245輸入,其它時間處于輸出。74ls245的電路如圖2.9所示:圖 2.9 74ls245 電路示意圖第第 3 3 章章 軟件設計軟件設計總體設計:程序總體是控溫,所以應該不斷測溫并控制。如圖 3.1 所示: n y y開始初始化調各顯示子程序調溫度轉換子程序溫度70 c報警溫度50 c加熱 n結束停止加熱 圖 3.1 程序總體設計流程圖3.13.1 中斷控制程序中斷控制程序中斷程序的流程圖如圖 3.2 所示:圖 3.2
31、中斷程序的流程圖首先設計控溫的程序17,程序如下:外部中斷 1key_1:clr ea ;關閉外部中斷inc dis1 ;把個位加一mov a,dis1 cjne a,#10,key ;判斷個位是否為十mov dis1,#0 ;是十把它置一;顯示并打開中斷外部中斷 1處理溫度的個位結束外部中斷 2處理溫度的十位結束key:mov a,dis2 mov b,#10mul abadd a,dis1 ;求出調整后的溫度mov temper_config,a ;保存調整后的溫度lcall display ;顯示調整后的溫度setb ex0 setb ex1setb ea ;打開中斷reti ;中斷返回
32、;外部中斷 2key_2:clr eainc dis2mov a,dis2cjne a,#10,keymov dis2,#0ajmp key其中 dis1,dis2 是定義的變量,用來保存數碼管的顯示數字。temper_config 也是定義變量用來保存設定溫度值。3.23.2 顯示程序顯示程序根據數碼管的顯示特點,要在實現一位后延時一會兒再顯示下一位。下面是數碼管顯示代碼18:;顯示display:mov a,dis2mov dptr,#tablemovc a,a+dptr mov p0,asetb p2.1dsdely1:mov r6,#11djnz r6,$djnz r7,dsdely1
33、mov a,dis1mov dptr,#tablemovc a,a+dptrmov p0,asetb p2.0mov r7,#25dsdely2:mov r6,#11djnz r6,$djnz r7,dsdely2ret3.33.3 溫度測量溫度測量根據 ds18b20 的通訊協議,主機控制 ds18b20 完成溫度轉換必須經過三個步驟:每一次讀寫之前都要對 ds18b20 進行復位,復位成功后發送一條 rom 指令,最后發送 ram 指令,這樣才能對 ds18b20 進行預定的操作。當主機收到 ds18b20 的響應信號后,便可以發出操作命令,這些命令可以分為 rom 命令和 ram 命令兩
34、種19。cpu 的操作過程如圖 3.3 所示。由于 ds18b20 與單片機間采用串行數據傳送,因此,在對 ds18b20 進行讀寫編程時,必須嚴格的保證讀寫時序,否則將無法讀取測溫結果。操作時序主要有初始化時序、讀時序和寫 0 時序和寫 1 時序四種,如圖 3.4 所示。在溫度測量儀表中,對 ds18b20 的操作主要是復位、讀數據和寫數據三種,而兩種操作又都是按位進行的,所以首先應該按照 ds18b20 的時序要求,編寫讀、寫時間片的程序,其流程圖如圖 3.5 所示。 開 始元 件 復 位寫 skiprom 命令(cch)寫啟動轉換命令(44h)延時 750s等待轉換結束元 件 復 位寫
35、skiprom 命令(cch)寫讀轉換結果命令(beh)讀轉換結果crc 校驗結 束圖 3.3 ds18b20 操作過程1-15s60-120s30s15s1-15s15s1-15s15-60s復位脈沖 480-960s應答脈沖 60-240s(a)初始化信號(b)寫 1 信號(c)寫 0 信號(d)讀信號 圖 3.4 ds18b20 操作時序圖 3.5 ds18b20 操作程序流程圖根據上述可以得到 18b20 的操作的 3 個函數20:初始化 18b20init_1820:setb dqnopclr dqmov r0,#06bhtsr1:djnz r0,tsr1; 延時setb dq開 始
36、總線置 1 并延時總線置 0 并延時480s總線置 1返 回開 始設循環次數為 8總線置 0 并延時16s寫 1 位數據延時 480s總線置 1 并延時16s8 位寫完?返 回開 始設循環次數為 8總線置 0 并延時16s寫 1 位數據延時 100s總線置 1 并延時60s8 位讀完?返 回(a)復位操作流程(b)寫操作流程(c)讀操作流程mov r0,#25htsr2:jnb dq,tsr3djnz r0,tsr2ljmp tsr4; 延時tsr3:setb flag1 ;置標志位,表示 ds1820 存在ljmp tsr5tsr4:clr flag1 ;清標志位,表示 ds1820 不存在
37、ljmp tsr7tsr5:mov r0,#06bhtsr6:djnz r0,tsr6; 延時tsr7:setb dqret;把 a 的值寫入 18b20write_1820:mov r2,#8clr cwr1:clr dqmov r3,#6djnz r3,$rrc amov dq,cmov r3,#23djnz r3,$setb dqnopdjnz r2,wr1setb dqret;讀溫度read_18200:mov r4,#2 ; 將溫度高位和低位從 ds18b20 中讀出mov r1,#77h;低位存入 77h(temper_l),高位存入76h(temper_h)re00:mov r2
38、,#8re01:clr csetb dqnopnopclr dqnopnopnopsetb dqmov r3,#7djnz r3,$mov c,dqmov r3,#23djnz r3,$rrc adjnz r2,re01mov r1,adec r1djnz r4,re00ret應為讀出的溫度的格式是 12 位21,temper_l 位前四位是整數部分后四位是小數,temlper_h 只有低四位是有效的。所以我們要有一個處理溫度的函數得到整數的溫度。讀出的溫度轉換成 1 個字節放入 temper_numtemper_cov:mov a,#0f0hanl a,temper_l; 舍去溫度低位中小數
39、點后的四位溫度數值swap amov temper_num,amov a,temper_ljnb acc.3,temper_cov1 ;四舍五入去溫度值inc temper_numtemper_cov1:mov a,temper_hanl a,#07hswap aorl a,temper_nummov temper_num,a ;保存變換后的溫度數據ret;讀溫度到 temper_l 和 temper_hread_temp:mov a,#0cchlcall write_1820mov a,#0behlcall write_1820lcall read_18200lcall init_1820m
40、ov a,#0cchlcall write_1820mov a,#044hlcall write_1820ret3.43.4 溫度處理溫度處理 當溫度低于 50c 時,進行加熱,加熱到 50 度與 70 度之間為正常狀態。當溫度大于 70c 時,喇叭報警,停止加熱。;溫度處理temper_work:lcall temper_covmov a,temper_numclr csubb a,#70jnc temp_overmov a,temper_numcjne a,temper_config,twrettw:jc open_hasetb haret;溫度超過 70 喇叭響,并停止加熱temp_ov
41、er:setb hamov r6,#128bell:clr wamov r7,#100djnz r7,$setb wadjnz r6,bellret;加熱open_ha:clr haret結結 論論本課程設計是 8051 單片機的溫度控制系統。硬件設計分為了以下模塊:顯示模塊、報警模塊、溫度控制模塊和溫度傳感器模塊。然后設計軟件,編寫程序調試硬件電路各個模塊的功能。最后對整個系統聯調,實現了設計要求,對溫度進行了控制。當溫度小于 50c時加熱,當溫度大于 50c 小于 70c時是正常狀態,當溫度大于 70c時報警,停止加熱。通過這次的設計,實現了溫度控制的硬件連接,模塊的建立。最終結果表明:本
42、設計是合理的,能很好的達到預期的效果和要求。參考文獻參考文獻1hu hong-bin. measuring for temperature characteristic of temperature relay.electro mechanical element, 2003,(9):46-48. 2李朝青. .單片機原理及接口技術(簡明修訂版). .杭州:北京航空航天大學出版社,1998:98-106. 3李廣弟. .單片機基礎. .北京:北京航空航天大學出版社,1994:15-26.4徐同舉.新型傳感器基礎d.北京:北京大學數學學院,1998. 5張友德,趙志英,涂時亮單片微型機原理、應用
43、與實驗m上海:復旦大學出版社,2000:344-365. 4樓然苗,李光飛51 系列單片機設計實例m北京:北京航空航天大學出版社,2003:27-56. 6何立民編.mcs-51 系列單片機應用系統設計m,北京航空航天大學出版社, 1990:147-165. 7余錫存,曹國華.單片機原理及接口技術s.西安:西安電子科技大學出版,2007.8陳偉人. mcs-51 系列單片機實用子程序集錦.北京:清華大學出版社,1998.9廖常初.現場總線概述j.電工技術,1999.22(3):59-64. 10g.a.woolvet,transducers in digitial systems,peter peregrinus ltd.,1977. 11sun kai. controlling tempe
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 音樂課堂管理藝術
- 船舶防臺知識
- 藥品生產專業課程
- 7.1 力 課件 2024-2025學年教科版物理八年級下學期
- 習作例文:《鯨》教學設計-2024-2025學年五年級上冊語文統編版
- 七年級地理上冊 4.1《天氣和天氣預報》教學設計 (新版)粵教版
- 6.2 夫妻地位平等 課件高中政治統編版選擇性必修二法律與生活
- 闌尾炎術后護理
- 采購合同合同管理專業服務創新重點基礎知識點
- 安全事件風險評估重點基礎知識點
- 共享農田合作合同協議書
- 風電基礎合同
- 三級安全培訓考試題附參考答案(完整版)
- 莊子:當我們無路可走的時候(原文)
- DB51-T 3176-2024 四川省中心鄉鎮消防救援站建設規范
- DB11T 2279-2024 社會單位消防安全評估規范
- 養生理療館門店管理手冊02
- 店里裝修合同范本
- 酒店品牌建設與管理教案
- QB/T 2660-2024 化妝水(正式版)
- 國家濕地公園科普宣教規劃方案
評論
0/150
提交評論