付費(fèi)下載
下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、基于單片機(jī)的溫度控制系統(tǒng)設(shè)計(jì)1 .設(shè)計(jì)要求要求設(shè)計(jì)一個(gè)溫度測(cè)量系統(tǒng),在超過限制值的時(shí)候能進(jìn)行聲光報(bào)警。具體設(shè)計(jì)要求如下:數(shù)碼管或液晶顯示屏顯示室內(nèi)當(dāng)前的溫度;在不超過最高溫度的情況下,能夠通過按鍵設(shè)置想要的溫度并顯示;設(shè)有四個(gè)按鍵,分別是設(shè)置鍵、加1鍵、減1鍵和啟動(dòng)/復(fù)位鍵;DS18B20溫度采集;超過設(shè)置值的石C時(shí)發(fā)出超限報(bào)警,采用聲光報(bào)警,上限報(bào)警用紅燈指示,下限報(bào)警用黃燈指示,正常用綠燈指示。2 .方案論證根據(jù)設(shè)計(jì)要求,本次設(shè)計(jì)是基于單片機(jī)的課程設(shè)計(jì),由于實(shí)現(xiàn)功能比較簡(jiǎn)單,我們學(xué)習(xí)中接觸到的51系列單片機(jī)完全可以實(shí)現(xiàn)上述功能,因此可以選用AT89C51單片機(jī)。溫度采集直接可以用設(shè)計(jì)要求中
2、所要求的DS18B20。報(bào)警和指示模塊中,可以選用3種不同顏色的LED燈作為指示燈,報(bào)警鳴笛采用蜂鳴器。顯示模塊有兩種方案可供選擇。方案一:使用LED數(shù)碼管顯示采集溫度和設(shè)定溫度;方案二:使用LCD液晶顯示屏來顯示采集溫度和設(shè)定溫度。LED數(shù)碼管結(jié)構(gòu)簡(jiǎn)單,使用方便,但在使用時(shí),若用動(dòng)態(tài)顯示則需要不斷更改位選和段選信號(hào),且顯示時(shí)數(shù)碼管不斷閃動(dòng),使人眼容易疲勞;若采用靜態(tài)顯示則又需要更多硬件支持。LCD顯示屏可識(shí)別性較好,背光亮度可調(diào),而且比LED數(shù)碼管顯示更多字符,但是編程要求比LED數(shù)碼管要高。綜合考慮之后,我選用了LCD顯示屏作為溫度顯示器件,由于顯示字符多,在進(jìn)行上下限警戒值設(shè)定時(shí)同樣可以
3、采集并顯示當(dāng)前溫度,可以直觀的看到實(shí)際溫度與警戒溫度的對(duì)比。LCD顯示模塊可以選用RT1602C。3 .硬件設(shè)計(jì)根據(jù)設(shè)計(jì)要求,硬件系統(tǒng)主要包含6個(gè)部分,即單片機(jī)時(shí)鐘電路、復(fù)位電路、鍵盤接口模塊、溫度采集模塊、LCD顯示模塊、報(bào)警與指示模塊。具相互聯(lián)系如下圖1所示:單片機(jī)時(shí)鐘電路單片機(jī)硬件電路設(shè)計(jì)框圖單片機(jī)時(shí)鐘電H位電路形成!單片機(jī)時(shí)鐘信號(hào)內(nèi)方式有內(nèi)部時(shí)鐘方式如外部時(shí)鐘濟(jì)k計(jì)米用內(nèi)部時(shí)鐘方度鼎瓦遂所工單片機(jī)內(nèi)部有一個(gè)用于構(gòu)成振蕩器的高增益反相放大器,引腳XTAL1和XTALC122pFXTAL2分別為此放大器的輸入端和輸出端,其頻率范圍為12MHz,經(jīng)由片外晶體振蕩器或陶瓷振蕩器與兩個(gè)匹配電容L
4、CD顯示模塊|報(bào)警與指不哂1X2XIGXDGND圖2單片機(jī)內(nèi)部時(shí)鐘方式電路起形成了一個(gè)自激振蕩電路,為單片機(jī)提供時(shí)鐘源。復(fù)位電路復(fù)位是單片機(jī)的初始化操作,其作用是使CPU和系統(tǒng)中的其他部件都處于個(gè)確定的初始狀態(tài),并從這個(gè)狀態(tài)開始工作,以防止電源系統(tǒng)不穩(wěn)定造成CPU工作不正常。在系統(tǒng)中,有時(shí)會(huì)出現(xiàn)工作不正常的情況,為了從異常狀態(tài)中恢復(fù),同RSTR31kGND時(shí)也為了系統(tǒng)調(diào)試方便,需要設(shè)計(jì)一個(gè)復(fù)位電路圖3單片機(jī)按鍵復(fù)位電路0單片機(jī)的復(fù)位電路有上電復(fù)位和按鍵復(fù)位兩種形式,因?yàn)楸敬卧O(shè)計(jì)要求需要有啟動(dòng)/復(fù)位鍵,因此本次設(shè)計(jì)采用按鍵復(fù)位,如圖3。復(fù)位電路主要完成系統(tǒng)的上電復(fù)位和系統(tǒng)在運(yùn)行時(shí)用戶的按鍵復(fù)位功
5、能。鍵盤接口模塊圖4鍵盤接口模塊o134專1ppppP本次設(shè)計(jì)需要的按鍵有4個(gè),除去一個(gè)復(fù)位按鍵外,還有3個(gè)功能按鍵,因此選擇獨(dú)立式鍵盤。如圖4,將鍵盤直接與單片機(jī)P1口的、相連。3個(gè)鍵設(shè)計(jì)思路如下:當(dāng)按下S1鍵時(shí),系統(tǒng)進(jìn)入上下限警戒值調(diào)整狀態(tài);當(dāng)?shù)谝淮伟聪耂1鍵時(shí),進(jìn)行上限警戒值設(shè)定,當(dāng)?shù)诙伟聪耂1鍵時(shí),進(jìn)行下限警戒值設(shè)定,當(dāng)?shù)谌伟聪耂1鍵時(shí),回到正常工作狀態(tài)。在警戒值調(diào)整狀態(tài)下,按下S2鍵,上下限警戒值加1,按下S3鍵,上下限警戒值減1,正常工作狀態(tài)下,按下S2和S3鍵無作用。溫度采集模塊本次設(shè)計(jì)中的溫度傳感器使用的是DALLAS公司的單總線數(shù)字溫度傳感器DS18B20,這是一種常用的
6、溫度傳感器,具有體積小、硬件開銷低、抗干擾能力強(qiáng)、精度高的特點(diǎn)。DS18B20采用獨(dú)特的一線接口,具有只需要一條口線通信多點(diǎn)的能力,簡(jiǎn)化了分布式溫度傳感應(yīng)用,無需外部元件。可用數(shù)據(jù)總線供電,電壓范圍為V至,測(cè)量溫度的范圍為-55C至+125C,在-10C至+85C范圍內(nèi)精度為土C。溫度傳感器可編程的分辨率為912位,溫度轉(zhuǎn)換為12位數(shù)字格式最大值為750毫秒,用戶可定義的非易失性溫度報(bào)警設(shè)置,應(yīng)用范圍包括恒溫控制、工業(yè)l«TT1(1X1VIDSIKB20To-yiPuckiixc引腳功前GNO接地DQ料據(jù)輸入/輸出,制于單線操作:漏搬開路。當(dāng)工作在寄生電源模式時(shí)用來提供電源*VDD可
7、選的VDD引腳口工作于寄生電源模式時(shí)VDD必須接地0DS18B20是一條口線通信,所以與系統(tǒng)、溫度計(jì)、或任何熱敏感系統(tǒng)。由于DS18B20只有一個(gè)一條口線連接。因?yàn)槊恳粋€(gè)DS18B20的包含一個(gè)獨(dú)特的序號(hào),多個(gè)DS18B20可以同時(shí)存在于一條總線,這使得溫度傳感器放置在許多不同的地方。它的用途很多,包括空調(diào)環(huán)境控制,感測(cè)建筑物內(nèi)溫設(shè)備或機(jī)器,并進(jìn)行過程監(jiān)測(cè)和控制。圖5DS18B20封裝及弓|腳DS18B20的核心功能是它的直接讀數(shù)字的溫度傳感器。溫度傳感器的精度為用戶可編程的9、10、11或12位,分別以C,C,C和C增量遞增。在上電狀態(tài)下默認(rèn)的精度為12位。DS18B20啟動(dòng)后保持低功耗等待
8、狀態(tài);當(dāng)需要執(zhí)行溫度測(cè)量和AD轉(zhuǎn)換時(shí),總線控制器必須發(fā)出44h命令。在那之后,產(chǎn)生的溫度數(shù)據(jù)以兩個(gè)字節(jié)的形式被存儲(chǔ)到高速暫存器的溫度寄存器中,DS18B20繼續(xù)保持等待狀態(tài)。當(dāng)DS18B20由外部電源供電時(shí),總線控制器在溫度轉(zhuǎn)換指令之后發(fā)起“讀時(shí)序”,DS18B20正在溫度轉(zhuǎn)換中返回0,轉(zhuǎn)換結(jié)束返回1。如果DS18B20由寄生電源供電,除非在進(jìn)入溫度轉(zhuǎn)換時(shí)總線被一個(gè)強(qiáng)上拉拉高,否則將不會(huì)由返回值。在硬彳上,DS18B20與單片機(jī)的連接有兩種方法:一種是VDD接外部電源,GND接地,DQ與單片機(jī)的I/O相連;另一種是用寄生電源供電,此時(shí),VDD、GND接地,DQ接單片機(jī)的I/O口。無論是接外部電
9、源還是用內(nèi)部寄生電源,I/O口線要接5kQ左右的上拉電阻。本次設(shè)計(jì)中,采用外部電源方式,其連接方式如圖6所示。單總線DQ端接單片機(jī)的口,DQ端接一個(gè)Q的上拉電阻,這樣單總線DQ在閑置狀態(tài)時(shí)為高電平。圖6DS18B20外部電源連接方式LCD顯示模塊在本次設(shè)計(jì)中,使用RT1602c字符型液晶顯示模塊(LCM)來設(shè)計(jì)當(dāng)前溫度和上下限警戒值的顯示電路。VCCVCCI/OGNDD18B20DQGNDRT1602c字符型液晶顯示模塊是16字X2行的采用5X7點(diǎn)陣圖形來顯示字引腳號(hào)引腳名說明引腳號(hào)引腳名說明1GND/Vss電源地7D08位雙向數(shù)據(jù)線2Vdd+5V電源8D13Vl液晶顯小偏壓仁號(hào)9D24RS數(shù)
10、據(jù)/命令控制,H/L10D35R/W讀/寫控制,H/L11D46E使能端12D5符的液晶顯示器,采用標(biāo)準(zhǔn)的16腳接口,其引腳定義如圖7所示。15BLA背光源正極13D616BLK背光源負(fù)極14D7圖7RT1602c的弓I腳定義RT1602c的內(nèi)部結(jié)構(gòu)可以分為3個(gè)部分:LCD控制器、LCD驅(qū)動(dòng)器、LCD顯示器,其中LCD控制器采用的是HD44780ORT1602c與單片機(jī)的連線如圖8所示。LCDL6O2LCD1602,3口_I君匚1_第:S名匕寸二二hAaRh二二2二匚1口二工圖8RT1602c與單片機(jī)連線LCM的數(shù)據(jù)總線與單片機(jī)的P0口通過一個(gè)上拉電阻排相連,LCM的三條控制線RS、RW、EN
11、分別與單片機(jī)的I/O口、相連,第1、2引腳分別與地、電源相連,第3引腳使用一個(gè)10kQ的可調(diào)電阻對(duì)顯示屏的明亮進(jìn)行調(diào)整。報(bào)警與指示模塊在本次設(shè)計(jì)中,采)LED發(fā)光二極管作為系統(tǒng)指示燈,采用蜂鳴器作為報(bào)警鳴笛。當(dāng)溫度高于上限警戒值時(shí),點(diǎn)亮紅色發(fā)光二極管,蜂鳴器發(fā)出響聲;當(dāng)溫度低于下限警戒值時(shí),點(diǎn)亮黃色發(fā)光二極管,蜂鳴器發(fā)出響圖9報(bào)警與指示模塊聲;溫度在正常范圍內(nèi)時(shí),點(diǎn)亮黃色發(fā)光二極管。整個(gè)報(bào)警與指示電路如圖所示,其中綠、紅、黃色指示燈分別接單片機(jī)、口,電平拉低時(shí)點(diǎn)亮LED,蜂鳴器電路接單片機(jī)的口,電平拉高時(shí)蜂鳴器響。至此便完成了整個(gè)硬件電路的設(shè)計(jì)工作,整個(gè)系統(tǒng)的原理圖見附錄二,系統(tǒng)I/O分配表如
12、下:I/O口功能說明I/O口功能說明LCM數(shù)據(jù)口LCM讀/寫控制鍵盤輸入LCM使能DS18B20溫度采集LED心輸出LCM數(shù)據(jù)/命令控制報(bào)警信號(hào)輸出4.軟件設(shè)計(jì)單片機(jī)應(yīng)用系統(tǒng)的設(shè)計(jì)中,軟件設(shè)計(jì)占有重要的位置。在本次設(shè)計(jì)中,根據(jù)功能要求,可以把系統(tǒng)程序劃分為5個(gè)模塊,即主程序模塊、顯示模塊、溫度測(cè)量模塊、鍵盤掃描模塊、其它子程序模塊,如圖10所小。主程序的內(nèi)容包括單片機(jī)初始化、等。主程序清單如下,程序流程圖如圖/*主程序*/相關(guān)部件初始化和一些其它子程序的調(diào)用11所示。開始voidmain(void)(P1=0xff;、真分析圖13單愚嫡命令序列初始化初始化單片機(jī)主程序設(shè)計(jì)在本次的設(shè)計(jì)中,使用了
13、Proteus仿真軟件進(jìn)行了功能測(cè)試,具體仿真步驟及分析如下。按照原理圖,從Proteus元件庫中找出對(duì)應(yīng)元件,搭建硬件仿真電路,將程序燒寫到單片機(jī)中,仿真圖見附錄三。(2)點(diǎn)擊運(yùn)行按鈕開始仿真,初始上下限值為90c和10C,當(dāng)前溫度為25C,當(dāng)前模式為N正常工作,綠燈亮,蜂鳴器不響,如圖圖16正常模式下仿真圖Ktadll也MtnFl16。(3)按下S1鍵,進(jìn)入上限警戒值設(shè)置模式H,此時(shí)按S2、S3鍵可以進(jìn)行上限值設(shè)定,同時(shí)溫度正常顯示,設(shè)置上限值80C,如圖17。(4)再次按下S1鍵,進(jìn)入下片直豆匕時(shí)按S2、S3鍵可以進(jìn)行下墳限值設(shè)定,同時(shí)溫度正常顯示,設(shè)置下限值20C,如圖18。R-1通T
14、MJ9工,圖18下限值設(shè)定仿真圖(5)再次按下S1鍵,返回正常模式N,調(diào)節(jié)DS18B20溫度,測(cè)量溫度隨之改變,降低溫度,超過下限值5c以下時(shí),黃燈亮,蜂鳴器報(bào)警,如圖19I獸IjaacLena;2hc|flodtiH14C”:曲g3=亍亙可下”工巳宜|同王司打用可卜:"但一圖19下限報(bào)警仿真圖(6)升高溫度,超過上限值5c以上時(shí),黃燈亮,蜂鳴器報(bào)警,如圖20。FliSS9CLou;20C5drN口T火亮坦HE.巨民工苫蘭宮一?工胃-按下S4鍵,單片機(jī)復(fù)位。圖20上限報(bào)警仿真圖在本次仿真中,可以看出,本次設(shè)計(jì)的硬件電路和軟件程序均能成功仿真出來,設(shè)計(jì)要求的各種功能均已達(dá)到。6 .總結(jié)
15、本次課程設(shè)計(jì)為期一周,到此已全部結(jié)束?;叵胍恢苤械脑O(shè)計(jì)過程,我深深感覺收獲良多。由于從前只是在理論上學(xué)習(xí)了單片機(jī)以及各種其它知識(shí),即使是實(shí)驗(yàn)也只是按照實(shí)驗(yàn)指導(dǎo)書進(jìn)行操作,并沒有實(shí)際的獨(dú)立設(shè)計(jì)一個(gè)系統(tǒng),因此在剛開始接觸本次課程設(shè)計(jì)時(shí),有一點(diǎn)無從下手的感覺。后來通過查閱相關(guān)資料,漸漸開始了解課程設(shè)計(jì)的一般過程,開始明白一些元器件的相關(guān)作用與編程實(shí)現(xiàn)方法,并在此期間通過不斷深入的學(xué)習(xí)和鍛煉,開始漸漸能熟練運(yùn)用和熟練編程起來。通過本次計(jì)算機(jī)控制技術(shù)的課程設(shè)計(jì),我更深層次的把理論知識(shí)和實(shí)際設(shè)計(jì)結(jié)合在一起,鍛煉了我的綜合運(yùn)用所學(xué)的專業(yè)基礎(chǔ)知識(shí)和解決實(shí)際工程問題的能力。同時(shí)也提升了我查閱文獻(xiàn)資料、設(shè)計(jì)手冊(cè)、
16、設(shè)計(jì)規(guī)范以及電腦制圖等其他知識(shí)能力水平。對(duì)各種系統(tǒng)的適用條件,各種設(shè)備的選用標(biāo)準(zhǔn),各種管道的安裝方式,我都是隨著設(shè)計(jì)的不斷深入而逐漸熟悉并學(xué)會(huì)應(yīng)用的。并且,通過對(duì)整體的掌控,對(duì)局部的取舍,對(duì)細(xì)節(jié)的斟酌處理,以及繪圖的技巧都使我在設(shè)計(jì)領(lǐng)域的能力得到了鍛煉,得到了較豐富經(jīng)驗(yàn)。?最后,通過這次的課程設(shè)計(jì),我也深刻地認(rèn)識(shí)到,只有將書本與具體的實(shí)踐相結(jié)合,才會(huì)有真正的收獲,才能鞏固自己的所學(xué),認(rèn)識(shí)到自己的不足,同時(shí)我們也要有一種積極學(xué)習(xí)的態(tài)度,時(shí)代在進(jìn)步我們也要跟著時(shí)代前進(jìn),要不斷學(xué)習(xí),不斷創(chuàng)新,用自己的知識(shí)與行動(dòng)來證明自己的價(jià)值。本次課程設(shè)計(jì)以單片機(jī)為核心,介紹了用DS18B20溫度傳感器進(jìn)行溫度采集
17、,并將其傳輸給AT89C51單片機(jī)進(jìn)行處理再送到LCD顯示屏顯示。在此期間可以通過按鍵進(jìn)行上下限警戒值設(shè)置,通過LED和蜂鳴器進(jìn)行指示和報(bào)警。本文是采用模塊化的方式進(jìn)行敘述,對(duì)各模塊的設(shè)計(jì)進(jìn)行了比較詳細(xì)地闡述,并著重分析硬件搭建過程和系統(tǒng)軟件的設(shè)計(jì)過程,使用單片機(jī)C語言進(jìn)行程序沒計(jì)。本次設(shè)計(jì)的基于DS18B20的溫度測(cè)量系統(tǒng)是一個(gè)分布式的溫度測(cè)量系統(tǒng),它可以遠(yuǎn)程對(duì)溫度實(shí)現(xiàn)測(cè)量和監(jiān)控,廣泛應(yīng)用于電力工業(yè)、煤礦、森林、火災(zāi)、高層建筑等場(chǎng)合。本設(shè)計(jì)應(yīng)用性比較強(qiáng),可以應(yīng)用在倉(cāng)庫溫度、大棚溫度、機(jī)房溫度、水池等的監(jiān)控。當(dāng)然,本次設(shè)計(jì)還存在一些不足,例如在本次設(shè)計(jì)中,由于時(shí)間較短,警戒值只是在199c之間
18、,沒有能夠擴(kuò)展到負(fù)溫度和100c以上;在本次設(shè)計(jì)中只是用了4個(gè)獨(dú)立按鍵,實(shí)現(xiàn)簡(jiǎn)單的上下限警戒值設(shè)定,操作較麻煩,如果能夠設(shè)計(jì)出多按鍵的矩陣式鍵盤,則能夠?qū)囟冗M(jìn)行很方便的設(shè)定。此外如果把本設(shè)計(jì)方案擴(kuò)展為多點(diǎn)溫度控制,加上上位機(jī),則可以實(shí)現(xiàn)遠(yuǎn)程溫度監(jiān)控系統(tǒng),將具有更大的應(yīng)用價(jià)值。7 .參考文獻(xiàn)1潘新民,王燕芳.微型計(jì)算機(jī)控制技術(shù)M.北京:電子工業(yè)出版社,20142王迎旭.單片機(jī)原理與應(yīng)用M.北京:機(jī)械工業(yè)出版社,20133康華光.電子技術(shù)基礎(chǔ)M.北京:高等教育出版社,20134周正華,唐寧RT1602c與FPGA接口技術(shù)J.中國(guó)科技信息,2008(10)5廖琪梅,韓彬等.基于DS18B20的溫度
19、測(cè)量?jī)xJ.國(guó)外電子元器件,2008(2)附錄一:程序清單#include<>#include<>#include<>#defineucharunsignedchar#defineuintunsignedint#defineBUSY0x80voidDelay(uint);voidinit_LcD(void);voidLcD_command(uchar,uchar);voidLcD_Data(uchar);voidReadyLcD(void);voidDisplay_char(uchar,uchar,uchar);voidDisplay_str(uchar,uc
20、har,ucharcode*Data);voidchange(void);voidDisplay(void);voidinit_18B20(void);ucharRead_18B20(void);voidWrite_18B20(uchar);voidRead_temp(void);voidDelay_us(uchari);voidKey_scan(void);voidKey_set(void);voidKey_inc(void);voidKey_dec(void);voidAlarm(void);sbitLCD_RS=P2A0;sbitLCD_RW=P2A1;sbitLCD_EN=P2A2;s
21、bitDQ=P1A7;sbitNormal=P2A4;sbitAlarm_H=P2A5;sbitAlarm_L=P2A6;sbitAlarm_BEEP=P2A7;ucharSet_flag=0;ucharTemp_mea,Temp_set1,Temp_set2;ucharTemp_high_1,Temp_high_2;ucharTemp_low_1,Temp_low_2;ucharTemp_true_1,Temp_true_2;externucharcodestr0="High:CLow:C"externucharcodestr1="Mode:Deg:C"
22、;externucharcodestr2="Hellow!"externucharcodemode="NHL"/*主程序*/voidmain(void)P1=0xff;P2|=0x70;P2&=0x7f;Temp_set1=90;/Temp_set2=10;/上限報(bào)警溫度初值90下限報(bào)警溫度初值10Delay(500);/延時(shí)500ms啟動(dòng)init_LCD();/LCD初始化init_18B20();/DS18B20初始化開機(jī)界面Display_str(0,0,str2);/Display_str(0,1,str2);/開機(jī)界面Delay(200
23、0);Display_str(0,0,str0);Display_str(0,1,str1);while(1)Key_scan();/掃描鍵盤Read_temp();/讀取溫度Change();Display();/顯示Alarm();/指示燈與報(bào)警程序Delay(1000);/*延時(shí)kms*/voidDelay(uintk)(uinti,j;for(i=0;i<k;i+)(for(j=0;j<60;j+)(J/*顯示模塊*/*LCD初始化*/voidinit_LCD(void)P0=0;Delay(15);LCD_Command(0x38,0);Delay(5);LCD_Comm
24、and(0x38,0);Delay(5);LCD_Command(0x38,0);Delay(5);LCD_Command(0x38,1);/8位數(shù)據(jù)傳送,2行顯示,5*7字形LCD_Command(0x08,1);/關(guān)閉顯示LCD_Command(0x01,1);/清屏LCD_Command(0x06,1);/顯示光標(biāo)右移設(shè)置LCD_Command(0x0c,1);/顯示屏打開,光標(biāo)不顯示不閃爍/*寫指令數(shù)據(jù)到LCD*/voidLCD_Command(ucharLC,ucharBC)(if(BC)ReadyLCD();P0=LC;LCD_RS=0;/選中指令寄存器LCD_RW=0;/寫模式L
25、CD_EN=1;_nop_();_nop_();_nop_();LCD_EN=0;*寫顯示數(shù)據(jù)到LCD*/voidLCD_Data(ucharLD)(ReadyLCD();P0=LD;LCD_RS=1;/選中數(shù)據(jù)寄存器LCD_RW=0;/寫模式LCD_EN=1;_nop_();_nop_();_nop_();LCD_EN=0;/*檢測(cè)LCD忙狀態(tài)*voidReadyLCD(void)(P0=0xff;LCD_EN=1;LCD_RS=0;LCD_RW=1;_nop_();while(P0&BUSY)(LCD_EN=0;_nop_();_nop_();LCD_EN=1;_nop_();_n
26、op_();LCD_EN=0;/*顯示一個(gè)字符*/voidDisplay_char(ucharX,ucharY,ucharData)Y&=0x01;X&=0x0f;if(Y)X|=0x40;X|=0x80;LCD_Command(X,0);LCD_Data(Data);/*顯示一用字符*/voidDisplay_str(ucharX,ucharY,ucharcode*Data)ucharList=0;Y&=0x01;X&=0x0f;while(X<16)Display_char(X,Y,DataList);List+;X+;/*顯示字型轉(zhuǎn)換*/voidCh
27、ange(void)Temp_high_1=Temp_set1/10;Temp_high_2=Temp_set1%10;Temp_low_1=Temp_set2/10;Temp_low_2=Temp_set2%10;Temp_true_1=Temp_mea/10;Temp_true_2=Temp_mea%10;/*顯示子程序*/voidDisplay(void)Display_char(5,0,str3Temp_high_1);Display_char(6,0,str3Temp_high_2);Display_char(13,0,str3Temp_low_1);Display_char(14,
28、0,str3Temp_low_2);Display_char(5,1,modeSet_flag);Display_char(13,1,str3Temp_true_1);Display_char(14,1,str3Temp_true_2);/*溫度測(cè)量模塊*/*DS18B20初始化*/voidinit_18B20(void)ucharx=0;DQ=1;/DQ復(fù)位Delay_us(4);/延時(shí)DQ=0;/將DCK低480usDelay_us(250);/精確延時(shí)大于DQ=1;/拉高總線Delay_us(40);x=DQ;Delay_us(20);/*從DS18B20g取一個(gè)字節(jié)數(shù)據(jù)*/ucharR
29、ead_18B20(void)uchari=0;uchardat=0;for(i=8;i>0;i-)DQ=0;_nop_();dat>>=1;DQ=1;Delay_us(1);if(DQ)dat|=0x80;Delay_us(10);return(dat);/*向DS18B20W入一個(gè)字節(jié)數(shù)據(jù)*/voidWrite_18B20(uchardat)uchari=0;for(i=8;i>0;i-)DQ=0;_nop_();DQ=dat&0x01;Delay_us(10);DQ=1;dat>>=1;Delay_us(10);)/*從DS18B2瞇取溫度*/voidRead_temp(void)uchara=0;ucharb=0;uchart=0;init_18B20();Write_18B20(0xcc);Write_18B20(0x44);init_18B20();Write_18B20(0xcc);Write_18B20(0xbe);a=Read_18B20();b=Read_18B20();t=b;t<<=8;t=t|a;Temp_mea=t*;/*精確延時(shí)*/voidDelay_
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 外國(guó)文學(xué)試題及答案
- 納米晶體科普
- 特殊用餐包房管理制度(3篇)
- 礦石運(yùn)輸質(zhì)量管理制度(3篇)
- 2026年及未來5年市場(chǎng)數(shù)據(jù)中國(guó)海水淡化設(shè)備市場(chǎng)發(fā)展前景預(yù)測(cè)及投資戰(zhàn)略咨詢報(bào)告
- 《GA 574-2005警服材料 中空組合式大檐帽架》專題研究報(bào)告深度
- 《GAT 1384-2017刑事案件偵查業(yè)務(wù)實(shí)體數(shù)據(jù)項(xiàng)》專題研究報(bào)告
- 2025-2026學(xué)年四年級(jí)上冊(cè)道德與法治【知識(shí)點(diǎn)+單元+期中+期末測(cè)試卷題】
- 養(yǎng)老院九防制度
- 企業(yè)員工獎(jiǎng)懲與晉升管理制度
- 湖口縣2026年第一批單位公開選調(diào)事業(yè)編制工作人員【32人】參考題庫附答案
- 小區(qū)場(chǎng)地租賃合同協(xié)議
- 統(tǒng)計(jì)分析培訓(xùn)課件
- 2025至2030中國(guó)乳鐵蛋白行業(yè)調(diào)研及市場(chǎng)前景預(yù)測(cè)評(píng)估報(bào)告
- 2026年山東力明科技職業(yè)學(xué)院?jiǎn)握芯C合素質(zhì)筆試備考試題帶答案解析
- 2026年人教版七年級(jí)英語上冊(cè)期末真題試卷含答案
- 2025年阿勒泰地區(qū)哈巴河縣保安員招聘考試題庫附答案解析
- 高速公路bt合同范本
- 2026年《必背60題》酒店前廳接待經(jīng)理高頻面試題包含詳細(xì)解答
- 廣東省廣州市海珠區(qū)2024-2025學(xué)年七年級(jí)上學(xué)期期末考試數(shù)學(xué)試卷(含答案)
- 地下消防水池設(shè)備安裝方案
評(píng)論
0/150
提交評(píng)論