畢業(yè)設(shè)計(jì)(論文)基于單片機(jī)的倉庫測(cè)溫巡檢系統(tǒng)_第1頁
畢業(yè)設(shè)計(jì)(論文)基于單片機(jī)的倉庫測(cè)溫巡檢系統(tǒng)_第2頁
畢業(yè)設(shè)計(jì)(論文)基于單片機(jī)的倉庫測(cè)溫巡檢系統(tǒng)_第3頁
畢業(yè)設(shè)計(jì)(論文)基于單片機(jī)的倉庫測(cè)溫巡檢系統(tǒng)_第4頁
畢業(yè)設(shè)計(jì)(論文)基于單片機(jī)的倉庫測(cè)溫巡檢系統(tǒng)_第5頁
已閱讀5頁,還剩36頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、本 科 畢 業(yè) 設(shè) 計(jì)基于單片機(jī)的倉庫測(cè)溫巡檢系統(tǒng)Warehouse temperature measurement and control system based on the single chip microcomputer學(xué) 院: 電子工程學(xué)院 專業(yè)班級(jí): 電子信息工程 D電子091班 學(xué)生姓名: 學(xué) 號(hào):指導(dǎo)教師: 2013年 6 月畢業(yè)設(shè)計(jì)中文摘要摘 要:隨著單片機(jī)技術(shù)的飛速發(fā)展,單片機(jī)在各個(gè)領(lǐng)域得到了廣泛的應(yīng)用。在人類的生活環(huán)境中,溫度扮演著非常重要的角色。倉庫溫度控制一直是智能控制方面的一塊重點(diǎn),多點(diǎn)測(cè)溫巡檢系統(tǒng)的實(shí)現(xiàn)使得火災(zāi)等自然災(zāi)害能夠提前預(yù)警,給人們的生產(chǎn)生活帶來了諸多

2、好處。因此,本設(shè)計(jì)基于單片機(jī)展開對(duì)溫度巡檢系統(tǒng)的研究。 本課題是基于單片機(jī)的測(cè)溫巡檢系統(tǒng)設(shè)計(jì)。是一種以單片機(jī)為控制核心,具有實(shí)時(shí)溫度檢測(cè)、顯示、報(bào)警、與計(jì)算機(jī)串行通信等功能的多點(diǎn)溫度測(cè)量巡檢系統(tǒng)。采用AT89C51單片機(jī)為核心控制模塊,一總線結(jié)構(gòu)的DS18B20智能溫度傳感器,實(shí)現(xiàn)溫度實(shí)時(shí)采集,信號(hào)處理,數(shù)據(jù)通信,經(jīng)過單片機(jī)處理后在LCD上顯示。外圍硬件部分包括:鍵盤模塊、顯示模塊、報(bào)警模塊、RS232通信模塊等。當(dāng)溫度超過系統(tǒng)設(shè)定閥值時(shí)會(huì)自動(dòng)啟動(dòng)聲光報(bào)警,本設(shè)計(jì)還增加了RS232串行通信接口,方便計(jì)算機(jī)遠(yuǎn)程數(shù)據(jù)統(tǒng)計(jì)與操作。系統(tǒng)具有抗干擾性強(qiáng)、結(jié)構(gòu)簡(jiǎn)單、穩(wěn)定性好、具有一定的工程價(jià)值。關(guān)鍵詞:

3、單片機(jī), AT89C51, DS18B20,溫度檢測(cè)畢業(yè)設(shè)計(jì)外文摘要Abstract: This topic is based on single chip micro computer temperatures measurement and controlled system designed. Is a single-chip microcomputer to control the core, with real-time temperature detection, display, alarm, and computer serial communication and other

4、 functions of the multi-point temperature measurement system. Using AT89C51 micro controller as the core control module, intelligent temperature sensor DS18B20 bus structure, to achieve real-time temperature acquisition, signal processing, data communication, through the display on the LCD single-ch

5、ip processing. Peripheral hardware part includes: the keyboard module, display module, alarm module, RS232 communication module, etc. When setting the threshold temperature exceeds the system will automatically start sound and light alarm, this design also increased the RS232 serial communication in

6、terface, remote data convenient computer statistics and operation. System has strong anti-jamming capability, strong stability,HYPERLINK file:/C:/Users/ADMINI1/AppData/Local/Temp/360zip$Temp/360$1/%E3%80%8A%E5%9F%BA%E4%BA%8E%E5%8D%95%E7%89%87%E6%9C%BA%E7%9A%84%E6%B5%8B%E6%B8%A9%E5%B7%A1%E6%A3%80%E7%

7、B3%BB%E7%BB%9F%E3%80%8B_PAPERRATER%E8%AE%BA%E6%96%87%E6%A3%80%E6%B5%8B%E6%8A%A5%E5%91%8A/cache/results/25.html easily to use, simpled operation, etc. Keywords: SCM ,AT89C51,DS18B20,Temperature detection 目錄 TOC o 1-3 h z u HYPERLINK l _Toc264879689 第1章 緒 論 PAGEREF _Toc264879689 h 1 HYPERLINK l _Toc26

8、4879691 1.1設(shè)計(jì)的目的和意義 PAGEREF _Toc264879691 h 1 HYPERLINK l _Toc264879692 1.2國內(nèi)外研究現(xiàn)狀和發(fā)展趨勢(shì)1 HYPERLINK l _Toc264879693 第2章 倉庫測(cè)溫巡檢系統(tǒng)方案2 HYPERLINK l _Toc264879694 2.2硬件總體方案設(shè)計(jì)與論證2 HYPERLINK l _Toc264879695 2.2.1方案設(shè)計(jì)2 HYPERLINK l _Toc264879696 2.2.2方案論證3 HYPERLINK l _Toc264879697 2.4系統(tǒng)硬件總方案3 HYPERLINK l _To

9、c264879698 第3章 倉庫測(cè)溫巡檢系統(tǒng)硬件設(shè)計(jì)4 HYPERLINK l _Toc264879705 3.1 單片機(jī)AT89C51介紹4 HYPERLINK l _Toc264879699 3.1.1單片機(jī)AT89C51基本知識(shí)4 HYPERLINK l _Toc264879700 3.1.2單片機(jī)AT89C51各個(gè)I/O口介紹5 HYPERLINK l _Toc264879701 3.1.3時(shí)鐘電路7 HYPERLINK l _Toc264879699 3.1.1復(fù)位電路8 HYPERLINK l _Toc264879705 HYPERLINK l _Toc264879705 3.2

10、 溫度傳感器的選則8 HYPERLINK l _Toc264879710 3.2.1 DS18B20簡(jiǎn)介9 HYPERLINK l _Toc264879711 3.2.2 DS18B20 的性能特點(diǎn)9 HYPERLINK l _Toc264879712 3.2.3 DS18B20的內(nèi)部結(jié)構(gòu)9 HYPERLINK l _Toc264879713 3.2.4 DS18B20的工作時(shí)序圖10 HYPERLINK l _Toc264879711 3.2.5 DS18B20 的測(cè)溫原理11 HYPERLINK l _Toc264879711 3.2.6 DS18B20 的測(cè)溫流程圖13 HYPERLIN

11、K l _Toc264879712 3.2.7 DS18B20與AT89C51單片機(jī)連接電路13 HYPERLINK l _Toc264879714 3.3 1602LCD液晶顯示屏14 HYPERLINK l _Toc264879715 3.3.1 LCD1602液晶顯示屏的技術(shù)參數(shù)14 HYPERLINK l _Toc264879716 3.3.2 LCD1602的引腳說明15 HYPERLINK l _Toc264879717 3.3.3 LCD1602控制指令說明16 HYPERLINK l _Toc264879711 3.2.4 LCD1602基本操作時(shí)序16 HYPERLINK l

12、 _Toc264879718 3.3.5 LCD液晶顯示屏與單片機(jī)接口電路設(shè)計(jì)17 HYPERLINK l _Toc264879719 3.4 鍵盤模塊設(shè)計(jì)18 HYPERLINK l _Toc264879720 3.5 報(bào)警模塊設(shè)計(jì)18 HYPERLINK l _Toc264879711 3.6 RS232串行通信19 HYPERLINK l _Toc264879711 3.7電源電路設(shè)計(jì)20 HYPERLINK l _Toc264879721 第4章 倉庫測(cè)溫巡檢系統(tǒng)軟件設(shè)計(jì)20 HYPERLINK l _Toc264879722 4.1 主程序流程圖20 HYPERLINK l _Toc

13、264879723 4.2 溫度處理子程序設(shè)計(jì)21 HYPERLINK l _Toc264879724 4.3 顯示模塊子程序設(shè)計(jì)24 HYPERLINK l _Toc264879725 4.4 溫度報(bào)警值程序設(shè)計(jì)25 HYPERLINK l _Toc264879727 第5章 系統(tǒng)軟硬件的調(diào)試26 HYPERLINK l _Toc264879729 5.1 系統(tǒng)硬件調(diào)試29 HYPERLINK l _Toc264879730 5.2 系統(tǒng)軟件調(diào)試29 HYPERLINK l _Toc264879711 5.2.1 KeilC51調(diào)試30 HYPERLINK l _Toc264879711 5

14、.2.2 Proteus調(diào)試33 HYPERLINK l _Toc264879728 5.3 系統(tǒng)仿真26 HYPERLINK l _Toc264879731 總 結(jié)34 HYPERLINK l _Toc264879711 參考文獻(xiàn)34 HYPERLINK l _Toc264879733 致 謝35 HYPERLINK l _Toc264879734 附錄 程序清單36 HYPERLINK l _Toc264879735 附錄 系統(tǒng)原理圖36第一章 緒論1.1設(shè)計(jì)的目的和意義溫度是平時(shí)生產(chǎn)生活中不可或缺的自然參數(shù)。人們通常使用溫度這一物理量來表示物體冷和熱的程度,微觀定義上來說是物體分子的熱運(yùn)

15、動(dòng)引起的。分子運(yùn)動(dòng)越快,物體溫度就會(huì)顯得越高,反之,愈慢愈冷。溫標(biāo)是一種用來檢測(cè)溫度具體數(shù)值的尺度標(biāo)準(zhǔn)。 溫度在人類生產(chǎn)和生活中扮演著非常重要的角色,從生活到工作溫度一直伴隨并影響著你。自18世紀(jì)工業(yè)革命以來,工業(yè)發(fā)展革新一直與溫度保持著密切聯(lián)系。溫度不僅對(duì)工業(yè)而言影響如此廣泛,在農(nóng)業(yè)領(lǐng)域中溫度也占有著很大的影響比例。因此,無論是工業(yè)生產(chǎn)加工還是農(nóng)作物生長收獲的過程,都不能離開溫度。溫度檢測(cè)和控制可以使人類生產(chǎn)生活更加科學(xué)化、合理化、便捷化。本設(shè)計(jì)圍繞應(yīng)用在倉庫的溫度的巡檢與報(bào)警展開相應(yīng)的研究工作。隨著單片機(jī)技術(shù)的拓展與利用,近年來單片機(jī)技術(shù)逐漸革新,已經(jīng)進(jìn)入高性能單片機(jī)的發(fā)展階段。航天、軍事

16、、醫(yī)療、農(nóng)業(yè)、化工等各個(gè)行業(yè)已經(jīng)逐漸離不開單片機(jī)的廣泛使用。傳統(tǒng)方式的測(cè)溫不僅浪費(fèi)資源人力而且精度差不能達(dá)到實(shí)時(shí)監(jiān)測(cè)的目的。單片機(jī)的產(chǎn)生使得溫度信號(hào)采集和信息處理方面變得更加簡(jiǎn)單,快速,效率。測(cè)溫傳感器做工不同,信號(hào)采集的精度也不相同,因此對(duì)數(shù)據(jù)采集的精度和控制方式也不相同。1.2國內(nèi)外研究現(xiàn)狀和發(fā)展趨勢(shì)國外溫度測(cè)控系統(tǒng)研究 1600年,伽厘略研究出了氣體溫度計(jì),開啟了人們研究溫度這一物理量的先河。自1970年開始,國外科學(xué)家就著手探索溫度控制這一領(lǐng)域。國外已經(jīng)陸續(xù)推出多種溫度傳感器,并且可靠性更高,測(cè)量精度更準(zhǔn)確。國外逐漸開始運(yùn)用9到12位A/D轉(zhuǎn)換器,分辨率可以達(dá)到0.5-0.0625。美

17、國達(dá)拉斯半導(dǎo)體公司新研制的DS1624型高分辨率的智能溫度傳感器,分辨率高達(dá)0.03125,測(cè)溫精度位0.2。目前,國外的溫控技術(shù)正朝著無人化,自動(dòng)化,高精度的方面發(fā)展。(2)國內(nèi)溫度測(cè)控系統(tǒng)研究 相比與國外,我國對(duì)于溫度控制與測(cè)量這一領(lǐng)域的研究則較晚,大約開始于1980年左右。我國溫度測(cè)控領(lǐng)域技術(shù)離產(chǎn)業(yè)化,工業(yè)化還有很大一段距離,在實(shí)際生產(chǎn)生活中還有大量問題困擾著我們。我國溫控技術(shù)的發(fā)展一直存在著硬件系統(tǒng)差,領(lǐng)域窄,產(chǎn)量少,產(chǎn)業(yè)化程度低,環(huán)境保護(hù)意識(shí)落后,基礎(chǔ)的研究資源少等缺點(diǎn)。近年來國內(nèi)經(jīng)濟(jì)發(fā)展迅速,溫控測(cè)控這一市場(chǎng)即將面臨國外產(chǎn)品的沖擊。第二章 倉庫測(cè)溫巡檢系統(tǒng)的方案考慮到本系統(tǒng)設(shè)計(jì)成本

18、和現(xiàn)實(shí)操作,我選擇AT89C51單片機(jī)作為本設(shè)計(jì)的核心模塊。目前,AT89C51應(yīng)用廣泛,價(jià)格便宜,而且功能更齊全。因此,將AT89C51作為接口芯片使用,是非常睿智的。關(guān)于溫度傳感器的選擇,我認(rèn)為達(dá)拉斯公司生產(chǎn)的DS18B20傳感器可以勝任這一項(xiàng)工作。單片機(jī)可以直接從DS18B20讀取轉(zhuǎn)換后的溫度值,而且不需要另外接A/D轉(zhuǎn)換器,非常方便。而且多個(gè)DS18B20可以用單總線結(jié)構(gòu)來連接,只需要一個(gè)I/O口就可以完成多點(diǎn)測(cè)量。其物理性能穩(wěn)定,測(cè)量精度高,在090之間,最大線性偏差小于1。系統(tǒng)要完成的設(shè)計(jì)功能如下:對(duì)倉庫各地點(diǎn)溫度參數(shù)的實(shí)時(shí)采集,再通過溫度傳感器和單片機(jī)對(duì)數(shù)據(jù)進(jìn)一步的處理,實(shí)時(shí)反饋

19、到LCD上。實(shí)現(xiàn)智能聲光報(bào)警??垢蓴_性好,運(yùn)行穩(wěn)定,LCD顯示簡(jiǎn)潔友好。采用RS232串行通訊方式,將溫度數(shù)據(jù)實(shí)時(shí)傳送到計(jì)算機(jī),實(shí)現(xiàn)遠(yuǎn)程通信。系統(tǒng)自動(dòng)存儲(chǔ)溫度數(shù)據(jù)。測(cè)溫范圍:-55+125測(cè)溫精度:正負(fù)0.52.2 方案選擇2.2.1 方案一 本倉庫測(cè)溫巡檢系統(tǒng)設(shè)計(jì)可以使用熱電偶,熱敏電阻之類的元器件,雖然其線性度較好,但在所測(cè)溫的要求內(nèi),測(cè)溫精度差2,對(duì)于小于1的溫度信號(hào)是不適用的。在電路布局設(shè)計(jì)方面中較為繁瑣,相比之下總成本也比較高。2.2.2 方案二 也可以考慮使用智能溫度傳感器DS18B20,結(jié)合單片機(jī)電路設(shè)計(jì),采用多只溫度傳感器。采用并聯(lián)的方式把各個(gè)溫度傳感器分布在不同位置,由DS1

20、8B20測(cè)溫后后進(jìn)行數(shù)值轉(zhuǎn)換,再由LCD顯示出實(shí)時(shí)溫度。此方案電路設(shè)計(jì)簡(jiǎn)潔,設(shè)計(jì)成本較低,在C語言編程時(shí)也非常簡(jiǎn)便。2.3 方案論證比較以上兩種方案,我覺得方案二工作穩(wěn)定、系統(tǒng)響應(yīng)快、遠(yuǎn)距離通信、體積小、耗能低、外圍電路簡(jiǎn)單、精簡(jiǎn)了系統(tǒng)工作時(shí)間、軟件設(shè)計(jì)方便快捷。因此,本設(shè)計(jì)中選擇方案二。如圖1所示:它由三部分組成核心控制模塊采用AT89C51單片機(jī)2)顯示部分采用LCD1602實(shí)現(xiàn)溫度顯示溫度采集部分采用DS18B20溫度傳感器 數(shù)據(jù)處理 鍵盤模塊 AT89C51 DS18B20 溫度采集LCD 顯示模塊晶振電路 報(bào)警模塊 復(fù)位電路 圖1 系統(tǒng)硬件方案2.4 系統(tǒng)硬件總方案課題設(shè)計(jì)的硬件部分

21、由AT89C51單片機(jī)、DS18B20、LCD1602、排阻以及若干電容、2個(gè)LED燈、揚(yáng)聲器、RS232串行通信、4個(gè)按鍵、12MHZ晶振組成。以下是對(duì)幾個(gè)組成部分的介紹:AT89C51單片機(jī)用于溫度采集,信號(hào)處理,存儲(chǔ)溫度和報(bào)警電路控制。DS18B20是單總線結(jié)構(gòu)的數(shù)字溫度傳感器,主要是溫度信號(hào)的采集和轉(zhuǎn)換。單片機(jī)P3.3口接收來自溫度傳感器DS18B20的信號(hào),AT89C51接收溫度數(shù)據(jù)并存儲(chǔ)。LCD1602液晶顯示屏用于顯示實(shí)時(shí)溫度值、溫度傳感器序列號(hào)、溫度報(bào)警上下限。RS232用于和計(jì)算機(jī)進(jìn)行數(shù)據(jù)通信。LED燈是用來溫度上下限溢出的警報(bào)。倉庫測(cè)溫巡檢系統(tǒng)硬件設(shè)計(jì)3.1 單片機(jī)AT89

22、C51介紹3.1.1單片機(jī)基本知識(shí)AT89C51是美國ATMEL公司生產(chǎn)的低電壓,高性能的CMOS8位單片微型計(jì)算機(jī)。片內(nèi)含4K字節(jié)的可重復(fù)擦寫的只讀程序存儲(chǔ)器,及128k字節(jié)的隨機(jī)存取存儲(chǔ)器。 由于單片機(jī)主要的功能是控制的功能,隨著科技的進(jìn)步和需求,單片機(jī)芯片內(nèi)集成了許多的需要被測(cè)控的目標(biāo)的接口電路。這些已經(jīng)超出了傳統(tǒng)微型計(jì)算機(jī)的體系構(gòu)造,所以可以更加明確的反應(yīng)單片機(jī)的本質(zhì)名字應(yīng)是微型控制器。 它采用了ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù),兼容行業(yè)標(biāo)準(zhǔn)的MCS-51指令系統(tǒng),片內(nèi)置8位CPU和FLASH存儲(chǔ)單元,功能強(qiáng)大的AT89C51可靈活運(yùn)用與各種生活生產(chǎn)領(lǐng)域。如圖2: 圖2 AT8

23、9C51引腳圖3.1.2 AT89C51各個(gè)I/O口介紹PO口的口線邏輯電路如圖所示。當(dāng)寫P0口,由鎖存和驅(qū)動(dòng)電路輸出通道。途徑為輸出鎖,所以與外圍設(shè)備直接連接到輸出的數(shù)據(jù),而不需要添加數(shù)據(jù)鎖存電路。 圖3 P0口內(nèi)部結(jié)構(gòu)圖P1口是一個(gè)在單片機(jī)內(nèi)提供上拉電阻的8位雙向I/O口,如下圖: 圖4 P1口內(nèi)部結(jié)構(gòu)圖P2口是一個(gè)8位準(zhǔn)雙向I/O口的內(nèi)部帶有上拉電阻,屬于多功能口, 在有外接存儲(chǔ)器或者I/O接口時(shí),系統(tǒng)的地址總線輸出高8位地址,與P0口的低8為地址組成16位的地址總線。在編寫程序的時(shí)候,控制的信號(hào)和高8位的地址字節(jié)也輸送到P2口。如下圖: 圖5 P2口內(nèi)部結(jié)構(gòu)圖 P3端口是一個(gè)多功能,它

24、除了可以作為I / O網(wǎng)點(diǎn),另外還有一個(gè)功能,端口P1和P3結(jié)構(gòu)相似,不同的是P3口每個(gè)端口線有兩個(gè)功能。當(dāng)P3在功能狀態(tài),1秒線為高水平的函數(shù)。此時(shí),內(nèi)部總線信號(hào)通過鎖存器場(chǎng)效應(yīng)管進(jìn)行輸入/輸出操作,那么函數(shù)的P3口和P1口是一樣的,是一個(gè)靜態(tài)雙向I / O端口。當(dāng)P3在函數(shù),輸出高水平,2鎖存和在一個(gè)特定的輸出信號(hào),通過函數(shù)輸出線2在P3輸入口,已經(jīng)可以通過輸入緩沖引腳區(qū)信號(hào),可以通過選擇輸入函數(shù)來讀取特定函數(shù)的第二信號(hào)。HYPERLINK file:/C:/Users/ADMINI1/AppData/Local/Temp/360zip$Temp/360$1/%E3%80%8A%E5%9F

25、%BA%E4%BA%8E%E5%8D%95%E7%89%87%E6%9C%BA%E7%9A%84%E6%B5%8B%E6%B8%A9%E5%B7%A1%E6%A3%80%E7%B3%BB%E7%BB%9F%E3%80%8B_PAPERRATER%E8%AE%BA%E6%96%87%E6%A3%80%E6%B5%8B%E6%8A%A5%E5%91%8A/cache/results/126.html因?yàn)檩敵鲂盘?hào)是鎖和有兩重功能,因此P3端口靜態(tài)的兩重功能如下圖: 圖6 P3口內(nèi)部結(jié)構(gòu)圖HYPERLINK file:/C:/Users/ADMINI1/AppData/Local/Temp/360zi

26、p$Temp/360$1/%E3%80%8A%E5%9F%BA%E4%BA%8E%E5%8D%95%E7%89%87%E6%9C%BA%E7%9A%84%E6%B5%8B%E6%B8%A9%E5%B7%A1%E6%A3%80%E7%B3%BB%E7%BB%9F%E3%80%8B_PAPERRATER%E8%AE%BA%E6%96%87%E6%A3%80%E6%B5%8B%E6%8A%A5%E5%91%8A/cache/results/127.htmlP3端口結(jié)構(gòu)圖P3口第二功能表:端口引腳第二功能標(biāo)識(shí)第二功能P3.0RXD串行數(shù)據(jù)接收P3.1TXD串行數(shù)據(jù)發(fā)送P3.2INT0外部中斷0申請(qǐng)P3

27、.3INT1外部中斷1申請(qǐng)P3.4T0定時(shí)器/計(jì)數(shù)器0輸入P3.5T1定時(shí)器/計(jì)數(shù)器1輸入P3.6WR外部RAM寫選通P3.7RD外部RAM讀選通。RST:HYPERLINK file:/C:/Users/ADMINI1/AppData/Local/Temp/360zip$Temp/360$1/%E3%80%8A%E5%9F%BA%E4%BA%8E%E5%8D%95%E7%89%87%E6%9C%BA%E7%9A%84%E6%B5%8B%E6%B8%A9%E5%B7%A1%E6%A3%80%E7%B3%BB%E7%BB%9F%E3%80%8B_PAPERRATER%E8%AE%BA%E6%96

28、%87%E6%A3%80%E6%B5%8B%E6%8A%A5%E5%91%8A/cache/results/130.html復(fù)位輸入口。ALE/:輸出低電平編程的過程中,不能用在正常操作。在成為一個(gè)PSEN必須保持低水平,不能使用在正常操作。在編程的EA / VPP這銷管,沒有使用外部程序存儲(chǔ)器的應(yīng)用程序,這個(gè)引腳可以永久的接到VCC上面。時(shí)鐘和復(fù)位是一個(gè)HYPERLINK file:/C:/Users/ADMINI1/AppData/Local/Temp/360zip$Temp/360$1/%E3%80%8A%E5%9F%BA%E4%BA%8E%E5%8D%95%E7%89%87%E6%9C

29、%BA%E7%9A%84%E6%B5%8B%E6%B8%A9%E5%B7%A1%E6%A3%80%E7%B3%BB%E7%BB%9F%E3%80%8B_PAPERRATER%E8%AE%BA%E6%96%87%E6%A3%80%E6%B5%8B%E6%8A%A5%E5%91%8A/cache/results/133.html重要的組成部分在單片機(jī)系統(tǒng)中,控制單片機(jī)復(fù)位機(jī)器循環(huán)和函數(shù)。簡(jiǎn)單地說,單片機(jī)復(fù)位并重新啟動(dòng)計(jì)算機(jī)。幾乎,每一個(gè)微控制器在工作要復(fù)位過程中,對(duì)HYPERLINK file:/C:/Users/ADMINI1/AppData/Local/Temp/360zip$Temp/360

30、$1/%E3%80%8A%E5%9F%BA%E4%BA%8E%E5%8D%95%E7%89%87%E6%9C%BA%E7%9A%84%E6%B5%8B%E6%B8%A9%E5%B7%A1%E6%A3%80%E7%B3%BB%E7%BB%9F%E3%80%8B_PAPERRATER%E8%AE%BA%E6%96%87%E6%A3%80%E6%B5%8B%E6%8A%A5%E5%91%8A/cache/results/135.html單片機(jī)復(fù)位,程序還沒有開始準(zhǔn)備工作或單片機(jī)必須重新啟動(dòng)工作的實(shí)現(xiàn)。 3.3.3 時(shí)鐘電路將AT89C51的反向放大輸入端XTAL1和輸出端XTAL2與石英晶體震蕩器X

31、1及兩個(gè)電容C1、C2按圖3-1所示形式連接起來。圖中由晶振、電容C1C2及片內(nèi)與非門(作為反饋、放大元件)構(gòu)成了晶振電容三角式的震蕩器,而震蕩信號(hào)頻率大小是和晶振頻率及電容C1、C2的容量有很大關(guān)聯(lián),但主要還是由晶振頻率來決定,晶振的范圍在024MHz之間,電容C1、C2取值范圍則在530pF之間。根據(jù)實(shí)際情況,本設(shè)計(jì)中采用12MHZ做系統(tǒng)的外部晶振。電容取值為30pF。圖7 時(shí)鐘電路 3.3.4 復(fù)位電路HYPERLINK file:/C:/Users/ADMINI1/AppData/Local/Temp/360zip$Temp/360$0/%E3%80%8A%E5%9F%BA%E4%BA

32、%8E%E5%8D%95%E7%89%87%E6%9C%BA%E7%9A%84%E6%B5%8B%E6%B8%A9%E5%B7%A1%E6%A3%80%E7%B3%BB%E7%BB%9F%E3%80%8B_PAPERRATER%E8%AE%BA%E6%96%87%E6%A3%80%E6%B5%8B%E6%8A%A5%E5%91%8A/cache/results/142.html本設(shè)計(jì)單片機(jī)每次上電就會(huì)復(fù)位一次。如果單片機(jī)連續(xù)操作兩個(gè)周期以上的高電平時(shí),也會(huì)復(fù)位一次。如引腳RST一直是高電平,單片機(jī)就會(huì)保持循環(huán)復(fù)HYPERLINK file:/C:/Users/ADMINI1/AppData/L

33、ocal/Temp/360zip$Temp/360$0/%E3%80%8A%E5%9F%BA%E4%BA%8E%E5%8D%95%E7%89%87%E6%9C%BA%E7%9A%84%E6%B5%8B%E6%B8%A9%E5%B7%A1%E6%A3%80%E7%B3%BB%E7%BB%9F%E3%80%8B_PAPERRATER%E8%AE%BA%E6%96%87%E6%A3%80%E6%B5%8B%E6%8A%A5%E5%91%8A/cache/results/144.html位狀態(tài)。單片機(jī)復(fù)位是另一個(gè)特征的CPU和系統(tǒng)從初始狀態(tài),一般復(fù)位模式主要是上電復(fù)位和手動(dòng)復(fù)位按鈕等,本設(shè)計(jì)選用手動(dòng)按

34、鈕復(fù)位模式。當(dāng)單片機(jī)通電后,電壓的電容器C3此時(shí)會(huì)很小,重置下拉電阻器R2的電容器C3并聯(lián)電壓接近電源電壓,相當(dāng)于RST是1(高水平),在這個(gè)過程中充電電容器C3 RST端口電壓下降緩慢,RST電壓下降到低于一定值,單片機(jī)內(nèi)部CPU從復(fù)位狀態(tài),由于電容器C3足夠大,可以保證RST 1有效時(shí)間大于24振蕩周期,CPU可以可靠復(fù)位。當(dāng)復(fù)位按鈕添加到避免事故不能可靠復(fù)位。當(dāng)復(fù)位按鈕按下電容器C3放電。當(dāng)放電電容器C3結(jié)束,RST的點(diǎn)位是由R1和R2的分壓比來決定。因?yàn)镽2 R1,所以RST高水平,CPU在復(fù)位狀態(tài),放手,在充電電容器C3,RST結(jié)束電壓降,CPU從復(fù)位狀態(tài)。R2的作用是限制按鈕按下瞬

35、時(shí)放電電流的電容器C3,防止電火花的產(chǎn)生,為了保護(hù)按鈕觸電。復(fù)位電路與AT89C51連接如圖8: 圖8 復(fù)位電路3.2 溫度傳感器DS18B20的選擇 DS18B20是美國達(dá)拉斯公司設(shè)計(jì)制造的一種溫度傳感器。該傳感器使用一種獨(dú)特的“單總線”結(jié)構(gòu),可以將傳感器與微處理器之間的連線降到最少。同時(shí)DS18B20支持912位精度的溫度測(cè)量和轉(zhuǎn)換。它的主要特點(diǎn)體積小,測(cè)量精度高,傳感器和處理電路集成,采用單總線連接,支持溫度報(bào)警功能。溫度與人們的生活緊密聯(lián)系,同時(shí)也是人們?cè)诳茖W(xué)實(shí)驗(yàn)和生產(chǎn)活動(dòng)中需要探索和研究的關(guān)鍵物理參數(shù)。因此,在各類傳感器中,溫度傳感器是應(yīng)用范圍比較大的一種。對(duì)比于傳統(tǒng)的溫度傳感器和集

36、成溫度傳感器,它的線性度和均勻性都很好。由于集成溫度傳感器將傳感部分、放大電路、驅(qū)動(dòng)電路以及信號(hào)處理電路等集成在一個(gè)芯片上,使得它體積小,使用方便快捷,因此在很多領(lǐng)域的到了應(yīng)用。在智能溫度傳感器中,溫度傳感部分大都利用一堆極其匹配的半導(dǎo)體三極管當(dāng)做溫敏差分對(duì)管,利用他們兩個(gè)的U電壓之間所具有的的良好正溫度系數(shù)來制作集成溫度傳感器。3.2.1 DS18B20簡(jiǎn)介溫度值是由溫度傳感器以9位數(shù)字量的形式顯示出來的,經(jīng)過單總線結(jié)構(gòu)接口發(fā)送或接收信息,因此在CPU和DS18B20之間僅需1根數(shù)據(jù)線進(jìn)行連接。因?yàn)槊總€(gè)DS18B20都有一個(gè)獨(dú)特的ROM序列號(hào),所以多個(gè)DS18B20可以同時(shí)連接在一根單總線上

37、,這樣就可以把溫度傳感器安放在不同的地方進(jìn)行溫度的多點(diǎn)檢測(cè)。3.2.2 溫度傳感器DS18B20的性能特點(diǎn)一總線結(jié)構(gòu),僅需要一根口線與SCM連接;寄生電源或外接電源;支持多點(diǎn)測(cè)量功能,多個(gè)DS18B20可以并聯(lián)在一起(+5V、地一根口線);可實(shí)現(xiàn)1/21/16的高精度轉(zhuǎn)換;在93.75ms或750ms內(nèi)將溫度值轉(zhuǎn)化9位或12位的數(shù)字量;可以設(shè)置報(bào)警上下限值;報(bào)警搜索命令可以識(shí)別哪片DS18B20溫度超過報(bào)警閥值;8)芯片自身有存儲(chǔ)功能;3.2.3 DS18B20的內(nèi)部結(jié)構(gòu)DS18B20內(nèi)部結(jié)構(gòu)如圖1所示,主要由4部分組成:1)64位的ROM 2)溫度傳感器3)非揮發(fā)的溫度報(bào)警觸發(fā)裝置TH和TL

38、 4)配置寄存器。DS18B20的管腳排列如圖2所示:DQ為數(shù)字信號(hào)輸入輸出端GND為電源地VDD為外接電源 圖9 DS18B20管腳排列3.2.4 DS18B20工作時(shí)序圖初始化時(shí)序 單片機(jī)輸出低電平,溫度傳感器保持480us,已取得足夠的時(shí)間來產(chǎn)生復(fù)位脈沖。然后主機(jī)釋放,由4.7K的上拉電阻拉高電平,并延時(shí)1560us,產(chǎn)生低電平應(yīng)答脈沖,如果是低電平,則延時(shí)480us。 圖10 初始化時(shí)序圖寫時(shí)序圖11 寫時(shí)序讀時(shí)序 圖12 讀時(shí)序3.2.5 DS18B20的測(cè)溫原理單片機(jī)每次對(duì)DS18B20發(fā)起操作都必須嚴(yán)格按照下面流程執(zhí)行:初始化DS18B20發(fā)送ROM指令DS18B20功能命令這個(gè)

39、交互順序非常重要,每當(dāng)單片機(jī)訪問DS18B20時(shí)都必須按照這個(gè)流程執(zhí)行,如果某個(gè)流程中的步驟或者順序出錯(cuò),DS18B20將沒有響應(yīng)。當(dāng)命令序列執(zhí)行完畢后,主控制器返回1。一總線高電平的位置處于空閑狀態(tài)。斜率累加器預(yù)置預(yù)置低溫度系數(shù)晶振預(yù)置計(jì)數(shù)器1LSB位置/清除溫度寄存器=0 加1高溫度系數(shù)晶振計(jì)數(shù)器2=0停止 圖13 測(cè)溫原理內(nèi)部裝置表1 ROM操作命令 DS18B20在單線通信中是分成各個(gè)時(shí)間段來完成的,它有一個(gè)嚴(yán)格的時(shí)間槽。因此,讀寫時(shí)序?qū)τ趩纹瑱C(jī)控制DS18B20來說顯得格外重要,它必須按協(xié)議進(jìn)行操作。操作協(xié)議:初始化DS18B20發(fā)送ROM指令發(fā)送存儲(chǔ)器操作命令進(jìn)行數(shù)據(jù)處理。3.2.

40、6 DS18B20的測(cè)溫流程圖 初始化DS18B20跳過ROM匹配溫度變換延時(shí)1S跳過ROM匹配讀暫存器轉(zhuǎn)換成顯示碼數(shù)碼管顯示圖14 DS18B20測(cè)溫流程3.2.7 DS18B20與單片機(jī)AT89C51連接電路在本設(shè)計(jì)中DS18B20采用的電源供電方式,一個(gè)管腳接地,一個(gè)管腳經(jīng)4.7K上拉電阻后接電源,另一個(gè)管腳接單片機(jī)P3.3口。DS18B20是支持“一總線”模式的,但有些總線協(xié)議會(huì)將一些信號(hào)釋放為高阻態(tài),實(shí)際上電路的狀態(tài)應(yīng)該事確定的0或1,所以在這里上拉電阻是用來提供一個(gè)確定的狀態(tài)。由于單線制只有一根線,因此發(fā)送端接口必須是高電平,低電平,高阻態(tài)。3.3 1602LCD液晶顯示屏3.3.

41、1 LCD1602液晶顯示屏的基礎(chǔ)參數(shù) 液晶顯示模塊是一種將液晶顯示元器件,連接件,集成電路,PCB線路板,背光源構(gòu)件裝配在一起的組件。英文名稱“LCD Module”,簡(jiǎn)稱”LCD”,中文一般稱為“液晶顯示模塊”。根據(jù)顯示方式和顯示內(nèi)容的不同,液晶模塊可以分為以下3種:1)數(shù)顯液晶模塊2)液晶點(diǎn)陣字符模塊3)點(diǎn)陣圖形液晶模塊LCD1602分為有背光和沒有背光的兩種,基礎(chǔ)控制驅(qū)動(dòng)器大部分為HD44780,有背光的比沒有背光的厚,不管帶不帶背光在應(yīng)用中是沒有多大區(qū)別的。3.3.2 LCD1602引腳說明 圖15 1602A的接口圖1602采用標(biāo)準(zhǔn)的16腳接口:3.3.3 LCD1602控制指令說

42、明LCD1602液晶模塊內(nèi)部的控制器如表所示:表4.5 控制命令表3.3.4 基本操作時(shí)序讀狀態(tài):輸入;RS=L, RW=H, E=H 輸出:D0D7=狀態(tài)字寫指令:輸入:RS=L,RW=L,D0D7=指令碼,E=高脈沖 輸出:無讀數(shù)據(jù):輸入:RS=H,RW=H,E=H 輸出:D0D7=數(shù)據(jù)寫數(shù)據(jù):輸入:RS=H,RW=;,D0D7=數(shù)據(jù),E=高脈沖 輸出:無 字符集 3.3.5 LCD1602與AT89C51單片機(jī)接口電路本設(shè)計(jì)采用了LCD1602字符顯示模塊,相比較數(shù)碼管顯示而言,LCD在硬件連接和軟件調(diào)試上具有明顯優(yōu)勢(shì),LCD1602在跟單片機(jī)連接時(shí)使用了RESPEACK-8排阻相比較數(shù)

43、碼管少了74LS138譯碼器,硬件電路更加簡(jiǎn)潔。LCD在與單片機(jī)連接時(shí)采用了總線模式,使電路更明顯易懂。3.4 鍵盤模塊設(shè)計(jì)鍵盤一般分為矩陣鍵盤和獨(dú)立鍵盤,使用矩陣式鍵盤能大量的節(jié)約單片機(jī)的I/O接口資源,方便快捷。相比較而言獨(dú)立鍵盤雖然占用了I/O資源,但是運(yùn)用靈活,C程序編譯調(diào)試簡(jiǎn)單,相對(duì)于按鍵較少的電路很適用。按鍵按下判斷:通過判斷電平狀態(tài)來檢測(cè)開關(guān)閉和問題;2)按鍵確認(rèn)判斷:主要是按鍵消抖問題;3)按鍵充分釋放判斷:確認(rèn)按鍵已經(jīng)按下后,還需不斷循環(huán)檢測(cè)鍵位是不是被完全釋放。 傳感器ROM顯示:通過按鍵顯示不同DS18B20的ROM序列號(hào)來分辨?zhèn)}庫各點(diǎn)的溫度。顯示報(bào)警溫度:按鍵顯示報(bào)警溫

44、度上下限正常顯示溫度:通過按鍵切換顯示各個(gè)DS18B20的實(shí)時(shí)溫度3.5 報(bào)警模塊設(shè)計(jì) DS18B20每經(jīng)過一次溫度轉(zhuǎn)換,都會(huì)對(duì)存儲(chǔ)在溫度傳感器中的TH和TL值進(jìn)行比較,由于它是8位寄存器,因此0.5小數(shù)位可以不計(jì)算在內(nèi)。16位溫度寄存器是由TH或TL的最高有效位來對(duì)應(yīng)或決定的。當(dāng)溫度傳感器測(cè)量的溫度超過TH(或者低于TL)時(shí),元器件內(nèi)部會(huì)生成報(bào)警記號(hào),每操作一次溫度檢測(cè)就對(duì)這個(gè)溫度記號(hào)進(jìn)行數(shù)據(jù)更新。如果某地點(diǎn)的溫度超過了溫度報(bào)警閥值,報(bào)警的元器件就會(huì)被系統(tǒng)立即識(shí)別出來并讀取。 報(bào)警電路說明:?jiǎn)纹瑱C(jī)AT89C51負(fù)責(zé)控制P3.7報(bào)警電路的信號(hào)輸出,當(dāng)溫度值低于溫度下限時(shí),報(bào)警器響并伴隨(藍(lán))燈

45、暗滅交替,表示當(dāng)前溫度值低于上限值,系統(tǒng)默認(rèn)為安全狀態(tài);反之,當(dāng)溫度超過溫度上限值時(shí),報(bào)警器響并伴隨(紅)燈暗滅交替。 3.6 RS232串行通信RS-232是由美國電子工業(yè)聯(lián)合會(huì)與BELL等公司一起開發(fā)的串行通信接口標(biāo)準(zhǔn)。目前,電腦與外圍設(shè)備的連接,很多都使用RS232接口,例如串口的鍵盤,數(shù)字機(jī)頂盒,PSP等等。RS232采用負(fù)邏輯電平,收發(fā)兩端之間采用多芯的信號(hào)線,而且總負(fù)載電容不能超過250pF。所謂的RS-232通信標(biāo)準(zhǔn),就是對(duì)插件樣式、信號(hào)名稱和意義以及所謂的驅(qū)動(dòng)器/接收器的電氣模式這種硬件作出規(guī)定。一般的都是9針的接口,其中包括CD接口:載波檢測(cè);RD接口:接收信號(hào);SD接口:發(fā)

46、送信號(hào);ER接口:信號(hào)終端就緒;SG接口:信號(hào)用接地;DR接口:數(shù)據(jù)集就緒;RS接口:請(qǐng)求發(fā)送;CS接口:允許發(fā)送;CI接口:被呼表示。用以上接口進(jìn)行數(shù)據(jù)通信,還有對(duì)電平的要求。當(dāng)然與51單片機(jī)進(jìn)行通信方式很簡(jiǎn)單,首先要解決的是電平標(biāo)準(zhǔn),51的I/O口最大輸出5V電壓,而RS-232要求電壓在12V,為達(dá)到電平匹配,需用到MAX232CPF電平轉(zhuǎn)換芯片,將05V電平轉(zhuǎn)換為12V電平,從而實(shí)現(xiàn)電平匹配;然后,數(shù)據(jù)接口只用到了數(shù)據(jù)發(fā)送與接收2個(gè)端口,還有數(shù)據(jù)的請(qǐng)求發(fā)送與允許發(fā)送,共4個(gè)端口,MAX232CPF還有其他一些外圍電路接口,但比較簡(jiǎn)單,都是些電容接口,從而實(shí)現(xiàn)單片機(jī)與RS232接口的通信

47、。3.7 電源電路設(shè)計(jì) 本設(shè)計(jì)單片機(jī)電源電路采用220V轉(zhuǎn)5V穩(wěn)壓電源供電。220V交流電壓經(jīng)過變壓器電壓值降到12V左右,在經(jīng)過整流濾波和LM7805集成穩(wěn)壓器將輸出電壓穩(wěn)定在5V,電路中設(shè)計(jì)了兩個(gè)濾波電容(470uf和0.1uf)進(jìn)一步濾出波紋,進(jìn)而得到穩(wěn)定5V穩(wěn)壓電源(穩(wěn)壓電路在這里的作用是清除電網(wǎng)波動(dòng)及負(fù)載變化的影響,保持電壓的穩(wěn)定)。當(dāng)電路接通時(shí)LED綠燈亮表示已通電。這里C8和 C9兩個(gè)電容是濾波電容,C9它是針對(duì)電源本身的波動(dòng)而加入的,是用來去除電源低頻波紋;C8退藕電容是因?yàn)榉糯箅娐冯娏ο亩闺娫床▌?dòng)才加入的。第4章 倉庫測(cè)溫巡檢系統(tǒng)軟件設(shè)計(jì)4.1 主程序流程圖 本系統(tǒng)采用C

48、語言編寫,程序主要由定時(shí)程序,溫度顯示程序,LCD顯示程序,報(bào)警程序,按鍵消抖程序組成。溫度程序主要分為:DS18B20初始化,跳過ROM,讀字節(jié),寫字節(jié),讀溫度,溫度轉(zhuǎn)換這幾部分。LCD程序主要分為:LCD初始化,測(cè)忙,寫地址,寫字符,顯示這幾部分。鍵盤處理部分主要實(shí)現(xiàn)用戶對(duì)溫度報(bào)警值的查閱及溫度傳感器序列號(hào)的查閱,系統(tǒng)軟件主流程如圖4-1所示。開 始初始化DS18B20顯示當(dāng)前溫度判斷當(dāng)前溫度值超過設(shè)定溫度上限蜂鳴器響紅燈亮 初始化LCD蜂鳴器響是否低于設(shè)定溫度下限是藍(lán)燈亮否 4.2 溫度處理子程序設(shè)計(jì)DS18B20復(fù)位、應(yīng)答子程序跳過ROM匹配命令寫入子程序溫度轉(zhuǎn)換命令寫入子程序顯示子程

49、序(延時(shí))DS18B20復(fù)位、應(yīng)答子程序跳過ROM匹配命令寫入子程序讀溫度命令子程序終 止 圖5-8 讀出溫度子程序4.2.1 初始化DS18B20 uchar Init_DS18B20() uchar status;DQ = 1;Delay(8);DQ = 0;Delay(90);DQ = 1;Delay(8);status = DQ;Delay(100);DQ = 1;return status;4.2.2 讀一個(gè)字節(jié)命令uchar ReadOneByte() uchar i,dat=0;DQ = 1;_nop_();for(i=0;i= 1;DQ = 1;_nop_();_nop_();

50、if(DQ)dat |= 0X80;Delay(30);DQ = 1;return dat;4.2.3 寫一個(gè)字節(jié)命令void WriteOneByte(uchar dat) uchar i;for(i=0;i= 1;4.2.4 讀取溫度void Read_Temperature() if(Init_DS18B20()=1)DS18B20_IS_OK=0;elseWriteOneByte(0 xCC);WriteOneByte(0 x44);Init_DS18B20();WriteOneByte(0 xCC);WriteOneByte(0 xBE);Temp_Value0 = ReadOneB

51、yte(); Temp_Value1 = ReadOneByte();Alarm_Temp_HL0 = ReadOneByte();Alarm_Temp_HL1 = ReadOneByte();DS18B20_IS_OK=1;4.3 顯示模塊子程序設(shè)計(jì) 顯示 寫顯示字符 寫顯示地址 初始化LCD 開始4.3.1 LCD初始化void LCD_Initialise()/delay(15); /延時(shí)15ms,首次寫指令時(shí)應(yīng)給LCD一段較長的反應(yīng)時(shí)間 Write_LCD_Command(0 x38); /顯示模式設(shè)置:8位數(shù)據(jù),162顯示,57點(diǎn)陣,delay(5); /延時(shí)5ms/Write_LC

52、D_Command(0 x38);DelayMS(1);/Write_LCD_Command(0 x38);/delay(5);/Write_LCD_Command(0 x0f); /顯示模式設(shè)置:顯示開,有光標(biāo),光標(biāo)閃爍/delay(5); Write_LCD_Command(0 x01); /清屏幕指令,將以前的顯示內(nèi)容清除DelayMS(1);Write_LCD_Command(0 x06); /顯示模式設(shè)置:光標(biāo)右移,字符不移DelayMS(1);Write_LCD_Command(0 x0C); DelayMS(1); 4.4 溫度報(bào)警值程序設(shè)計(jì)此次設(shè)計(jì)設(shè)有溫度報(bào)警功能,程序中首先設(shè)

53、定了高溫報(bào)警的溫度為70攝氏度,即倉庫內(nèi)的溫度超過了70攝氏度時(shí),就自動(dòng)會(huì)啟動(dòng)高溫報(bào)警系統(tǒng),倉庫內(nèi)的溫度低于-20攝氏度時(shí),就會(huì)自動(dòng)啟動(dòng)低溫報(bào)警系統(tǒng)在本次試驗(yàn)中的報(bào)警設(shè)備選用了蜂鳴器和LED燈。如果倉庫內(nèi)監(jiān)測(cè)點(diǎn)的溫度值超過了報(bào)警溫度值,LED燈閃爍,揚(yáng)聲器響。case 1: /正常顯示當(dāng)前溫度,越界時(shí)報(bào)警 Read_Temperature(); if (DS18B20_IS_OK) if(HI_Alarm = 1 | LO_Alarm = 1) TR0 =1; else TR0 = 0; Display_Temperture(); DelayXus(100); break;第五章 系統(tǒng)軟硬件的

54、調(diào)試5.1 系統(tǒng)硬件調(diào)試硬件調(diào)試主要是檢查電路連接是否正確,每個(gè)元器件參數(shù)是不是符合要求(例如DS18B20要接4.7K的上拉電阻,選擇11.0592MHZ晶振時(shí)電容值最好在2030uf之間,與電腦串行通信時(shí)最好使用30uf電容)。5.2 系統(tǒng)軟件調(diào)試我的程序是在KeilC51軟件中編寫的,經(jīng)過多次調(diào)試,修改,最終終于編譯通過。編譯通過后,生成hex文件。然后打開Proteus軟件,將生成的hex文件下載到單片機(jī)中運(yùn)行。由于測(cè)到的溫度是71度,而設(shè)定的范圍是-20攝氏度到70攝氏度,因此實(shí)際檢測(cè)到的溫度不在溫度閥值范圍之內(nèi),系統(tǒng)自動(dòng)報(bào)警揚(yáng)聲器響。仿真結(jié)果達(dá)到了預(yù)期設(shè)想。5.2.1 keilC5

55、1調(diào)試Keil C51是德國Keil Software公司出品的51系列兼容單片機(jī)C語言軟件開發(fā)系統(tǒng),提供了豐富的庫函數(shù)和功能強(qiáng)大的集成開發(fā)調(diào)試工具Vision3、keilC51標(biāo)準(zhǔn)C編譯器為8051微控制器的軟件開發(fā)提供了C語言環(huán)境,同時(shí)保留了匯編語言代碼高效、快速的特點(diǎn)。利用KEIL開發(fā)和調(diào)試系統(tǒng)軟件流程:(l)進(jìn)入KEIL軟件;(2)新建C文件,編輯程序;(3)新建工程,選擇對(duì)AT89C51單片機(jī)進(jìn)行開發(fā),選擇c文件的編譯、鏈接參數(shù),選擇調(diào)試方式,修改單片機(jī)晶振頻率;(4)可進(jìn)行編譯、鏈接,并生成HEX文件。一)新建工程,選擇單片機(jī)型號(hào)AT89C51,這時(shí)會(huì)彈出一個(gè)對(duì)話框,選擇NO。新建

56、C文件,將編寫好的程序粘貼進(jìn)來,進(jìn)行保存。添加c文件,選擇“源代碼組1”右擊添加c文件。勾選“產(chǎn)生hex文件”選項(xiàng)五)單擊項(xiàng)目窗口上的“Target1”然后單擊菜單,工程“Targte1”屬性,對(duì)話框中的選項(xiàng)選擇默認(rèn)值。這里設(shè)置頻率值為12M,勾選生成“HEX”文件從而生成文件代碼。很快在窗口中就顯示HEX文件已經(jīng)到指定的文件夾中去了,這樣我們就可用自己的Keil附帶的軟件去讀取并輸入到單片機(jī)中。六)編譯,調(diào)試和運(yùn)行。如果做單片機(jī)的話,這是必須的。單擊“工程”菜單,再在菜單中單擊“構(gòu)造目標(biāo)”選項(xiàng),如果有錯(cuò)誤,則按照提示修改程序,編譯成功后,再單擊“debug”菜單下的“start/stop debug”,開始調(diào)試。單擊菜單下的“go”按鈕,然后單擊“ stop go”按鈕,就可以看到執(zhí)行后的結(jié)果了。編譯完成,查看是否有錯(cuò)。5.2.2 proteus調(diào)試Proteus是世界上著名的EDA工具(H

溫馨提示

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