基于單片機的數(shù)字溫度測量儀的設計_第1頁
基于單片機的數(shù)字溫度測量儀的設計_第2頁
基于單片機的數(shù)字溫度測量儀的設計_第3頁
基于單片機的數(shù)字溫度測量儀的設計_第4頁
基于單片機的數(shù)字溫度測量儀的設計_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、蘇州工業(yè)職業(yè)技術學院 基于單片機的數(shù)字溫度測量儀的設計系 部: 學生姓名: 專業(yè)班級: 學 號: 指導教師: 2012年 10月 26日聲 明本人所呈交的 基于單片機的數(shù)字溫度測量儀設計 ,是我在指導教師的指導和查閱相關著作下獨立進行分析研究所取得的成果。除文中已經(jīng)注明引用的內(nèi)容外,本論文不包含其他個人已經(jīng)發(fā)表或撰寫過的研究成果。對本文的研究做出重要貢獻的個人和集體,均已在文中作了明確說明并表示謝意。 作者簽名: 日期: 目錄 摘要 1 一、引言2(一)課題研究的背景及意義2 1.設計背景22. 設計意義2(2) 設計方案論證2(三)設計要求及設計思路31.設計要求32.設計思路3二、硬件設計

2、4(一)總設計框圖4(二)硬件電路設計41.主控制器 AT89C5142.復位與時鐘電路83.溫度傳感電路94.液晶顯示電路115.按鍵輸入電路126.報警電路13三、軟件設計13(一)主程序設計13(二)子程序的設計141.讀出溫度子程序142.溫度轉(zhuǎn)換命令子程序153.計算溫度子程序16四、仿真與調(diào)試17五、總結(jié)19六、致謝20七、參考文獻20附錄一: 電路仿真圖21 蘇州工業(yè)職業(yè)技術學院 附錄二: 源程序21 【摘要】隨著時代的進步和發(fā)展,單片機的應用正在不斷地走向深入,由于它具有功能強,體積小,功耗低,價格便宜,工作可靠,使用方便等特點,特別適合與控制有關的系統(tǒng)設計。本文利用單片機AT

3、89C51為核心控制器件,結(jié)合DS18B20傳感器完成了一種數(shù)字溫度計的設計,測量結(jié)果由液晶具體顯示。當測量溫度超過設定的溫度上下限時,LED燈閃爍實行報警。該數(shù)字溫度測量儀設計具有測量準確、誤差小,功能較強等功能。 本文給出了具體的硬件電路,軟件流程和主要的程序,并利用PROTUES軟件完成性能仿真測試。【關鍵詞】: AT89C51;DS18B20;上下限報警;液晶顯示;【ABSTRACT】With the progress of The Times and development of the application of single chip microcomputer, is con

4、tinuously to further, because it has a strong function, small volume, low power consumption, the price is cheap, reliable work, use is convenient wait for a characteristic, especially suitable for related control and system design. This paper using the single chip microcomputer AT89C51 as the core c

5、ontrol device, combining DS18B20 sensors completed a digital thermometer design, measuring results by the liquid crystal display specific. When measuring temperature more than set temperature fluctuation limit, LED lights flicker the alarm. The digital temperature measuring instrument design of meas

6、urement accuracy, error is small, the function is more strong functions. This paper gives the specific hardware circuit, software flow and the main program, and use PROTUES software performance simulation test.【Keywords】: AT89C51; DS18B20; Upper Limit Alarm; LCD display;一、引言(一)課題研究的背景及意義1.設計背景溫度是日常生

7、活最常用到的一個物理量。人民的生活與環(huán)境與溫度息息相關,在工業(yè)生產(chǎn)過程中要實時測量溫度,在農(nóng)業(yè)生產(chǎn)中也離不開溫度的測量,因此研究溫度的測量方法和裝置具有重要意義。測量溫度最常用的工具就是溫度計。最常用的溫度計有酒精溫度計、水銀溫度計、氣體溫度計等利用物質(zhì)的物理特性制作的傳統(tǒng)溫度計,這類溫度計原理簡單,價格便宜,但是讀數(shù)不方便、測溫時間長、精度低、測量范圍有限,如果使用不當還有一定的危險性,可能造成環(huán)境污染等不良后果,其適用范圍受到了較大限制。隨著新技術的不斷開發(fā)與應用,單片機技術在近年來發(fā)展十分迅速。單片機具有集成度高,通用性好,功能強,特別是體積小,重量輕,耗能低,可靠性高,抗干擾能力強和使

8、用方便等獨特優(yōu)點,已經(jīng)被廣泛的應用于工業(yè)、農(nóng)業(yè)和大眾日常生活當中。利用單片機為核心器件制作的電子溫度計,能夠快速有效的解決溫度的采集和數(shù)據(jù)處理等一系列問題,很好的克服了傳統(tǒng)溫度計所帶來的各種不便,具有廣泛的適用性。本文將利用單片機為主要控制器件,以溫度傳感器構建數(shù)據(jù)采集電路,對溫度進行實時檢測與控制,將測量結(jié)果利用液晶屏顯示。本設計具有讀數(shù)方便,測溫范圍廣,測溫準確安全等優(yōu)點,具有一定的實用意義。2.設計意義1)數(shù)字溫度計以單片機作為核心控制器件,通過構建數(shù)據(jù)采集模塊、顯示模塊和報警模塊,將所測溫度采集、處理后顯示。整個設計電路結(jié)構簡單、功能清晰、讀數(shù)方便、顯示清晰,可用于工業(yè)、農(nóng)業(yè)生產(chǎn)或科研

9、實驗室使用。2)通過整個設計的開展,學習相關文獻的檢索、專業(yè)軟件的學習能力,了解現(xiàn)代化儀器儀表的設計流程,將以往所學理論與實踐有機結(jié)合,熟悉單片機系統(tǒng)開發(fā)、研制的過程,軟硬件設計的方法、內(nèi)容及步驟,提高自身專業(yè)水平與素養(yǎng)。(二)設計方案論證根據(jù)設計思路,為了能更好的讓數(shù)字溫度測量儀更加準確的顯示數(shù)據(jù),進行以下的方案論證。1.芯片選擇 本設計選用美國ATMEL公司生產(chǎn)的低功耗,高性能CMOS8位單片機,片內(nèi)含4KB的可編程的Flash只讀程序存儲器,兼容標準8051指令系統(tǒng)及引腳,并集成了 Flash 程序存儲器,既可在線編程(ISP),也可用傳統(tǒng)方法進行編程的AT89C51芯片。低價位的AT8

10、9C51單片機可應用于許多高性價比的場合,可靈活應用于各種控制領域,對于簡單的測溫系統(tǒng)已經(jīng)足夠。2.傳感器選擇傳統(tǒng)的測溫元件有熱電偶和熱電阻。而熱電偶和熱電阻測出的一般都是電壓,再轉(zhuǎn)換成對應的溫度,需要比較多的外部硬件支持,其缺點有:硬件電路復雜;軟件調(diào)試復雜;制作成本高。本設計采用溫度傳感器DS18B20,可以直接讀出被測溫度值,而且采用三線制與單片機相連,減少了外部的硬件電路,具有成本低和易使用的特點。由數(shù)字溫度計DS18B20和微控制器AT89C51構成的溫度裝置,它直接輸出溫度的數(shù)字信號到微控制器。3.顯示器件選擇顯示元件有很多種,其中數(shù)碼管顯示方案簡單易行,但所需的元件較多,且不容易

11、進行操作,可讀性差,顯示格式受限制。本設計采用液晶顯示器件,液晶顯示平穩(wěn)、省電、美觀,更容易實現(xiàn)題目要求,可操作性強,也易于讀數(shù),采用RT1602兩行十六個字符的顯示,能同時顯示其它的信息如日期、時間、星期、溫度。 (三)設計要求及設計思路1.設計要求1) 能夠測量出溫度值;2) 能夠顯示-10100的溫度;3) 測量誤差 < 1;4) 可設定溫度的上下限,過限報警;5) 利用PROTUES軟件能完成性能仿真測試。 2.設計思路1)根據(jù)設計要求,選擇AT89C51單片機作為整個核心控制器件,完成對轉(zhuǎn)換好的數(shù)字信號的采集以及計算出被測溫度的值并送入顯示電路模塊; 2)采用DS18B20作為

12、溫度傳感器,實現(xiàn)對輸入的溫度值的采集與轉(zhuǎn)換為數(shù)字值,直接連接單片機; 3)所測溫度結(jié)果采用液晶顯示; 4)轉(zhuǎn)換后的溫度值與設置的溫度報警限比較,超過上下限時,控制LED燈閃爍報警。二、硬件設計(一)總設計框圖本設計以89C51單片機為核心器件,整體硬件電路包括:傳感器數(shù)據(jù)采集電路,單片機主控電路、溫度顯示電路,上下限設定及報警電路??傇O計框圖主要由主控制器AT89C51、電源、單片機時鐘和復位電路、報警設置、液晶顯示、溫度傳感器組成。總設計框圖見圖2-1。P2.4P0口 主控制器 AT89C51P1口P2.3液晶顯示溫度傳感器電源按鍵輸入報警設置時鐘和復位電路 圖2-1 總設計框圖(二)硬件電

13、路設計1.主控制器AT89C51AT89C51是美國ATMEL公司生產(chǎn)的一種高性能、低功耗、帶4K字節(jié)閃存可編程可擦除只讀存儲器(FPEROMFlash Programmable and Erasable Read Only Memory)的8位CMOS單片微型計算機芯片。 AT89C51可靠性高、實時性好、速度快、系統(tǒng)掉電后重要數(shù)據(jù)和狀態(tài)信息不會丟失 , 其性能價格比遠高于同類芯片,因此使用也更加廣泛。AT89C51單片機為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。1)內(nèi)部結(jié)構P0.0-P0.7P2.0-P2.7程序地址寄存器緩沖器PC增1PCDPTRPSW中斷、串行口及定時器P1鎖

14、存器P1驅(qū)動器P3驅(qū)動器P3鎖存器B寄存器暫存器1暫存器2SPACCALUP0驅(qū)動器P2驅(qū)動器RAM地址寄存器RAM 128 P0鎖存器P2鎖存器4KB ROMVccVssP1.0-P1.7P3.0-P3.7PSEN 指令譯碼器指令寄存器定時控制OSCEARSTALEAT89C51芯片為40引腳雙列直插式封裝,其內(nèi)部結(jié)構框圖見圖2-2。 圖2-2 AT89C51內(nèi)部框圖2)主要技術指標和特性a.與MCS-51 指令系統(tǒng)兼容 b.4K字節(jié)可編程閃爍存儲器 c.壽命:1000寫/擦循環(huán) d.數(shù)據(jù)保留時間:10年 e.全靜態(tài)工作:0Hz-24MHz f.三級程序存儲器鎖定 g.128×8位

15、內(nèi)部RAM h.32可編程I/O線 i.兩個16位定時器/計數(shù)器 j.5個中斷源 k.可編程串行通道 l.低功耗的閑置和掉電模式 m.片內(nèi)振蕩器和時鐘3)引腳排列AT89C51的引腳排列見圖2-3。圖2-3 AT89C51的引腳排列VCC供電電壓。GND接地。 P0口P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門電流。當P0口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的低八位。在FIASH編程時,P0 口作為原碼輸入口,當FIASH進行校驗時,P0輸出原碼,此時P0外部必須接上拉電阻。 P1口P1口是一個內(nèi)部提供上拉電阻的8位雙向

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

17、行讀寫時,P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗時接收高八位地址信號和控制信號。 P3口P3口管腳是8個帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個TTL門電流。當P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。P3口除了一般I/O線的功能外,還具有更為重要的第二功能。RST復位輸入。當振蕩器復位器件時,要保持RST腳兩個機器周期的高電平時間。ALE 當訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。外部程序存儲器的選通信號

18、。在由外部程序存儲器取指期間,每個機器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的/PSEN信號將不出現(xiàn)。 當保持低電平時,則在此期間外部程序存儲器(0000H-FFFFH),不管是否有內(nèi)部程序存儲器。注意加密方式1時,將內(nèi)部鎖定為RESET;當端保持高電平時,此間內(nèi)部程序存儲器。XTAL1反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。 XTAL2來自反向振蕩器的輸出。單片機的P0口接上排阻與顯示屏LM016L的D0D7相連接,P2.0與P2.2口分別與顯示屏LM016L的RS,E腳相連,組成顯示模塊。P1.0P1.3口接按鍵開關,用來調(diào)節(jié)上下限,組成按鍵輸入模塊。P2.3口

19、與LED燈和按鍵開關相連接,組成報警電路。P2.4口與約4.7K左右的上拉電阻和U2的DQ口相連,組成溫度傳感模塊與按鍵相連,RST接電容C3與電容R1,組成復位電路。XTAL1與XTAL2并聯(lián)接上電容C1、C2、晶振,組成時鐘電路。2.復位與時鐘電路復位電路:單片機的復位電路見圖2-4。該復位電路采用手動復位與上電復位相結(jié)合的方式。當按下按鍵S1時,VCC通過R1電阻給復位輸入端口一個高電平,實現(xiàn)復位功能,即手動復位。上電復位就是VCC通過電阻R1和電容C構成回路,該回路是一個對電容C3充電和放電的電路,所以復位端口得到一個周期性變化的電壓值,并且有一定時間的電壓值高于CPU復位電壓,實現(xiàn)上

20、電復位功能。由于微機電路是時序數(shù)字電路,它需要穩(wěn)定的時鐘信號,因此在電源上電時,只有當VCC超過4.75V低于5.25V以及晶體振蕩器穩(wěn)定工作時,復位信號才被撤除,微機電路開始正常工作。 圖2-4 復位電路時鐘電路:89C51中有一個用于構成內(nèi)部振蕩器的高增益反相放大器,引腳XTAL1和XTAL2分別是該放大器的輸入端和輸出端。這個放大器與作為反饋元件的片外石英晶體或陶瓷諧振器一起構成自激振蕩器,外接石英晶體(或陶瓷諧振器)及電容C1、C2接在放大器的反饋回路中構成并聯(lián)振蕩電路,對外接電容C1、C2雖然沒有十分嚴格的要求,但電容容量的大小會輕微影響振蕩頻率的高低、振蕩器工作的穩(wěn)定性、起振的難易

21、程度及溫度穩(wěn)定性,如果使用石英晶體,我們推薦電容使用30pF士10pF,而如果使用陶瓷諧振器,建議選擇40pF士l0pF。 時鐘電路見圖2-5。圖2-5 時鐘電路3.溫度傳感電路1)DS18B20性能a.獨特的單線接口僅需一個端口引腳進行通信。b.簡單的多點分布應用。c.無需外部器件。d.可通過數(shù)據(jù)線供電。e.零待機功耗。f.溫度數(shù)字量轉(zhuǎn)換時間200ms,12位分辨率時最多在750ms內(nèi)把溫度轉(zhuǎn)換為數(shù)字。g.應用包括溫度控制、工業(yè)系統(tǒng)、消費品、溫度計和任何熱感測系統(tǒng)負壓特性:電源極性接反時,傳感器不會因發(fā)熱而燒毀,但不能正常工作。2)DS18B20外形及內(nèi)部結(jié)構DS18B20內(nèi)部結(jié)構見圖2-6

22、 ,主要由4部分組成:64位ROM、溫度傳感器、非揮發(fā)的溫度報警觸發(fā)器TH和TL、配置寄存器。 64位ROM和單線接 口 高速緩存存儲器 存儲器和控制器8位CRC生成器溫度傳感器 低溫觸發(fā)器TL高溫觸發(fā)器TH配置寄存器電源檢測I/OVDD圖2-6 DS18B20的內(nèi)部結(jié)構DS18B20的外形及管腳排列見圖2-7。圖2-7 DS18B20的外形及管腳排列3)DS18B20的測溫原理DS18B20測溫原理:低溫度系數(shù)晶振的振蕩頻率受溫度影響很小,用于產(chǎn)生固定頻率的脈沖信號送給計數(shù)器1。高溫度系數(shù)晶振隨溫度變化其振蕩率明顯改變,所產(chǎn)生的信號作為計數(shù)器2的脈沖輸入。計數(shù)器1和溫度寄存器被預置在55所對

23、應的一個基數(shù)值。計數(shù)器1對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行減法計數(shù),當計數(shù)器1的預置值減到0時,溫度寄存器的值將加1,計數(shù)器1的預置將重新被裝入,計數(shù)器1重新開始對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行計數(shù),如此循環(huán)直到計數(shù)器2計數(shù)到0時,停止溫度寄存器值的累加,此時溫度寄存器中的數(shù)值即為所測溫度。斜率累加器比較LSB置位/清除預置低溫度系數(shù)晶振預置計數(shù)器1加1溫度寄存器=0高溫度系數(shù)晶振計數(shù)器2=0停止 圖2-8 DS18B20的測溫原理框圖單總線接一個約4.7K左右的上拉電阻,這樣,當總線空閑時,其狀態(tài)為高電平。DS18B20接線原理圖見圖2-9。圖2-9 DS18B20接線原理圖4.液晶顯示電

24、路液晶電路接線原理圖見圖2-10。圖2-10 液晶電路接線原理圖 LM016L引腳介紹:Vss(1腳):一般接地。Vdd(2腳):接電源。Vee(3腳):液晶顯示器對比度調(diào)整端,接電源時對比度最弱,接地時對比度最高RS(4腳):RS為寄存器選擇,高電平1時選擇數(shù)據(jù)寄存器、低電平0時選擇指令寄存器。R/W(5腳):R/W為讀寫信號線,高電平(1)時進行讀操作,低電平(0)時進行寫操作。E(6腳):E(或EN)端為使能(enable)端,下降沿使能。DB0(7腳):低4位三態(tài)、 雙向數(shù)據(jù)總線 0位(最低位)。DB1(8腳):低4位三態(tài)、 雙向數(shù)據(jù)總線 1位。DB2(9腳):低4位三態(tài)、 雙向數(shù)據(jù)總

25、線 2位。DB3(10腳):低4位三態(tài)、 雙向數(shù)據(jù)總線 3位。DB4(11腳):高4位三態(tài)、 雙向數(shù)據(jù)總線 4位。DB5(12腳):高4位三態(tài)、 雙向數(shù)據(jù)總線 5位。 DB6(13腳):高4位三態(tài)、 雙向數(shù)據(jù)總線 6位。DB7(14腳):高4位三態(tài)、 雙向數(shù)據(jù)總線 7位(最高位)。寄存器選擇控制見表2.1。表2.1寄存器選擇控制RSR/W操作說明00寫入指令寄存器(清除屏等)01讀busy flag(DB7),以及讀取位址計數(shù)器(DB0DB6)值10寫入數(shù)據(jù)寄存器(顯示各字型等)11從數(shù)據(jù)寄存器讀取數(shù)據(jù)用89C51的P0口作為數(shù)據(jù)線,用P2.0、P2.2分別作為LCD的E、RS。其中E是下降沿

26、觸發(fā)的片選信號,RS是寄存器選擇信號本模塊設計要點如下:顯示模塊初始化:首先清屏,再設置接口數(shù)據(jù)位為8位,顯示行數(shù)為1行,字型為5×7點陣,然后設置為整體顯示,取消光標和字體閃爍,最后設置為正向增量方式且不移位。向LCD的顯示緩沖區(qū)中送字符,程序中采用2個字符數(shù)組,一個顯示字符,另一個顯示電壓數(shù)據(jù),要顯示的字符或數(shù)據(jù)被送到相應的數(shù)組中,完成后再統(tǒng)一顯示.首先取一個要顯示的字符或數(shù)據(jù)送到LCD的顯示緩沖區(qū),程序延時2.5ms,判斷是否夠顯示的個數(shù),不夠則地址加一取下一個要顯示的字符或數(shù)據(jù)。5.按鍵輸入電路選用四個按鍵開關,分別與P1.0,P1.1,P1.2,P1.3口相連。與P1.0口

27、相接的按鍵表示“上限加1”;與P1.1口相接的按鍵表示“上限減1”;與P1.2口相接的按鍵表示“下限加1”;與P1.3口相接的按鍵表示“下限減1”。設計中默認上下限為1030。按鍵輸入電路連接圖見圖2-11。圖2-11 按鍵輸入電路6.報警電路由LED燈與按鍵開關與單片機AT89C51的P2.3口相連。默認上下限為1030,顯示屏顯示的溫度不在1030內(nèi),D1燈閃爍實行報警。當報警時,可以調(diào)節(jié)上下限,擴大上下限的范圍,使顯示的溫度在其內(nèi),從而停止報警。也可以通過斷開與D1相連的開關,使其斷電,停止報警。報警電路連接圖見圖2-12。圖2-12 報警電路具體電路仿真圖詳見附錄一。三、軟件設計(一)

28、主程序的設計整個設計的軟件部分用C語言編寫。主程序的主要功能是負責讀出并處理DS18B20的測量的當前溫度值,溫度的實時顯示,并根據(jù)設置的上下限判斷是否報警。系統(tǒng)開始運行時,溫度傳感器測量并計算溫度值通過P2.4口傳輸進單片機里進行處理,經(jīng)過處理后的數(shù)據(jù)再通過P0口傳輸?shù)斤@示屏顯示。通過按鍵設置溫度報警上下限,當超過報警界限時單片機將相應的數(shù)據(jù)通過P2.3口傳輸進行光報警。其程序流程見圖3-1。結(jié)束報警模塊,LED燈閃爍是否越限?是開始初始化調(diào)用溫度傳感器模塊DS18B2存在?錯誤處理處理溫度值轉(zhuǎn)換送AT89C51處理按鍵掃描按鍵顯示模塊,液晶顯示否是否圖3-1 主程序流程圖(二)子程序的設計

29、1.讀出溫度子程序讀出溫度子程序:讀出溫度子程序的主要功能是讀出RAM中的9字節(jié),在讀出時需要進行CRC校驗,校驗有錯時不進行溫度數(shù)據(jù)的改寫。見圖3-2。結(jié)束移入溫度暫存器發(fā)跳過ROM命令發(fā)讀取溫度命令發(fā)DS18B20復位命圖3-2 讀出溫度子程序2.溫度轉(zhuǎn)換命令子程序發(fā)跳過ROM命令發(fā)溫度轉(zhuǎn)換開始命令發(fā)DS18B20復位命令結(jié)束溫度轉(zhuǎn)換命令子程序:溫度轉(zhuǎn)換命令子程序主要是發(fā)溫度轉(zhuǎn)換開始命令,當采用12位分辯率時轉(zhuǎn)換時間約為750ms,在本程序設計中采用1s顯示程序延時法等待轉(zhuǎn)換的完成。見圖3-3。圖3-3 溫度轉(zhuǎn)換命令子程序3.計算溫度子程序開始結(jié)束計算整數(shù)位溫度BCD碼計算小數(shù)位溫度BCD

30、碼置“+”標志溫度值取補碼置“-”標溫度零下?計算溫度子程序:計算溫度子程序?qū)AM中讀取值進行BCD碼的轉(zhuǎn)換運算,并進行溫度值正負的判定。見圖3-4。圖3-4 設計溫度子程序具體源程序詳見附錄二。四、仿真與調(diào)試(一)軟件調(diào)試軟件調(diào)試的主要任務是排查錯誤,其中錯誤類型主要包括邏輯錯誤和功能錯誤,有些錯誤是顯性的,而有些是隱形的,可以通過仿真開發(fā)系統(tǒng)發(fā)現(xiàn)逐步改正。Proteus軟件可以對以微控制器的設計和所有的周圍電子器件一起仿真為基礎,用戶甚至可以實時采用例如LED/LCD、鍵盤等動態(tài)外設模型來對設計進行交互的仿真。Proteus支持的微處理芯片包括8051系列、AVR系列、PIC系列、HC1

31、1系列及Z80等等。Proteus可以完成單片機系統(tǒng)原理圖電路繪制,更為顯著的特點是可以與keil軟件結(jié)合進行編程仿真調(diào)試。1.源程序的調(diào)試結(jié)果本系統(tǒng)的調(diào)試主要以軟件為主,其中,系統(tǒng)電路圖的繪制和仿真采用Proteus軟件,而程序方面,用源程序,用Keil軟件將程序?qū)懭雴纹瑱C。程序無誤,并生成.hex文件。程序?qū)懭雴纹瑱C顯示正確結(jié)果 見圖4-1。圖4-1 程序?qū)懭雴纹瑱C顯示正確結(jié)果 2.仿真結(jié)果顯示上下限默認為1030時 顯示屏中S代表上限,X代表下限。當溫度為11時,燈不閃爍,不報警。見圖4-2。 圖4-2 顯示11,不報警當溫度為31,超過上下限,燈閃爍報警。見圖4-3。圖4-3 超過上限報警調(diào)節(jié)按鍵開關改變上下限,使S=28 X=16。將“上限減一”鍵按2下,“下限加一”鍵按6下,可以得到S=28 X=16。當溫度為11,燈閃爍報警。 見圖

溫馨提示

  • 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

提交評論