版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、摘 要本文設(shè)計(jì)了一個(gè)溫度檢測(cè)報(bào)警器電路。采用單片機(jī)AT89C51和溫度傳感器DS18B20組成溫度自動(dòng)測(cè)控系統(tǒng),可根據(jù)實(shí)際需要任意設(shè)定溫度值,并進(jìn)行報(bào)警和處理,通過(guò)LM016L顯示溫度。本文是從測(cè)溫電路、主控電路、報(bào)警電路以及驅(qū)動(dòng)電路等幾個(gè)方面來(lái)設(shè)計(jì)的。該器件可直接向單片機(jī)傳輸數(shù)字信號(hào),便于單片機(jī)處理及控制。另外,還能直接采用測(cè)溫器件測(cè)量溫度,從而簡(jiǎn)化數(shù)據(jù)傳輸與處理過(guò)程。此設(shè)計(jì)的優(yōu)點(diǎn)主要體現(xiàn)在可操作性強(qiáng),結(jié)構(gòu)簡(jiǎn)單,擁有很大的擴(kuò)展空間等。關(guān)鍵詞:AT89C51;DS18B20;LM016L;報(bào)警電路目 錄 第一章 緒論1 1.1 選題的背景1 1.2 選題的目的及意義1 1.3 論文結(jié)構(gòu)2 第二
2、章 設(shè)計(jì)的整體方案3 2.1 設(shè)計(jì)的主要內(nèi)容3 2.2 設(shè)計(jì)性能要求3 第三章 模塊設(shè)計(jì)和器件的選擇4 3.1 單片機(jī)的選擇4 3.2 溫度采集模塊設(shè)計(jì)8 3.3 溫度顯示模塊設(shè)計(jì)15 3.4直流電機(jī)驅(qū)動(dòng)模塊19 第四章 系統(tǒng)電路設(shè)計(jì)21 4.1 主電路程序21 4.2 晶振復(fù)位電路21 4.3 溫度采集電路24 4.4 按鍵電路26 4.5驅(qū)動(dòng)電路26 4.6 報(bào)警電路27 4.7 電源電路28 第五章 軟件仿真30 5.1 軟件介紹30 5.2 仿真過(guò)程30 第六章 體會(huì)與展望34 6.1 設(shè)計(jì)總結(jié)34 6.2 設(shè)計(jì)前景34 附錄A 系統(tǒng)總圖36 附錄B 系統(tǒng)程序37 參考文獻(xiàn)53 外文資
3、料65 致 謝73 第一章 緒論1.1 選題的背景 隨著人們生活水平的不斷提高,單片機(jī)控制無(wú)疑是人們追求的目標(biāo)之一,它所給人帶來(lái)的方便也是不可否定的。單片機(jī)在測(cè)控領(lǐng)域中具有十分廣泛的應(yīng)用,它既可以測(cè)量電信號(hào),又可以測(cè)量溫度濕度等非電信號(hào)。由單片機(jī)構(gòu)成的溫度檢測(cè)、溫度控制系統(tǒng)可廣泛應(yīng)用于很多領(lǐng)域。單片機(jī)在工業(yè)控制、尖端武器、通信設(shè)備、信息處理、家用電器等測(cè)控領(lǐng)域的應(yīng)用中獨(dú)占鰲頭。今天,我們的生活環(huán)境和工作環(huán)境有越來(lái)越多稱之為單片機(jī)的小電腦在為我們服務(wù)。時(shí)下,家用電器和辦公設(shè)備的智能化、遙控化、模糊控制化已成為世界潮流,而這些高性能無(wú)一不是靠單片機(jī)來(lái)實(shí)現(xiàn)的。溫度是個(gè)非常常見的量,不僅與人民的生活息
4、息相關(guān),而且工業(yè)和農(nóng)業(yè)生產(chǎn)也需要實(shí)時(shí)測(cè)量溫度,因此研究溫度的測(cè)量方法和裝置具有重要的意義。測(cè)量溫度的關(guān)鍵是溫度傳感器,傳感器屬于信息技術(shù)的前沿尖端產(chǎn)品,尤其是溫度傳感器技術(shù),在我國(guó)各領(lǐng)域已經(jīng)應(yīng)用的非常廣泛,可以說(shuō)是滲透到社會(huì)的每一個(gè)領(lǐng)域。本次設(shè)計(jì)就是基于單片機(jī)為核心的溫度報(bào)警器。1.2 選題的目的及意義隨著現(xiàn)代信息技術(shù)的飛速發(fā)展和傳統(tǒng)工業(yè)改造的逐步實(shí)現(xiàn),能夠獨(dú)立工作的溫度檢測(cè)和顯示系統(tǒng)已應(yīng)用于諸多領(lǐng)域。無(wú)論是在工業(yè)方面、農(nóng)業(yè)方面或者是平民大眾的生活當(dāng)中,我們都能看到溫度報(bào)警器的身影。傳統(tǒng)的測(cè)溫元件有熱電偶和熱電阻。而熱電偶和熱電阻測(cè)出的一般是電壓,再轉(zhuǎn)換成對(duì)應(yīng)的溫度,需要比較多的外部硬件支持。
5、其缺點(diǎn)如下:(1) 硬件電路復(fù)雜;(2) 軟件調(diào)試復(fù)雜;(3) 制作成本高。因此,利用新型溫度傳感器取代舊式的溫度傳感器是必然的趨勢(shì),新型的溫度傳感器的優(yōu)勢(shì)越來(lái)越得到體現(xiàn),越來(lái)越普及。單片機(jī)以其功能強(qiáng)、體積小、可靠性高、造價(jià)低和開發(fā)周期短等優(yōu)點(diǎn),成為自動(dòng)化和各個(gè)測(cè)控領(lǐng)域不可缺少的器件。 本設(shè)計(jì)的溫度報(bào)警器與傳統(tǒng)的溫度報(bào)警器相比,不僅具有讀數(shù)方便,測(cè)溫范圍廣,測(cè)溫準(zhǔn)確,控制方便、組態(tài)簡(jiǎn)單和靈活性大等優(yōu)點(diǎn),而且可以大幅度提高被控溫度的技術(shù)指標(biāo),從而能夠大大提高產(chǎn)品的質(zhì)量和數(shù)量。如果你還需附加的功能,只要通過(guò)擴(kuò)展單片機(jī)的端口,在軟件里面編寫相應(yīng)的程序即可。在本設(shè)計(jì)中,溫度傳感器使用DS18B20,顯
6、示部分用LM016L,能準(zhǔn)確達(dá)到以上要求。1.3 論文結(jié)構(gòu)第一章介紹了此設(shè)計(jì)的背景和意義。第二章敘述了設(shè)計(jì)的整體思路,即如何將單片機(jī),溫度傳感器和顯示屏結(jié)合在一起以達(dá)到設(shè)計(jì)目標(biāo)。第三章敘述了選擇AT89C51單片機(jī)、DS18B20和顯示設(shè)備等的原因。第四章敘述系統(tǒng)的電路及流程圖。第五章通過(guò)仿真軟件來(lái)模擬溫度報(bào)警器。第六章客觀評(píng)價(jià)本設(shè)計(jì)存在的優(yōu)缺點(diǎn),及作品的發(fā)展。74第二章 設(shè)計(jì)的整體方案2.1 設(shè)計(jì)的主要內(nèi)容根據(jù)系統(tǒng)的設(shè)計(jì)要求,溫度傳感器DS18B20把所測(cè)得的溫度發(fā)送到AT89C51單片機(jī)上,然后通過(guò)LM016L顯示,除此,還可以設(shè)置合適的溫度區(qū)間,對(duì)所測(cè)溫度進(jìn)行監(jiān)控。利用外接的鍵盤設(shè)置電路
7、,對(duì)溫度上下限進(jìn)行設(shè)置。當(dāng)溫度過(guò)低時(shí),黃燈報(bào)警,并驅(qū)動(dòng)電爐工作,電驢加熱程度與溫度有關(guān);當(dāng)溫度過(guò)高時(shí),旋轉(zhuǎn)燈報(bào)警,且驅(qū)動(dòng)風(fēng)扇工作,風(fēng)扇的轉(zhuǎn)速與溫度有關(guān),當(dāng)高溫部分超過(guò)30時(shí),風(fēng)扇全速轉(zhuǎn)動(dòng),當(dāng)高溫部分小于30時(shí),風(fēng)扇加速轉(zhuǎn)動(dòng)。系統(tǒng)框圖如下:AT89C51溫度顯示溫度傳感器 雙聲黃燈報(bào)警報(bào)警電路單聲旋轉(zhuǎn)燈報(bào)警 按鍵輸入低溫驅(qū)動(dòng)驅(qū)動(dòng)裝置高溫驅(qū)動(dòng)圖2-1 系統(tǒng)框圖 2.2 設(shè)計(jì)性能要求 設(shè)計(jì)的主要功能和指標(biāo)如下:(1)利用溫度傳感器(DS18B20)測(cè)量某一點(diǎn)溫度并顯示。(2)方便用戶設(shè)定上下限溫度,可調(diào)節(jié)的溫度范圍在099。(3)當(dāng)達(dá)到報(bào)警溫度后,能夠進(jìn)行報(bào)警,并且作出相應(yīng)的處理。第三章 模塊設(shè)計(jì)和
8、器件的選擇 本設(shè)計(jì)選用DS18B20作為溫度傳感器,選用AT89C51單片機(jī)作為整個(gè)設(shè)計(jì)的核心處理器。通過(guò)處理來(lái)自溫度傳感器的溫度信息后,將此信息傳送給LCD016L,并驅(qū)動(dòng)相應(yīng)的外圍設(shè)備,當(dāng)溫度過(guò)低時(shí),驅(qū)動(dòng)電爐進(jìn)行加熱;當(dāng)溫度過(guò)高時(shí),驅(qū)動(dòng)風(fēng)扇進(jìn)行散熱。所用到的器件有AT89C51、DS18B20、LCD016L等。3.1 單片機(jī)的選擇AT89C51是美國(guó)ATMEL公司生產(chǎn)的低電壓、高性能的CMOS 8位單片機(jī),片內(nèi)含4K bytes的可反復(fù)擦寫的只讀程序存儲(chǔ)器(PEROM)和128 bytes的隨機(jī)數(shù)據(jù)存儲(chǔ)器(RAM)。該器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MSC-
9、51指令系統(tǒng),片內(nèi)置通用8位中央處理器(CPU)和Flash存儲(chǔ)單元,功能強(qiáng)大AT89C51單片機(jī)可以提供許多高性價(jià)比的應(yīng)用場(chǎng)合,可靈活應(yīng)用于各種控制領(lǐng)域。3.1.1 AT89C51的基本組成 圖3-1所示為AT89C51帶閃存(Flash ROM)單片機(jī)的基本結(jié)構(gòu)框圖。外部事件計(jì)數(shù)輸入振蕩器和時(shí)序OSC程序存儲(chǔ)器4KB FlashROM數(shù)據(jù)存儲(chǔ)器128字節(jié)RAM/SFR2*16位定時(shí)器/計(jì)數(shù)器DBUS80C51CPU可編程I/O可編程全雙工串行口64KB總線擴(kuò)展控制器內(nèi)中斷外中斷串行通信P0 P2 P1 P3控制圖3-1 AT89C51單片機(jī)結(jié)構(gòu)框圖在一小塊芯片上,集成了一個(gè)微型計(jì)算機(jī)的各個(gè)
10、組成部分,即AT89C51單片機(jī)芯片包括:v 一個(gè)8位80C51微處理器(CPU)。v 片內(nèi)128字節(jié)數(shù)據(jù)處理器RAM/SFR,用以存放可以讀/寫的數(shù)據(jù)。v 片內(nèi)4K程序存儲(chǔ)器Flash ROM,用以存放程序、一些原始數(shù)據(jù)和表格。v 4個(gè)8位并行I/O端口P0P3,每個(gè)端口可以用作輸入/輸出。v 兩個(gè)16位的定時(shí)器/計(jì)數(shù)器。每個(gè)定時(shí)器/計(jì)數(shù)器可以設(shè)置成計(jì)數(shù)方式,用以對(duì)外部事件進(jìn)行計(jì)數(shù);也可以設(shè)置成定時(shí)方式,并可以根據(jù)計(jì)數(shù)或定時(shí)的結(jié)果實(shí)現(xiàn)計(jì)算機(jī)控制。v 具有5個(gè)中斷源、兩個(gè)中斷優(yōu)先級(jí)的中斷控制系統(tǒng)。v 一個(gè)全雙工URAT的串行I/O口,用于實(shí)現(xiàn)單片機(jī)之間或單片機(jī)與PC機(jī)之間的串行通信。v 片內(nèi)振
11、蕩器和時(shí)鐘電路。但石英晶體和微調(diào)電容需要外接,最高振蕩頻率為24MHz。v 89C51單片機(jī)與8051單片機(jī)相比,具有兩種節(jié)電工作方式,即空閑方式和掉電方式。以上各個(gè)部分通過(guò)片內(nèi)8位數(shù)據(jù)總線相連接。3.1.2 AT9C51的引腳及其功能1.電源引腳VCC和VSS VCC:電源端,為+5v。 VSS:接地端。2.外接晶體引腳XTAL1和XTAL2 XTAL1:接外部晶體和微調(diào)電容的一端。來(lái)自反向振蕩放大器的輸入及內(nèi)部時(shí)鐘電路的輸入。 XTAL2:接外部晶體和微調(diào)電容的一端。來(lái)自反向振蕩放大器的輸出。3.控制信號(hào)引腳RST、ALE、 RST:復(fù)位輸入端,高電平有效。當(dāng)復(fù)位時(shí),需要保持輸入端兩個(gè)機(jī)器
12、周期的高電平時(shí)間。 ALE/ :地址鎖存允許信號(hào)端。當(dāng)CPU訪問(wèn)外部存儲(chǔ)器時(shí),ALE輸出信號(hào)作為鎖存低8位地址的控制信號(hào)。在Flash編程期間,此引腳用于輸入編程脈沖。通常情況下,ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對(duì)外輸出時(shí)鐘或定時(shí)信號(hào)。 :外部存儲(chǔ)允許輸出信號(hào)端。當(dāng)外部程序存儲(chǔ)器取指令時(shí),每個(gè)機(jī)器周期兩次有效。但在此期間內(nèi),每當(dāng)訪問(wèn)外部程序存儲(chǔ)器時(shí),這兩次有效的信號(hào)將不出現(xiàn)。 /:外部程序存儲(chǔ)器地址允許輸入端/固化編程電壓輸入端。當(dāng)保持低電平時(shí),CPU只訪問(wèn)片外ROM并執(zhí)行片外程序存儲(chǔ)器中的指令,而不管是否有片內(nèi)程序存儲(chǔ)器。然而需要注意的是,如果
13、加密位LB1被編程,則復(fù)位時(shí)在內(nèi)部會(huì)鎖存端的狀態(tài);當(dāng)端保持高電平時(shí),CPU只訪問(wèn)片內(nèi)Flash ROM并執(zhí)行內(nèi)部程序存儲(chǔ)器中的指令。在Flash ROM編程期間,此引腳也用于施加12V的編程電源()。4.輸入/輸出端口P0、P1、P2、P3 P0口:P0口是一個(gè)漏級(jí)開路的8位雙向I/O口,每腳可吸收8個(gè)TTL門電流。當(dāng)P1口作為輸入口時(shí),應(yīng)先向端口鎖存器寫入全1,此時(shí)P0的全部引腳浮空,可作為高阻抗輸入。在Flash ROM編程時(shí),P0口接受指令字節(jié);而當(dāng)Flash進(jìn)行校驗(yàn)時(shí),P0輸出指令字節(jié),此時(shí)必須外接上拉電阻。 P1口:P1口是一個(gè)內(nèi)部帶上拉電阻的8位雙向I/O口,P1的輸出緩沖器能驅(qū)動(dòng)
14、4個(gè)TTL輸入。P1口管腳寫入1后,被內(nèi)部電阻上拉為高電位,可用作輸入。在Flash ROM編程和校驗(yàn)時(shí),P1口作為低八位地址。 P2口:P2口是一個(gè)內(nèi)部帶上拉電阻的8位雙向I/O口,P2的輸出緩沖器能驅(qū)動(dòng)4個(gè)TTL輸入。對(duì)端口寫1時(shí),通過(guò)內(nèi)部的上拉電阻把端口拉到高電位,這時(shí)可用作輸入口。當(dāng)P2口用于外部程序存儲(chǔ)器或16位地址的外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),P2口輸出地址的高八位。P2口在Flash ROM編程和校驗(yàn)時(shí),用于接收高位地址和一些控制信號(hào)。 P3口:P3口是一個(gè)內(nèi)部帶上拉電阻的8位雙向I/O口,P3的輸出緩沖器能驅(qū)動(dòng)4個(gè)TTL輸入。對(duì)端口寫1時(shí),它們被內(nèi)部上拉為高電平,并用作輸入。P3
15、口在Flash ROM編程和校驗(yàn)時(shí),用于接收一些控制信號(hào)。在AT89C51中,P3端口還用于一些復(fù)用功能。其復(fù)用功能如表3-1所列。 表3-1 P3各端口引腳與復(fù)用功能表端口管腳 復(fù)用功能P3.0RXD(串行輸入口)P3.1 TXD(串行輸出口)P3.2 (外部中斷0)P3.3 (外部中斷1)P3.4 T0(定時(shí)器0的外部輸入)P3.5T1(定時(shí)器1的外部輸入)P3.6(外部數(shù)據(jù)存儲(chǔ)器寫選通) P3.7(外部數(shù)據(jù)存儲(chǔ)器讀選通)3.1.3 AT89C51的工作模式AT89C51單片機(jī)有兩種節(jié)電工作模式,分別為空閑模式和掉電模式。這兩種模式是通過(guò)控制SFR中的PCON(電源控制寄存器)中的PD和I
16、DL位來(lái)實(shí)現(xiàn)的。PD是掉電模式,當(dāng)PD=1時(shí),激活掉電工作模式。IDL是空閑模式,當(dāng)IDL=1時(shí),激活空閑工作模式。如果同時(shí)向PD和IDL同時(shí)寫1,則PD優(yōu)先。在空閑工作狀態(tài)下,內(nèi)部時(shí)鐘不向CPU提供,而只供給中斷、串行口、定時(shí)器部分。CPU的內(nèi)部狀態(tài)維持,即包括堆棧指針SP、程序計(jì)數(shù)器PC、程序狀態(tài)字PSW、累加器ACC所有的內(nèi)容保持不變,端口狀態(tài)也保持不變。ALE和保持邏輯高電平。進(jìn)入空閑模式后,有兩種方法可以退出。一是任何的中斷請(qǐng)求被響應(yīng)都可以由硬件將IDL清0而中止此模式。當(dāng)執(zhí)行完中斷服務(wù)程序返回到主程序時(shí),在主程序中,下一條要執(zhí)行的指令將是原先使IDL置位指令后面的那條指令。另一種退
17、出方法是通過(guò)硬件復(fù)位,由于在空閑模式下振蕩器仍然工作,因此硬件復(fù)位僅需2個(gè)機(jī)器周期便可完成。而RST端的復(fù)位信號(hào)直接將IDL清0,從而退出空閑模式,CPU則從進(jìn)入空閑方式的下一條指令開始重新執(zhí)行程序。在掉電模式下,內(nèi)部振蕩器停止工作。由于沒(méi)有振蕩時(shí)鐘,因此,所有的功能的部件都停止工作。但內(nèi)部RAM區(qū)和特殊功能寄存器的內(nèi)容被保留,而端口的輸出狀態(tài)值都保存在對(duì)應(yīng)的SFR中,ALE和都為低電平。退出掉電模式的唯一方法是硬件復(fù)位,復(fù)位后將所有特殊功能寄存器的內(nèi)容初始化,但不改變片內(nèi)RAM的數(shù)據(jù)。下表為空閑和掉電模式外部引腳狀態(tài)。表3-2 空閑和掉電模式外部引腳狀態(tài)模式程序存儲(chǔ)器ALEP0P1P2P3空
18、閑模式內(nèi)部11數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)空閑模式外部11浮空數(shù)據(jù)地址數(shù)據(jù)掉電模式內(nèi)部00數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)掉電模式外部00浮空數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)3.2 溫度采集模塊設(shè)計(jì)3.2.1 方案論證方案1:采用熱敏電阻,這種電阻是利用對(duì)溫度敏感的半導(dǎo)體材料制成的,電阻值隨溫度變化有明顯的改變。負(fù)溫度系數(shù)熱敏電阻通常是由錳、鈷的氧化物燒制成,但熱敏電阻精度、重復(fù)性、可靠性較差,不適用于檢測(cè)小于1的信號(hào);而且線性度較差,不能直接用于A/D轉(zhuǎn)化,應(yīng)該用硬件或軟件對(duì)其進(jìn)行線性補(bǔ)償。方案2:采用溫度傳感器鉑電阻Pt1000.鉑電阻的物理化學(xué)性能在高溫和氧化物介質(zhì)中很穩(wěn)定,它能用做工業(yè)測(cè)溫元件,且元件線性度較好。但其成本太貴,不適合
19、做普通設(shè)計(jì)。方案3:采用集成溫度傳感器DS18B20。此傳感器可以直接讀取被測(cè)溫度值,無(wú)需轉(zhuǎn)換,電路簡(jiǎn)單,精度高,軟硬件均易實(shí)現(xiàn)。方案選擇:選擇方案3。理由:電路可靠,無(wú)需調(diào)試,費(fèi)用較低,可靠性高,具有很高的精度,并且應(yīng)用電路簡(jiǎn)單,便于設(shè)計(jì)。 3.2.2 DS18B20的性能特點(diǎn)DS18B20溫度傳感器是美國(guó)DALLAS半導(dǎo)體公司最新推出的一種改進(jìn)型智能溫度傳感器。與傳統(tǒng)的熱敏電阻等測(cè)溫元件相比,它能直接讀出被測(cè)溫度,并且可根據(jù)實(shí)際要求通過(guò)簡(jiǎn)單的編程實(shí)現(xiàn)912位的數(shù)字讀數(shù)方式。DS18B20的性能特點(diǎn)如下:l 獨(dú)特的單線接口方式,DS18B20在與微處理器連接時(shí)僅需要一條接口線,即可實(shí)現(xiàn)微處理
20、器與DS18B20的雙向通訊。l DS18B20支持多點(diǎn)組網(wǎng)功能,多個(gè)DS18B20可以并聯(lián)在一起,實(shí)現(xiàn)組網(wǎng)多點(diǎn)測(cè)溫。l DS18B20在使用中不需要任何外圍元件,全部傳感元件及轉(zhuǎn)換電路集成在形如一只三極管的集成電路內(nèi)。l 適應(yīng)電壓范圍更寬,電壓范圍:3.05.5V,在寄生電源方式下可由數(shù)據(jù)線供電。l 測(cè)溫范圍55125,在-10+85時(shí)精度為0.5。l 零待機(jī)功耗。l 可編程的分辨率為912位,對(duì)應(yīng)的可分辨溫度分別為0.5、0.25、0.125和0.0625,可實(shí)現(xiàn)高精度測(cè)溫。l 用戶可定義的非易失性溫度報(bào)警設(shè)置。l 負(fù)電壓特性,電源極性接反時(shí),溫度計(jì)不會(huì)因發(fā)熱而燒毀,只是不能正常工作。DS
21、18B20作為新型的一線器件,能夠方便地和中央處理器進(jìn)行連接,并具有很大的擴(kuò)展空間。溫度范圍較廣,使得整體的測(cè)溫范圍能大幅度的上升,零待機(jī)消耗更是起到了節(jié)能的作用。利用用戶能自定義報(bào)警設(shè)置這一特點(diǎn),能夠在實(shí)現(xiàn)報(bào)警功能上得到很大的便利,同時(shí)極強(qiáng)的抗干擾性能使得溫度的檢測(cè)更加準(zhǔn)確,作為溫度計(jì)最基本的要求,準(zhǔn)確必須滿足。這些好處使得DS18B20最終被選擇。3.2.3 DS18B20的內(nèi)部結(jié)構(gòu)DS18B20采用3腳PR-35封裝,其內(nèi)部結(jié)構(gòu)框圖如下圖所示。存儲(chǔ)器與控制邏輯64位ROM和單線接口溫度傳感器高速緩存高溫觸發(fā)器TH低溫觸發(fā)器TL配置寄存器8位CRC發(fā)生器圖3-2 DS18B20內(nèi)部結(jié)構(gòu)框圖
22、 64位ROM的位結(jié)構(gòu)如下圖所示。開始8位是產(chǎn)品類型的編號(hào);接著是每個(gè)器件的唯一的序號(hào),共有48位;最后8位是前面56位的CRC檢驗(yàn)碼,這也是多個(gè)DS18B20可以采用單線進(jìn)行通信的原因。8位檢驗(yàn)CRC48位序列號(hào)8位工廠代碼(10H) MSB LSB MSB LSB MSB LSB 圖3-3 64位ROM結(jié)構(gòu)框圖 DS18B20溫度傳感器的內(nèi)部存儲(chǔ)器還包括一個(gè)高速暫存RAM和一個(gè)非易失性的電可擦除的。高速暫存RAM為9字節(jié)的存儲(chǔ)器,結(jié)構(gòu)如圖3-4所示。 圖3-4為高速暫存RAM結(jié)構(gòu)圖 前2字節(jié)包含測(cè)得的溫度信息。第3和第4字節(jié)是TH和TL的復(fù)制值,是易失的,每次上電復(fù)位時(shí)被刷新。第5個(gè)字節(jié)為
23、配置寄存器,其內(nèi)容用于確定溫度值的數(shù)字轉(zhuǎn)化分辨率,DS18B20工作時(shí)按此寄存器中的分辨率將溫度轉(zhuǎn)化為相應(yīng)精度的數(shù)值。該字節(jié)各位的定義如圖3-5所示.位數(shù)87654321含義TMR1R011111圖3-5 配置寄存器位定義 其中,低5位一直為1;TM是測(cè)試位,用于設(shè)置DS18B20在工作模式還是在測(cè)試模式,在DS18B20出廠時(shí),該位被設(shè)置為0,用戶不要去改動(dòng);R1和R0決定溫度轉(zhuǎn)換的精度位數(shù),即用來(lái)設(shè)置分辨率,其定義方法見表3-3。表3-3 DBS18B20分辨率的定義和規(guī)定R1R0分辨率/位溫度最大轉(zhuǎn)化時(shí)間/ms00993.750110187.510113751112750 由表3-3可見
24、,DS18B20溫度轉(zhuǎn)換的時(shí)間比較長(zhǎng),而且設(shè)定的分辨率越高,所需要的轉(zhuǎn)換時(shí)間越長(zhǎng)。因此,在實(shí)際應(yīng)用中要將分辨率和轉(zhuǎn)化時(shí)間權(quán)衡考慮。高速暫存RAM的第6、7、8字節(jié)保留未用,表現(xiàn)為全邏輯1。第9字節(jié)是前面所有8字節(jié)的CRC碼,可用來(lái)檢驗(yàn)數(shù)據(jù),從而保證通信數(shù)據(jù)的正確性。當(dāng)DS18B20接受到溫度轉(zhuǎn)換命令后,開始啟動(dòng)轉(zhuǎn)化。轉(zhuǎn)化完成后的溫度值就以16位帶符號(hào)擴(kuò)展的二進(jìn)制補(bǔ)碼形式存儲(chǔ)在高速暫存RAM的第1、2字節(jié)中。單片機(jī)可以通過(guò)單線接口讀出該數(shù)據(jù),低位在前,高位在后,數(shù)據(jù)格式是以0.0625/LSB形式表示。溫度值格式如圖3-6所示。 低字節(jié) 高字節(jié)SSSSS 圖3-6 溫度數(shù)據(jù)值格式 圖中,S表示符
25、號(hào)位。當(dāng)S=0時(shí),表示測(cè)得的溫度值為正值,可以直接將二進(jìn)制位轉(zhuǎn)換為十進(jìn)制;當(dāng)S=1時(shí),表示測(cè)得的溫度值為負(fù)值,要先將補(bǔ)碼變成原碼,再計(jì)算十進(jìn)制值。表3-4列出了部分溫度值對(duì)應(yīng)的二進(jìn)制溫度表示的數(shù)據(jù)。 表3-4 DS18B20溫度與表示值對(duì)應(yīng)表溫度二進(jìn)制表示十六進(jìn)制表示+1250000 0111 1101 0000 07D0H+850000 0101 0101 0000 0550H+25.06250000 0001 1001 0001 0191H+10.1250000 0000 1010 0010 00A2H+0.50000 0000 0000 1000 0008H00000 0000 0000
26、 0000 0000H-0.51111 1111 1111 1000 FFF8H-10.1251111 1111 0101 1110 FF5EH-25.06251111 1110 0110 1111 FE6FH-551111 1100 1001 0000 FC90H 64位ROM的最高位有效字節(jié)中存儲(chǔ)有循環(huán)冗余檢驗(yàn)碼(CRC)。主機(jī)根據(jù)ROM的前56位來(lái)計(jì)算CRC值,并與存入DS18B20的CRC值相比較,以判斷主機(jī)收到的ROM數(shù)據(jù)是否正確。3.2.4 DS18B20的測(cè)溫原理DS18B20的測(cè)溫原理如圖3-7所示,圖中低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小,用于產(chǎn)生固定頻率的脈沖信號(hào)送給減
27、法計(jì)數(shù)器1;高溫度系數(shù)晶振隨溫度變化其振蕩頻率明顯改變,所產(chǎn)生的信號(hào)作為減法計(jì)數(shù)器2的脈沖輸入。圖中還隱含著計(jì)數(shù)門,當(dāng)計(jì)數(shù)門打開時(shí),DS18B20就對(duì)低溫度系數(shù)振蕩器產(chǎn)生的時(shí)鐘脈沖進(jìn)行計(jì)數(shù),進(jìn)而完成溫度測(cè)量。計(jì)數(shù)門的開啟時(shí)間由高溫度系數(shù)振蕩器來(lái)決定,每次測(cè)量前,首先將-55 所對(duì)應(yīng)的基數(shù)分別置入減法計(jì)數(shù)器1和溫度寄存器中,減法計(jì)數(shù)器1和溫度寄存器被預(yù)置在-55 所對(duì)應(yīng)的一個(gè)基數(shù)值。減法計(jì)數(shù)器1對(duì)低溫度系數(shù)振蕩器產(chǎn)生的脈沖信號(hào)進(jìn)行減法計(jì)數(shù),當(dāng)減法計(jì)數(shù)器1的預(yù)置值減到0時(shí),溫度寄存器的值加1,減法計(jì)數(shù)器1的預(yù)置值將被重新裝入,并重新開始對(duì)低溫度系數(shù)振蕩器產(chǎn)生的脈沖信號(hào)進(jìn)行計(jì)數(shù)。如此循環(huán),直到減法計(jì)
28、數(shù)器2計(jì)數(shù)到0時(shí),停止溫度寄存器的累加,此時(shí)溫度寄存器的數(shù)值就是所測(cè)溫度值。圖中的斜率累加器用于補(bǔ)償和修正測(cè)溫過(guò)程中的非線性,其輸出用于修正減法計(jì)數(shù)器的預(yù)置值,只要計(jì)數(shù)門仍未關(guān)閉就重復(fù)上述過(guò)程,直到溫度寄存器值達(dá)到被修正溫度值。另外,由于DS18B20單線通信功能是分時(shí)完成的,有嚴(yán)格的時(shí)隙概念,因此讀/寫時(shí)序很重要。系統(tǒng)對(duì)DS18B20的各種操作必須按照協(xié)議進(jìn)行。操作協(xié)議為:初始化DS18B20(發(fā)復(fù)位脈沖)發(fā)ROM功能命令發(fā)存儲(chǔ)器操作命令處理數(shù)據(jù)。斜率累加器計(jì)數(shù)比較器預(yù)置減法計(jì)數(shù)器1低溫度系數(shù)振蕩器 預(yù)置增加溫度寄存器減到0停止減到0高溫度系數(shù)振蕩器減法計(jì)數(shù)器2 圖3-7 DS18B20測(cè)溫
29、原理圖3.2.5 DS18B20的各條命令u Read ROM 33H。這條命令允許總線控制器讀取DS18B20的位系列編碼、唯一的序列號(hào)和8位CRC碼。只有在總線上存在單只DS18B20時(shí),才能使用該命令。如果總線上不止一個(gè)從機(jī),則當(dāng)所有從機(jī)試圖同時(shí)傳送信號(hào)時(shí)就會(huì)發(fā)生數(shù)據(jù)沖突(漏極開路連在一起形成相“與”的效果)。u Match ROM 55H。這是一條匹配ROM指令,后跟64位ROM序列,讓總線控制器在多點(diǎn)總線上定位一只特定的DS18B20。只有與64位ROM序列完全匹配的DS18B20才能響應(yīng)隨后的存儲(chǔ)器操作。所有與64位序列不匹配的從機(jī)都將等待復(fù)位脈沖。這條指令在總線上有單個(gè)或多個(gè)器件
30、都是可以使用。u Skip ROM CCH。這條命令允許總線控制器不用提供64位ROM編程就使用存儲(chǔ)器操作命令,在單點(diǎn)總線情況下,可以節(jié)省時(shí)間。如果總線上不止一個(gè)從機(jī),則在Skip ROM命令之后跟著發(fā)一條讀命令。由于多個(gè)從機(jī)同時(shí)傳送信號(hào),所以總線上就會(huì)發(fā)生數(shù)據(jù)沖突(漏極開路連在一起形成相“與”)。u Search ROM F0H 當(dāng)一個(gè)系統(tǒng)重新啟動(dòng)時(shí),總線控制器可能并不知道單線上有多少器件或它們的64位ROM編碼。搜索ROM命令允許總線控制器用排除法識(shí)別總線上的所有從機(jī)的64位編碼。u Alarm Search ECH。這條命令的流程與Search ROM相同。然而,只有在最近一次測(cè)溫后遇到
31、報(bào)警條件的情況下,DS18B20才會(huì)響應(yīng)這條命令。報(bào)警條件定義為溫度高于TH或低于TL。只要DS18B20不掉電,報(bào)警狀態(tài)將一直保持,直到下一次測(cè)得的溫度值達(dá)不到報(bào)警條件。u Write Scratchpad 4EH。這條命令向DS18B20的暫存器TH和TL中寫入數(shù)據(jù),可以在任何時(shí)刻發(fā)出復(fù)位命令來(lái)中止寫入。u Read Scratchpad BEH。這條命令讀取暫存器的內(nèi)容。讀取將從第1字節(jié)開始,一直進(jìn)行下去,直到第9字節(jié)(CRC)讀完。如果不想讀完所有字節(jié),則控制器可以在任何時(shí)間發(fā)出復(fù)位命令來(lái)中止讀取。u Copy Scratchpad 48H。這條命令將暫存器的內(nèi)容復(fù)制到DS18B20的
32、存儲(chǔ)器,即把溫度報(bào)警器觸發(fā)字節(jié)存入非易失性存儲(chǔ)器里。如果總線控制器在這條命令之后跟著發(fā)出讀時(shí)間隙,而DS18B20又忙于把暫存器復(fù)制到存儲(chǔ)器,則DS18B20就會(huì)輸出一個(gè)0;如果復(fù)制結(jié)束,則DS18B20輸出1.如果使用寄生電源,則總線控制器必須在這條命令發(fā)出之后立即啟動(dòng)強(qiáng)上拉,并最少保持10ms。u Convert T 44H。這條命令啟動(dòng)一次溫度轉(zhuǎn)化而無(wú)需其他數(shù)據(jù)。溫度轉(zhuǎn)化命令被執(zhí)行后DS18B20進(jìn)入等待狀態(tài)。如果總線控制器在這條命令之后跟著發(fā)出讀時(shí)間隙,而DS18B20又忙于做時(shí)間轉(zhuǎn)化,則DS18B20將在總線上輸出0;如果溫度轉(zhuǎn)化完成,則輸出1.如果使用寄生電源,則總線控制器必須在發(fā)
33、出這條命令之后立即啟動(dòng)強(qiáng)上拉,并保持500ms以上時(shí)間。u Recall E2 B8H。這條命令把報(bào)警觸發(fā)器的值復(fù)制到暫存器。這種復(fù)制操作在DS18B20上電時(shí)自動(dòng)執(zhí)行,這樣器件一上電暫存器里馬上就存在有效的數(shù)據(jù)了。若在這條命令發(fā)出之后發(fā)出讀數(shù)據(jù)隙,器件會(huì)輸出溫度轉(zhuǎn)化忙的標(biāo)識(shí):0表示忙;1表示完成。u Read Power Supply B4H。若把這條命令發(fā)給DS18B20后發(fā)出讀時(shí)間隙,器件會(huì)返回它的電源模式:0表示寄生電源;1表示外部電源。3.2.6 溫度數(shù)據(jù)的計(jì)算處理方法 從DS18B20讀取出的二進(jìn)制必須先轉(zhuǎn)換成十進(jìn)制,才能用于字符的顯示。DS18B20的轉(zhuǎn)化精度為912位可選,為了
34、提高精度采用12位。在采用12位轉(zhuǎn)化精度時(shí),溫度寄存器里的值是以0.0625為步進(jìn)的,即溫度值為溫度寄存器里的二進(jìn)制值乘以0.0625,就是實(shí)際的十進(jìn)制溫度值。通過(guò)觀察表3-5可以發(fā)現(xiàn),一個(gè)十進(jìn)制與二進(jìn)制間有很明顯的關(guān)系,就是把二進(jìn)制的高字節(jié)的低半字節(jié)和低字節(jié)的高半字節(jié)組成一個(gè)字節(jié),這個(gè)字節(jié)的二進(jìn)制化為十進(jìn)制后,就是溫度值的百、十、個(gè)位值。而剩下的低字節(jié)的低半字節(jié)化為十進(jìn)制后,即是溫度值的小數(shù)部分。因?yàn)樾?shù)部分是半字節(jié),所以二進(jìn)制值范圍是0F,轉(zhuǎn)化為十進(jìn)制小數(shù)值就是0.0625的倍數(shù)。實(shí)際不必這么高的精度,可以精確到0.1.下表就是二進(jìn)制與十進(jìn)制的近似對(duì)應(yīng)關(guān)系表。 表3-5 小數(shù)部分二進(jìn)制和十
35、進(jìn)制的近似對(duì)應(yīng)關(guān)系表二進(jìn)制值0123456789ABCDEF十進(jìn)制值01123344566788993.3 溫度顯示模塊設(shè)計(jì)3.3.1液晶顯示簡(jiǎn)介在日常生活中,我們對(duì)液晶顯示器并不陌生。液晶顯示模塊已作為很多電子產(chǎn)品的通用器件,如在計(jì)算器、萬(wàn)用表、電子表及很多家用電子產(chǎn)品中都可以看到,顯示的主要是數(shù)字、專用符號(hào)和圖形。在單片機(jī)的人機(jī)交流界面中,一般的輸出方式有以下幾種:發(fā)光管、LED數(shù)碼管、液晶顯示器。本次設(shè)計(jì)采用液晶顯示器的原因:(1)顯示質(zhì)量高,由于液晶顯示器每一個(gè)點(diǎn)在收到信號(hào)后就一直保持那種色彩和亮度,恒定發(fā)光,而不像陰極射線管顯示器那樣需要不斷刷新新亮點(diǎn)。因此,液晶顯示器畫質(zhì)高且不會(huì)閃
36、爍。(2)數(shù)字式接口,液晶顯示器都是數(shù)字式的,和單片機(jī)系統(tǒng)的接口更加簡(jiǎn)單可靠,操作更加方便。(3)體積小、重量輕,液晶顯示器通過(guò)顯示屏上的電極控制液晶分子狀態(tài)來(lái)達(dá)到顯示的目的,在重量上比相同顯示面積的傳統(tǒng)顯示器要輕得多。(1)液晶顯示原理液晶顯示的原理是利用液晶的物理特性,通過(guò)電壓對(duì)其顯示區(qū)域進(jìn)行控制,有電就有顯示,這樣就可以顯示出圖形。液晶顯示器具有厚度薄、適用于大規(guī)模集成電路直接驅(qū)動(dòng)、易于實(shí)現(xiàn)全彩色顯示的特點(diǎn),目前已經(jīng)被廣泛應(yīng)用在便攜式電腦、數(shù)字?jǐn)z像機(jī)、PDA移動(dòng)通信工具等眾多領(lǐng)域。(2)液晶顯示器的分類液晶顯示的分類方法有很多種,通??砂雌滹@示方式分為段式、字符式、點(diǎn)陣式等。除了黑白顯示
37、外,液晶顯示器還有彩色顯示。(3)液晶顯示器各種圖形的顯示原理:a.線段的顯示點(diǎn)陣圖形式液晶由MN個(gè)顯示單元組成,假設(shè)LCD顯示屏有64行,每行有128列,每8列對(duì)應(yīng)1字節(jié)的8位,即每行由16字節(jié),共168=128個(gè)點(diǎn)組成,屏上6416個(gè)顯示單元與顯示RAM區(qū)1024字節(jié)相對(duì)應(yīng),每一字節(jié)的內(nèi)容和顯示屏上相應(yīng)位置的亮暗對(duì)應(yīng)。這就是LCD顯示的基本原理。b.字符的顯示用LCD顯示一個(gè)字符時(shí)比較復(fù)雜,因?yàn)橐粋€(gè)字符由68或88點(diǎn)陣組成,即要找到和顯示屏幕上某幾個(gè)位置對(duì)應(yīng)的顯示RAM區(qū)的8字節(jié),還要使每字節(jié)的不同位為“1”,其它的為“0”。這樣一來(lái)就組成某個(gè)字符。但對(duì)于內(nèi)帶字符發(fā)生器的控制器來(lái)說(shuō),顯示字
38、符就比較簡(jiǎn)單了,可以讓控制器工作在文本方式,根據(jù)在LCD上開始顯示的行列號(hào)及每行的列數(shù)找出顯示RAM對(duì)應(yīng)的地址,設(shè)立光標(biāo),在此送上該字符對(duì)應(yīng)的代碼即可。3.3.2 LM016L的結(jié)構(gòu)及功能 LM016L液晶模塊采用HD44780控制器,HD44780具有簡(jiǎn)單而功能較強(qiáng)的指令集,可以實(shí)現(xiàn)字符移動(dòng),閃爍等功能,LM016L與單片機(jī)通訊可采用8位或4位并行傳輸兩種方式,HD44780控制器由兩個(gè)8位寄存器,指令寄存器(IR)和數(shù)據(jù)寄存器(DR)、忙標(biāo)志(BF)、顯示數(shù)RAM(DDRAM)、字符發(fā)生器ROM(CGOROM)、字符發(fā)生器RAM(CGRAM)、地址計(jì)數(shù)器RAM(AC)。LM016L液晶模塊
39、的引腳功能如表3-6所示。表3-6 引腳功能表引腳符號(hào)功能說(shuō)明1VSS一般接地2VDD接電源(+5V)3VEE液晶顯示器對(duì)比度調(diào)整端,接正電源時(shí)對(duì)比度最弱,接地電源時(shí)對(duì)比度最高(對(duì)比度過(guò)高時(shí)會(huì)產(chǎn)生“鬼影”,使用時(shí)可以通過(guò)一個(gè)10K的電位器調(diào)整對(duì)比度)。4RSRS為寄存器選擇,高電平時(shí)選擇數(shù)據(jù)寄存器、低電平時(shí)選擇指令寄存器。5RWRW為讀寫信號(hào)線,高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫操作。6EE端為使能端,下降沿使能。7D0低4位三態(tài)、 雙向數(shù)據(jù)總線 0位(最低位)8D1低4位三態(tài)、 雙向數(shù)據(jù)總線 1位9D2低4位三態(tài)、 雙向數(shù)據(jù)總線 2位10D3低4位三態(tài)、 雙向數(shù)據(jù)總線 3位11D4高4位三態(tài)
40、、 雙向數(shù)據(jù)總線 4位12D5高4位三態(tài)、 雙向數(shù)據(jù)總線 5位13D6高4位三態(tài)、 雙向數(shù)據(jù)總線 6位14D7高4位三態(tài)、 雙向數(shù)據(jù)總線 7位(最高位)(也是busy flag) LM016L字符型LCD通常有14條引腳線或16條引腳線的LCD,多出來(lái)的2條線是背光電源線,本次模型采用14條引腳線,如圖3-9所示。圖3-9 LM016L模型寄存器選擇控制如表3-7.表3-7寄存器選擇控制表RSR/W操作說(shuō)明00寫入指令寄存器(清除屏等)01讀busy flag(D7),以及讀取位址計(jì)數(shù)器(D0D6)值10寫入數(shù)據(jù)寄存器(顯示各字型等)11從數(shù)據(jù)寄存器讀取數(shù)據(jù) busy flag(D7):此位被
41、清除為0時(shí),LCD將無(wú)法再處理其它的指令要求。液晶模塊內(nèi)部的控制器共有11條控制指令,如表3-8所示:表3-8 控制命令表序號(hào)指令RSRWD7D6D5D4D3D2D1D01清顯示00000000012光標(biāo)返回000000001*3輸入模式00000001I/DS4顯示開/關(guān)控制0000001DCB5光標(biāo)或字符移位000001S/CR/L*6功能00001DLNF*7字符發(fā)生器地址0001字符發(fā)生存儲(chǔ)器地址8數(shù)據(jù)存貯器地址001顯示數(shù)據(jù)存儲(chǔ)器地址9讀忙標(biāo)志或地址01BF計(jì)數(shù)器地址10寫數(shù)到CGRAM或DDRAM)10要寫的數(shù)據(jù)內(nèi)容11從CGRAM或DDRAM讀數(shù)11讀出的數(shù)據(jù)內(nèi)容LM016L液晶
42、模塊的讀寫操作、屏幕和光標(biāo)的操作都是通過(guò)指令編程來(lái)實(shí)現(xiàn)的。(說(shuō)明:1為高電平、0為低電平)指令1:清顯示,指令碼01H,光標(biāo)復(fù)位到地址00H位置。指令2:光標(biāo)復(fù)位,光標(biāo)返回到地址00H。指令3:光標(biāo)和顯示模式設(shè)置。 I/D:光標(biāo)移動(dòng)方向,高電平右移,低電平左移; S:屏幕上所有文字是否左移或者右移。高電平表示有效,低電平則無(wú)效。指令4:顯示開關(guān)控制。 D:控制整體顯示的開與關(guān),高電平表示開顯示,低電平表示關(guān)顯示; C:控制光標(biāo)的開與關(guān),高電平表示有光標(biāo),低電平表示無(wú)光標(biāo) ;B:控制光標(biāo)是否閃爍,高電平閃爍,低電平不閃爍。指令5:光標(biāo)或顯示移位。 S/C:高電平時(shí)移動(dòng)文字,低電平時(shí)移動(dòng)光標(biāo)。指令
43、6:功能設(shè)置命令。 DL:高電平時(shí)為4位總線,低電平時(shí)為8位總線 ;N:低電平時(shí)為單行顯示,高電平時(shí)雙行顯示 ;F: 低電平時(shí)顯示5*7的點(diǎn)陣字符,高電平時(shí)顯示5*10的點(diǎn)陣字符。指令7:字符發(fā)生器RAM地址設(shè)置。指令8:DDRAM地址設(shè)置。指令9:讀忙信號(hào)和光標(biāo)地址。 BF:為忙標(biāo)志位,高電平表示忙,此時(shí)模塊不能接收命令或者數(shù)據(jù),如果為低電平表示不忙。指令10:寫數(shù)據(jù)。指令11:讀數(shù)據(jù)。3.4直流電機(jī)驅(qū)動(dòng)模塊3.4.1方案選擇方案一:采用繼電器對(duì)電動(dòng)機(jī)的開和關(guān)進(jìn)行控制,通過(guò)開關(guān)的切換對(duì)電機(jī)的速度進(jìn)行調(diào)整。這個(gè)方案的優(yōu)點(diǎn)是電路較為簡(jiǎn)單,實(shí)現(xiàn)容易;缺點(diǎn)是繼電器的響應(yīng)速度慢、機(jī)械結(jié)構(gòu)易損壞、壽命較
44、短。方案二:采用專用芯片L298。L298是一個(gè)具有高電壓、大電流的全橋驅(qū)動(dòng)芯片,它響應(yīng)頻率高,且還帶有控制使能端。用該芯片作為電機(jī)驅(qū)動(dòng),操作方便,穩(wěn)定性好,性能優(yōu)良?;谏鲜隼碚摵蛯?shí)際情況分析,擬定選擇方案二。3.4.2 L298驅(qū)動(dòng)芯片L298 為SGS-THOMSON Microelectronics 所出產(chǎn)的雙全橋直流電機(jī)專用驅(qū)動(dòng)芯片( Dual Full-Bridge Driver ) ,內(nèi)部包含4信道邏輯驅(qū)動(dòng)電路,是一種二相和四相電機(jī)的專用驅(qū)動(dòng)器,可同時(shí)驅(qū)動(dòng)2個(gè)二相或1個(gè)四相電機(jī),內(nèi)含二個(gè)H-Bridge 的高電壓、大電流雙全橋式驅(qū)動(dòng)器,接收標(biāo)準(zhǔn)TTL邏輯準(zhǔn)位信號(hào),可驅(qū)動(dòng)46V、2
45、A以下的步進(jìn)電機(jī),且可以直接通過(guò)電源來(lái)調(diào)節(jié)輸出電壓;此芯片可直接由單片機(jī)的I/O端口來(lái)提供模擬時(shí)序信號(hào),節(jié)省了單片機(jī)I/O 端口的使用。在本次設(shè)計(jì)中,此驅(qū)動(dòng)芯片的作用主要是放大電流。因?yàn)閱纹瑱C(jī)的引腳輸出電流大約為30mA,而一般的電機(jī)的工作電流在十幾安培左右。故采用此芯片可以保證電機(jī)正常工作。L298的邏輯功能如下表3-9。 表3-9 L298的邏輯功能IN1IN2ENA電機(jī)狀態(tài)XX0停止101正轉(zhuǎn)011反轉(zhuǎn)001停止111停止第四章 系統(tǒng)電路設(shè)計(jì)整個(gè)設(shè)計(jì)的電路包括了最小系統(tǒng)電路、溫度采集電路、溫度顯示電路、報(bào)警電路、按鍵電路等。4.1 主電路程序主程序的主要功能是負(fù)責(zé)溫度的實(shí)時(shí)顯示、讀出并處
46、理DS18B20的溫度值。主程序的另一功能是判斷上限溫度是否大于下限溫度。其程序流程見圖4-1所示。由總的流程圖可以分析出,在整個(gè)程序中應(yīng)該包括如下幾個(gè)部分:讀取DS18B20溫度子程序,溫度轉(zhuǎn)換子程序,溫度計(jì)算子程序,數(shù)據(jù)顯示子程序等。主程序流程圖如下所示。開始上限大于下限?N系統(tǒng)初始化按鍵設(shè)置YerrorY顯示溫度按鍵檢測(cè)?溫度極限?YN從DS18B20中讀取溫度報(bào)警程序N圖4-1 主程序流程圖返回4.2 晶振復(fù)位電路晶振、復(fù)位電路與單片機(jī)連接構(gòu)成最小系統(tǒng)電路,如何選取合適的引腳,選取何種連接方式都至關(guān)重要。因此需要了解AT89C51的引腳特點(diǎn)。圖4-2為AT89C51單片機(jī)的引腳圖。 圖
47、4-2 AT89C51單片機(jī)引腳圖在晶振電路中,AT89C51具有兩種晶振方式,一種是片內(nèi)時(shí)鐘振蕩方式,但需要在引腳外接石英晶體和振蕩電容,振蕩電容的值一般取10-30pf。另一種是外部時(shí)鐘方式,即將XTAL1接外部時(shí)鐘,XTAL2腳懸空。本設(shè)計(jì)的晶振電路采用片內(nèi)時(shí)鐘振蕩方式,如圖4-3所示。 圖4-3 晶振電路單片機(jī)的晶振頻率采用12MHZ,加兩個(gè)30pF電容。兩個(gè)電容主要用于校正波形,振蕩器的作用主要是產(chǎn)生時(shí)鐘振蕩。而整個(gè)電路的作用則是為了產(chǎn)生自激振蕩。對(duì)于復(fù)位電路,AT89C51有兩種復(fù)位方式,分別是上電復(fù)位和按鍵復(fù)位。本設(shè)計(jì)采用的是按鍵復(fù)位,即利用復(fù)位電容和按鍵的組合。按鍵復(fù)位:引腳R
48、ST作用是復(fù)位輸入。當(dāng)振蕩器復(fù)位時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。在按下按鍵后,系統(tǒng)自動(dòng)復(fù)位。在復(fù)位電路中添加按鍵主要是為了能夠使得復(fù)位更加方便,電容主要是在復(fù)位后進(jìn)行充電,而下拉電阻起到限流的作用,保護(hù)了電路。圖4-4 復(fù)位電路 讀出溫度程序的主要功能是讀出RAM中的數(shù)據(jù)。在讀出時(shí)需進(jìn)行CRC校驗(yàn),校驗(yàn)有錯(cuò)時(shí)不進(jìn)行溫度數(shù)據(jù)的讀取。其程序流程圖如圖4-5所示。發(fā)DS18B20復(fù)位命令CRC校驗(yàn)?N發(fā)跳過(guò)ROM命令Y發(fā)讀取溫度命令移入溫度寄存器讀取操作N結(jié)束全部讀完? Y圖4-5 讀出溫度子程序流程圖圖4-5 讀出溫度程序流程圖4.3 溫度采集電路溫度采集電路主要運(yùn)用到了DS18B20
49、和AT89C51。如何使兩者連接實(shí)現(xiàn)功能是溫度控制電路的主要設(shè)計(jì)目的。圖4-6 DS18B20管腳圖在硬件上,DS18B20與單片機(jī)的連接有兩種方法,一種是VCC接外部電源,GND接地,DQ與單片機(jī)的I/O線相連;另一種是用寄生電源供電,此時(shí)VCC、GND接地,DQ接單片機(jī)I/O。內(nèi)部寄生電源DQ口線要接5K左右的上拉電阻。這里采用的是第一種連接方法,DS18B20的1腳接地,3腳接電源,2腳接單片機(jī)的P2.7口。如圖4-7所示:圖4-7 溫度采集電路溫度采集部分軟件編程包括溫度轉(zhuǎn)換程序、溫度計(jì)算程序及溫度顯示程序。溫度轉(zhuǎn)換程序是從發(fā)溫度轉(zhuǎn)化命令開始。當(dāng)采用12位分辨率時(shí),轉(zhuǎn)換時(shí)間約為750m
50、s。溫度轉(zhuǎn)化命令程序流程圖如下所示。發(fā)DS18B20復(fù)位命令發(fā)跳過(guò)ROM命令發(fā)溫度轉(zhuǎn)換開始命令結(jié)束 圖4-8溫度轉(zhuǎn)化程序流程圖 溫度計(jì)算程序?qū)AM中讀取的值進(jìn)行BCD碼的轉(zhuǎn)化運(yùn)算,并進(jìn)行溫度值正負(fù)的判定。計(jì)算溫度程序流程圖如下所示。開始計(jì)算小數(shù)位溫度BCD值N溫度零下?計(jì)算整數(shù)位溫度BCD值Y溫度值取補(bǔ)碼置“-”標(biāo)志結(jié)束無(wú)標(biāo)志圖4-9 溫度計(jì)算程序流程圖溫度顯示程序主要是對(duì)顯示緩沖器中的顯示數(shù)據(jù)進(jìn)行刷新操作。 一個(gè)字節(jié)不能直接在顯示屏上顯示,這就需要將字節(jié)通過(guò)處理轉(zhuǎn)化成能在LCD上顯示的數(shù),所以在接收到溫度信息后,需要通過(guò)程序的轉(zhuǎn)化,變成能在LCD上顯示的字符。溫度顯示程序流程圖如下圖所示。 溫度數(shù)據(jù)移入顯示寄存器N百位數(shù)為0?N十位數(shù)為0 ?Y百位顯示數(shù)據(jù)(不顯示符號(hào))百位顯示符號(hào)十位顯示數(shù)據(jù)十位顯示符號(hào)百位不顯示Y結(jié)束 圖4-10溫度顯示程序流程圖4.4 按鍵電路 本次設(shè)計(jì)采用3*4矩陣鍵盤電路,方便用戶設(shè)置上下限。由下圖可以看出其工作原理。當(dāng)按下上限按鈕,則進(jìn)入十位設(shè)置,完成后,自動(dòng)跳轉(zhuǎn)到個(gè)位進(jìn)行設(shè)置。若需要修改時(shí),重復(fù)上面的操作步驟直至合適為止。下面分別為按鍵硬件電路和流程圖。 圖4-11 按鍵電路 上限或下限按下?N Y下限設(shè)置上限設(shè)置返回圖4-12 按鍵程序流程圖4.5驅(qū)動(dòng)電路 在P
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 廣東江門幼兒師范高等專科學(xué)校《基礎(chǔ)英語(yǔ)二》2023-2024學(xué)年第一學(xué)期期末試卷
- 廣東財(cái)貿(mào)職業(yè)學(xué)院《陳設(shè)設(shè)計(jì)》2023-2024學(xué)年第一學(xué)期期末試卷
- 二氧化碳制備課件
- 《如何贏得合作》課件
- 贛州職業(yè)技術(shù)學(xué)院《工程計(jì)量與計(jì)價(jià)》2023-2024學(xué)年第一學(xué)期期末試卷
- 2024“五史”全文課件
- 小學(xué)生手工剪紙課件
- 贛南衛(wèi)生健康職業(yè)學(xué)院《漢語(yǔ)言文學(xué)專業(yè)概論》2023-2024學(xué)年第一學(xué)期期末試卷
- 贛南科技學(xué)院《燃燒學(xué)B》2023-2024學(xué)年第一學(xué)期期末試卷
- 《保護(hù)煤柱的設(shè)計(jì)》課件
- 奧齒泰-工具盒使用精講講解學(xué)習(xí)課件
- 最新MARSI-醫(yī)用黏膠相關(guān)皮膚損傷課件
- 工程開工報(bào)審表范本
- 航空小鎮(zhèn)主題樂(lè)園項(xiàng)目規(guī)劃設(shè)計(jì)方案
- 保潔冬季防滑防凍工作措施
- 少兒美術(shù)課件-《我的情緒小怪獸》
- 永續(xù)債計(jì)入權(quán)益的必備條件分析
- 預(yù)應(yīng)力鋼絞線張拉伸長(zhǎng)量計(jì)算程序單端(自動(dòng)版)
- 基坑監(jiān)測(cè)課件ppt版(共155頁(yè))
- 開發(fā)區(qū)開發(fā)管理模式及發(fā)展要素PPT課件
- 急診科科主任述職報(bào)告范文
評(píng)論
0/150
提交評(píng)論