基于串口通訊單片機(jī)測溫系統(tǒng)設(shè)計(jì)_第1頁
基于串口通訊單片機(jī)測溫系統(tǒng)設(shè)計(jì)_第2頁
基于串口通訊單片機(jī)測溫系統(tǒng)設(shè)計(jì)_第3頁
基于串口通訊單片機(jī)測溫系統(tǒng)設(shè)計(jì)_第4頁
基于串口通訊單片機(jī)測溫系統(tǒng)設(shè)計(jì)_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、武漢紡織大學(xué)機(jī)械設(shè)計(jì)及其自動化學(xué)院課程設(shè)計(jì)(論文)說明書論文題目 基于串行口收發(fā)電路的溫度測量單片機(jī)系統(tǒng)設(shè)計(jì)學(xué) 號 1302220132 學(xué)生姓名 彭航 專業(yè)班級 測控11301班 任課老師 喬 橋 總評成績 2016 年 1 月 6 日摘 要 隨著科技的不斷進(jìn)步,在工業(yè)生產(chǎn)中溫度是常用的被控參數(shù),而采用單片機(jī)來對這些被控參數(shù)進(jìn)行控制已成為當(dāng)今的主流。本文介紹了數(shù)字溫度測量及自動控制系統(tǒng)的設(shè)計(jì)。本文采用單片機(jī)來實(shí)現(xiàn)對溫度的控制。它的主要組成部分有:AT89S51單片機(jī)、溫度傳感器、按鍵與顯示電路、溫度控制電路、串口通訊電路。它可以實(shí)時(shí)的顯示和設(shè)定溫度,實(shí)現(xiàn)對溫度的自動控制。通過測試表明,本設(shè)計(jì)

2、對溫度的控制有方便、簡單的特點(diǎn),從而大幅提高了被控溫度的技術(shù)指標(biāo)。關(guān)鍵詞: 單片機(jī) 溫度傳感器 鍵盤和顯示 串口通訊Abstract As the technology advances in industrial production in the temperature is charged with common parameters, and the use of those charged with SCM to the parameters of control has become the mainstream. In this paper, digital temperatur

3、e measurement and automatic control system design. In this paper, SCM to achieve the temperature control. It is a major component of: STC89C52 SCM, temperature sensor, keyboard and display circuit, temperature control circuit. It can display real-time and temperature settings, and the temperature co

4、ntrol,and serial interface electric circuit. Passed the tests show that the design of the temperature control is convenient and simple characteristics, thus greatly raising the temperature was charged with the technical indicators.Key words: MCU Temperature sensor Keyboard and Demonstration Serial I

5、nterface目錄一、設(shè)計(jì)任務(wù)書.4二、具體設(shè)計(jì).52.1系統(tǒng)設(shè)計(jì).5三、電路設(shè)計(jì). 53.1顯示電路設(shè)計(jì).53.2按鍵電路設(shè)計(jì).73.3溫度采樣電路設(shè)計(jì).83.4串行通訊電路設(shè)計(jì).93.5報(bào)警電路設(shè)計(jì)11四、操作說明.12五、總結(jié).12六、電路仿真圖12七、源程序代碼13一、設(shè)計(jì)任務(wù)書1.設(shè)計(jì)題目:基于串行口收發(fā)電路的溫度測量單片機(jī)系統(tǒng)設(shè)計(jì)1.2目的意義:(1)綜合運(yùn)用并鞏固所學(xué)單片機(jī)設(shè)計(jì)知識;(2)采用編程的方法實(shí)現(xiàn)基于串行口收發(fā)電路的溫度測量單片機(jī)系統(tǒng)設(shè)計(jì)。1.3設(shè)計(jì)內(nèi)容:A/D轉(zhuǎn)換電路的制作 。 掌握A/D轉(zhuǎn)換電路的制作。 掌握溫度采樣電路的原理和制作。 掌握將轉(zhuǎn)換的數(shù)字信號換算成實(shí)

6、際溫度值的方法。 掌握相應(yīng)電路的程序編寫 單片機(jī)串行口收發(fā)電路的制作 學(xué)會單片機(jī)與PC機(jī)收發(fā)電路的制作。 掌握MCS-51單片機(jī)串行口收發(fā)程序的編寫要點(diǎn)。(3)基本人機(jī)接口設(shè)計(jì) 完成顯示接口設(shè)計(jì)。 完成鍵盤接口設(shè)計(jì)。設(shè)計(jì)要求:按題意要求,畫出原理圖;單片機(jī)接線圖;按照題目要求設(shè)計(jì)采集電路;完成單片機(jī)控制程序;完成設(shè)計(jì)說明書(15頁);設(shè)計(jì)上交內(nèi)容:設(shè)計(jì)說明書(包括1、2、3、4、5項(xiàng))1.4設(shè)計(jì)步驟理解并確定設(shè)計(jì)要求確定整體控制方案編寫程序說明書附錄附上電路圖一張及匯編控制程序或C51程序一份,說明書分三章描述,即設(shè)計(jì)內(nèi)容的前三點(diǎn)。二、具體設(shè)計(jì)2.1系統(tǒng)設(shè)計(jì)本次課程設(shè)計(jì)是采用編程的方法實(shí)現(xiàn)基于

7、串行口收發(fā)電路的溫度測量單片機(jī)系統(tǒng)設(shè)計(jì),利用溫度傳感器與AT89C51單片機(jī)結(jié)合來測量溫度,并在顯示相應(yīng)的溫度值,可以通過按鍵設(shè)置溫度的上限和下限數(shù)值,當(dāng)溫度超過設(shè)定的最高溫度或低于設(shè)定的最低溫度值是,系統(tǒng)就會進(jìn)行聲音報(bào)警,提示高溫報(bào)警或低溫報(bào)警。本次系統(tǒng)可分為五個(gè)主要板塊:顯示電路;按鍵設(shè)置電路;溫度采樣電路報(bào)警電路電平轉(zhuǎn)換電路。系統(tǒng)框圖如圖1所示:AT89C51顯示電路按鍵設(shè)置電平轉(zhuǎn)換PC機(jī)溫度采樣電路報(bào)警電路復(fù)位電路晶振電路圖1:系統(tǒng)整體框圖三、電路設(shè)計(jì)3.1顯示電路設(shè)計(jì)顯示部分元器件:顯示器LCD16021.LCD1602簡介:1602液晶也叫1602字符型液晶,它是一種專門用來顯示字

8、母、數(shù)字、符號的點(diǎn)陣型液晶模塊。它是由若干個(gè)5x7或者5x11的點(diǎn)陣字符位組成,每個(gè)點(diǎn)陣字符位都可以用顯示一個(gè)字符,每位之間有一個(gè)點(diǎn)距的間隔,每行之間也有間隔,起到了字符間距和行間距的作用,正因?yàn)槿绱?,所以它不能很好的顯示圖片。LCD1602基本操作時(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=L, D0D7=數(shù)據(jù),E=高脈沖 輸出:無LCD1602的引腳功能如表1所示:表1:LCD1602引腳功能表2.電路圖

9、如圖2所示圖2:LCD1602與單片機(jī)連接圖3.LCD1602初始化過程(復(fù)位過程):1.延時(shí)15ms2.寫指令38H(不檢測忙信號)3.延時(shí)5ms4.寫指令38H(不檢測忙信號)5.延時(shí)5ms6.寫指令38H(不檢測忙信號)7.以后每次寫指令、讀/寫數(shù)據(jù)操作之前均需要檢測忙信號)8.寫指令38H:顯示模式設(shè)置9.寫指令08H:顯示關(guān)閉10.寫指令01H:顯示清屏11.寫指令06H:顯示光標(biāo)移動位置12.寫指令0CH:顯示開及光標(biāo)設(shè)置3.2按鍵設(shè)置部分: 該部分是控制溫度上下限的控制裝置,選用普通的雙腳按鍵,由于器件簡單,就不加說明了。按鍵如圖3所示圖3:按鍵設(shè)置電路圖3.3溫度采樣部分:DS

10、18B201.DS18B20簡介:DS18B20 單線數(shù)字溫度傳感器,即“一線器件”,其具有獨(dú)特的優(yōu)點(diǎn):     (1)采用單總線的接口方式 與微處理器連接時(shí) 僅需要一條口線即可實(shí)現(xiàn)微處理器與 DS18B20 的雙向通訊。 單總線具有經(jīng)濟(jì)性好,抗干擾能力強(qiáng),適合于惡劣環(huán)境的現(xiàn)場溫度測量,使用方便等優(yōu)點(diǎn),使用戶可輕松地組建傳感器網(wǎng)絡(luò),為測量系統(tǒng)的構(gòu)建引入全新概念。     (2)測量溫度范圍寬,測量精度高 DS18B20 的測量范圍為 -55 + 125 ; 在 -10+ 85°C 范圍內(nèi),精度為 

11、7; 0.5°C 。     (3)持多點(diǎn)組網(wǎng)功能 多個(gè) DS18B20 可以并聯(lián)在惟一的單線上,實(shí)現(xiàn)多點(diǎn)測溫。     (4)供電方式靈活 DS18B20 可以通過內(nèi)部寄生電路從數(shù)據(jù)線上獲取電源。因此,當(dāng)數(shù)據(jù)線上的時(shí)序滿足一定的要求時(shí),可以不接外部電源,從而 使系統(tǒng)結(jié)構(gòu)更趨簡單,可靠性更高。     (5)測量參數(shù)可配置 DS18B20 的測量分辨率可通過程序設(shè)定 912 位。     DS18B20 具有體積更小、適用電壓

12、更寬、更經(jīng)濟(jì)、可選更小的封裝方式,更寬的電壓適用范圍,適合于構(gòu)建自己的經(jīng)濟(jì)的測溫系統(tǒng),因此也就被設(shè)計(jì)者們所青睞。2.DS18B20與單片機(jī)的連接 把DS18B20的數(shù)據(jù)線與單片機(jī)的P1.1管腳連接,再加上阻值為10K的上拉電阻。圖4:溫度傳感器與單片機(jī)連接圖3.DS118B20的初始化過程:主機(jī)首先發(fā)出一個(gè)480960微秒的低電平脈沖,然后釋放總線變?yōu)楦唠娖?,并在隨后的480微秒時(shí)間內(nèi)對總線進(jìn)行檢測,如果有低電平出現(xiàn)說明總線上有器件已做出應(yīng)答。若無低電平出現(xiàn)一直都是高電平說明總線上無器件應(yīng)答。做為從器件的DS18B20在一上電后就一直在檢測總線上是否有480960微秒的低電平出現(xiàn),如果有,在總

13、線轉(zhuǎn)為高電平后等待1560微秒后將總線電平拉低60240微秒做出響應(yīng)存在脈沖,告訴主機(jī)本器件已做好準(zhǔn)備。若沒有檢測到就一直在檢測等待。4.DS18B20的操作過程:DS18B20的一線工作協(xié)議流程是:初始化ROM操作指令存儲器操作指令數(shù)據(jù)傳輸。其工作時(shí)序包括:(1)初始化時(shí)序(2)寫時(shí)序(3)讀時(shí)序5.DS18B20的讀操作過程:由于本次課程設(shè)計(jì)只需要讀取當(dāng)前環(huán)境溫度,故這里只介紹讀操作。對于讀數(shù)據(jù)操作時(shí)序分為讀0時(shí)序和讀1時(shí)序兩個(gè)過程。讀周期是從主機(jī)把單總線拉低1微秒之后就得釋放單總線為高電平,以讓DS18B20把數(shù)據(jù)傳輸?shù)絾慰偩€上。作為從機(jī)DS18B20在檢測到總線被拉低1微秒后,便開始送

14、出數(shù)據(jù),若是要送出0就把總線拉為低電平直到讀周期結(jié)束。若要送出1則釋放總線為高電平。主機(jī)在一開始拉低總線1微秒后釋放總線,然后在包括前面的拉低總線電平1微秒在內(nèi)的15微秒時(shí)間內(nèi)完成對總線進(jìn)行采樣檢測,采樣期內(nèi)總線為低電平則確認(rèn)為0。采樣期內(nèi)總線為高電平則確認(rèn)為1。完成一個(gè)讀時(shí)序過程,至少需要60微秒才能完成6.DS18B20存儲溫度的形式及讀取溫度的操作步驟DS18B20經(jīng)轉(zhuǎn)換所得的溫度值以二字節(jié)補(bǔ)碼形式存放在高速暫存存儲器的第0和第1個(gè)字節(jié)。所以當(dāng)我們只想簡單的讀取溫度值的時(shí)候,只用讀取暫存器中的第0和第1個(gè)字節(jié)就可以了。簡單的讀取溫度值的步驟如下:(1)跳過ROM操作(2)發(fā)送溫度轉(zhuǎn)換命令

15、(4)跳過ROM操作(5)發(fā)送讀取溫度命令(6)讀取溫度值3.4串行口通訊部分:MAX232 MAX232的管腳圖如圖5所示: 圖5:MAX232管腳圖1.max232資料簡介: 該產(chǎn)品是由德州儀器公司(TI)推出的一款兼容RS232標(biāo)準(zhǔn)的芯片。由于電腦串口RS232電平是-10v+10v,而一般的單片機(jī)應(yīng)用系統(tǒng)的信號電壓是TTL電平0+5v,MAX232就是用來進(jìn)行電平轉(zhuǎn)換的,該器件包含2驅(qū)動器、2接收器和一個(gè)電壓發(fā)生器電路提供TIA/EIA-232-F電平。 該器件符合TIA/EIA-232-F標(biāo)準(zhǔn),每一個(gè)接收器將TIA/EIA-232-F電平轉(zhuǎn)換成5-VTTL/CMOS電平。每一個(gè)發(fā)送器

16、將TTL/CMOS電平轉(zhuǎn)換成TIA/EIA-232-F電平。2.主要特點(diǎn):(1)單5V電源工作 (2)LinBiCMOSTM工藝技術(shù)(3)兩個(gè)驅(qū)動器及兩個(gè)接收器(4)±30V輸入電平 (5)低電源電流:典型值是8mA (6)符合甚至優(yōu)于ANSI標(biāo)準(zhǔn)EIA/TIA-232-E及ITU推薦標(biāo)準(zhǔn)V.28(7)ESD保護(hù)大于MIL-STD-883(方法3015)標(biāo)準(zhǔn)的2000V3.MAX232接線圖 圖6:串行口通訊接線圖4.串行口設(shè)置程序 由于收發(fā)的為8位十六進(jìn)制數(shù),故可采用串行口工作方式1。雙工通信要求收、發(fā)同時(shí)進(jìn)行。實(shí)際上收、發(fā)操作主要是在串行口中進(jìn)行,CPU只是把數(shù)據(jù)從接收緩沖器讀出

17、和把數(shù)據(jù)寫入發(fā)送緩沖器。數(shù)據(jù)接收用中斷方式進(jìn)行。數(shù)據(jù)發(fā)送通過人工按下按鍵進(jìn)行。但由于MCS-51單片機(jī)串行中斷請求TI或RI合為一個(gè)中斷源,響應(yīng)中斷以后,通過檢測是否是RI置位引起的中斷來決定是否接收數(shù)據(jù)。發(fā)送數(shù)據(jù)是通過調(diào)用子程序來完成。定時(shí)器T1采用工作方式2,可以避免計(jì)數(shù)溢出后用軟件重裝定時(shí)初值。定時(shí)器T1初值計(jì)算如圖8-4所示,定時(shí)器初值為0FEH。SCON取值:50H。TMOD取值:20H。根據(jù)老師提供資料,匯編程序如下:ORG 0000H LJMP START ORG 0023HLJMP SINSTART:MOV TMOD,#20H ;定時(shí)器T1設(shè)為方式2MOV TL1,#0FEH

18、;裝入定時(shí)器初值MOV TH1,#0FEH ;8位重裝值SETB TR1 ;啟動定時(shí)器T1MOV SCON,#50H ;串行口設(shè)為方式1SETB EA ;開總中斷SETB ES ;開串行中斷MAIN: SETB P2.7 ;P2.7設(shè)為輸入JB P2.7,MAINLCALL DELAY ;延時(shí)去抖JB P2.7,MAINLCALL SOUT ;調(diào)用發(fā)送子程序NEXT: JNB P2.7,NEXT ;等待按鍵釋放LCALL DELAYJNB P2.7,NEXTLJMP MAIN;串行中斷服務(wù)程序SIN: JNB RI,FANHUI ;判斷是否為接收引起的中斷MOV A,SBUF ;從接收緩沖器讀

19、入數(shù)據(jù)MOV P1,A ;送P1口顯示FANHUI: CLR RICLR TIRETI;發(fā)送子程序SOUT: MOV P0,#0FFH ;P0口設(shè)為輸入口MOV A,P0 ;P0口狀態(tài)送累加器AMOV SBUF,A ;把數(shù)據(jù)寫入發(fā)送緩沖器RETDELAY:MOV R6,#64H ;延時(shí)10ms子程序D1: MOV R5,#0EHNOPD2: NOPNOPDJNZ R5,D2 DJNZ R6,D1RETEND3.5報(bào)警電路圖7:報(bào)警電路連線圖本次課程設(shè)計(jì)的報(bào)警電路如圖7所示,電路中使用一個(gè)三極管作為開關(guān),當(dāng)環(huán)境溫度超出溫度最高上限或低于最低溫度下限時(shí),單片機(jī)會讓P1.0為高電平、P1.1為低電平

20、,此時(shí)三極管導(dǎo)通LED-RED亮,蜂鳴器工作報(bào)警(該處電壓只有2.8V左右,應(yīng)將蜂鳴器的導(dǎo)通電壓設(shè)置為2.5V),表示危險(xiǎn)。反之,單片機(jī)讓P1.0為低電平、P1.1為高電平,此時(shí)LED-GREEN亮,表示安全。四、操作說明 該裝置剛通電時(shí),要對系統(tǒng)進(jìn)行初始化,首先按下“設(shè)置”鍵,此時(shí)顯示屏上“min”會有光標(biāo)閃動,按“加”或者“減”鍵可設(shè)置最低溫度。同理,再按下“設(shè)置”鍵,可設(shè)置最高溫度。設(shè)置完成后,再次按下設(shè)置鍵,裝置初始化完成,通過調(diào)節(jié)DS18B20的溫度值模擬環(huán)境溫度變化,同時(shí)在顯示屏上顯示當(dāng)前溫度,綠燈亮,表示環(huán)境在設(shè)定溫度范圍之內(nèi),紅燈亮以及蜂鳴器響表示環(huán)境溫度在溫度范圍之外。五總結(jié)

21、本次課程設(shè)計(jì)花費(fèi)了兩周的時(shí)間去去學(xué)習(xí)相關(guān)軟件和程序,獲得了很多心得與體會,剛開始做課程設(shè)計(jì)真的有點(diǎn)郁悶,程序里面的好多內(nèi)容不懂,自我感覺是單片機(jī)我們所學(xué)的內(nèi)容還不足以編出這兩個(gè)程序,但是只好硬著頭皮去看去理解。但在學(xué)習(xí)過程中也充滿了樂趣,當(dāng)看懂了程序的一些語句,畫出了要求的設(shè)計(jì)圖,那我喜悅那種成就感油然而生。這次課程設(shè)計(jì)讓我受益匪淺,無論從知識上還是其他的各個(gè)方面。上課的時(shí)候的學(xué)習(xí)從來沒有見過真正的單片機(jī),只是從理論的角度去理解枯燥乏味。但在課程設(shè)計(jì)中見過甚至使用了單片機(jī)及其系統(tǒng),能夠理論聯(lián)系實(shí)際的學(xué)習(xí),開闊了眼界,提高了單片機(jī)知識的理解和水平。在這次課程設(shè)計(jì)中又讓我體會到了合作與團(tuán)結(jié)的力量,

22、當(dāng)遇到不會或是設(shè)計(jì)不出來的地方,我們就會在QQ群里討論或者是同學(xué)之間相互幫助。團(tuán)結(jié)就是力量,無論在現(xiàn)在的學(xué)習(xí)中還是在以后的工作中,團(tuán)結(jié)都是至關(guān)重要的,有了團(tuán)結(jié)會有更多的理念、更多的思維、更多的情感。單片機(jī)是很重要的一門課程,老師和一些工作的朋友都曾說過,如果學(xué)好一門單片機(jī),就憑這個(gè)技術(shù)這門手藝找一個(gè)好工作也不成問題。盡管我們在課堂學(xué)到的內(nèi)容很有限,但在以后的學(xué)習(xí)中單片機(jī)還需要好好的深入研究和學(xué)習(xí),學(xué)好了單片機(jī)也就多了一項(xiàng)生存的本錢。最后感謝老師對我們的精心指導(dǎo)和幫助,感謝同學(xué)們對我的幫助。六、電路仿真圖五、源程序代碼#include "reg51.h" #include &

23、quot;18b20.h" #define uchar unsigned char #define uint unsigned int uchar code table="Wendu is:" ;/初始化日期和星期 uchar code table1="Max:10 Min:00"/初始化時(shí)間 uchar CNT; /以下三個(gè)是定義LCD的引腳sbit lcden=P22; sbit lcdwrite=P21; sbit lcdrs=P20; /定義四個(gè)功能開關(guān)sbit s1=P14;sbit s2=P15; sbit s3=P16; sbit

24、 s=P17; /定義二極管 sbit LED1=P10;sbit LED2=P11; uchar time; char hour,min,sec,day,mon,year1,year2,num,wendu,tec=35,flag=0; char shangxian=10,xiaxian=0; /延時(shí)程序 void delay(uint z) uint x,y; for(x=z;x>0;x-) for(y=110;y>0;y-); /lcd的寫指令void write_com(uchar com) lcdrs=0; lcden=0; P0=com; delay(5); lcden=

25、1; delay(5);lcden=0; /lcd的寫數(shù)據(jù)void write_data(uchar da) lcdrs=1;lcden=0;P0=da;delay(5);lcden=1;delay(5);lcden=0; /初始化void init()lcdwrite=0;lcden=0;write_com(0x38); /16*2顯示,5*7點(diǎn)陣,8位數(shù)據(jù)write_com(0x0c);/顯示開,關(guān)光標(biāo)write_com(0x06); /移動光標(biāo)write_com(0x01);/清除LCD的顯示內(nèi)容TMOD=0x01;TL0=(65536-50000)%256;/定時(shí)50msTH0=(65

26、536-50000)/256;EA=1;ET0=1;TR0=0; void write_wendu(uchar add, char da) uchar shi,ge;shi=da/10;ge=da%10;write_com(0x80+add);write_data(0x30+shi);write_data(0x30+ge);write_data(0xdf);void write_wendu1(uchar add, char da) uchar shi,ge;shi=da/10;ge=da%10;write_com(0x80+0x40+add);write_data(0x30+shi);writ

27、e_data(0x30+ge);/鍵盤掃描void keyscan() if(s1=0)/如果S1按下去,執(zhí)行相應(yīng)的操作 delay(5);/消除抖動 if(s1=0) flag=1; num+; while(!s1); if(num=1) TR0=0;/關(guān)定時(shí)器 write_com(0x80+0x40+14);/選定秒 write_com(0x0f); if(num=2)/選定分 write_com(0x80+0x40+5); if(num=3)/恢復(fù) num=0; write_com(0x0c); TR0=1;/重復(fù)開定時(shí)器 if(num!=0) if(s2=0)/如果s2按下調(diào)理參數(shù) d

28、elay(5); if(s2=0) while(!s2);if(num=1) xiaxian+;/調(diào)秒并顯示加 if(xiaxian=99) xiaxian=0;write_wendu1(13,xiaxian); write_com(0x80+0x40+14); if(num=2)/調(diào)分并顯示加 shangxian+; if(shangxian=99) shangxian=0; write_wendu1(4,shangxian); write_com(0x80+0x40+5); if(s3=0) delay(5); if(s3=0) while(!s3); if(num=1)/調(diào)秒并顯示減 x

29、iaxian-; if(xiaxian=-1) xiaxian=99; write_wendu1(13,xiaxian); write_com(0x80+0x40+14); if(num=2)/調(diào)分并顯示減 shangxian-; if(shangxian=-1) shangxian=99; write_wendu1(4,shangxian); write_com(0x80+0x40+5); void disp() uchar num;write_com(0x80);for (num=0;num<8;num+) write_data(tablenum);delay(5); write_c

30、om(0x80+0x40);for (num=0;num<15;num+) write_data(table1num);delay(5); void baojing() if(wendu>shangxian|wendu<xiaxian) LED2=0;LED1=1; else LED1=0;LED2=1; /主函數(shù)void main () init(); while(1) write_wendu1(5,CNT);/顯示倒計(jì)時(shí)初始值 if(s2=0)/調(diào)整上限 while(s2=0); CNT+;if(CNT>99)CNT=0; if(s3=0) /調(diào)整下限 while(

31、s3=0); CNT-;if(CNT<0)CNT=99; if(s1=0) /確定按鍵 while(s1=0); for(;CNT>0;CNT-) write_wendu1(5,CNT); delay(1000); disp();/顯示字符 TR0=1;/開啟定時(shí)器,定時(shí)采集溫度 while(1) keyscan(); baojing(); /中斷定時(shí)void timer0() interrupt 1 TL0=(65536-50000)%256;/定時(shí)50ms TH0=(65536-50000)/256; wendu=ReadTemp(); write_wendu(9, wendu); /*ds18b20子程序*/*ds18b20延遲子函數(shù)(晶振12MHz )*/ #include<reg51.h>#define uchar unsigned charsbit DQ=P12;int xs;void delay_18B20(unsigned int i)while(i-);/*ds18b20初始化函數(shù)*/void Init_DS18B20(void) unsig

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論