數(shù)字溫度傳感器課程設(shè)計論文_第1頁
數(shù)字溫度傳感器課程設(shè)計論文_第2頁
數(shù)字溫度傳感器課程設(shè)計論文_第3頁
數(shù)字溫度傳感器課程設(shè)計論文_第4頁
數(shù)字溫度傳感器課程設(shè)計論文_第5頁
已閱讀5頁,還剩17頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

PAGE目錄課題要求: 41.原理分析 42.方案選擇 43.元器件選擇 53.1單片機 53.2溫度傳感器 73.3顯示屏 83.4蜂鳴器 93.5其他元件 94.proteus原理圖繪制 94.1設(shè)計步驟 94.2設(shè)計過程 94.2.1單片機系統(tǒng)模塊 104.2.2晶體振蕩模塊 104.2.3揚聲器報警模塊 114.2.4溫度傳感器模塊 124.2.5液晶顯示模塊 135.綜合調(diào)試 166.總結(jié) 17附錄1 18附錄2 21附錄3 23附錄4 24PAGE21基于數(shù)字溫度傳感器的數(shù)字溫度計設(shè)計報告課題要求:利用數(shù)字溫度傳感器DS18B20與單片機結(jié)合來測量溫度。利用數(shù)字溫度傳感器DS18B20測量溫度信號,計算后在LED數(shù)碼管上顯示相應(yīng)的溫度值。其溫度測量范圍為?55℃~125℃,精確到0.5℃1.原理分析(劉星)采用AT89C51單片機作為控制核心對溫度傳感器DS18B20控制,讀取溫度信號并進行計算處理,并送數(shù)碼管顯示。采用數(shù)字溫度芯片DS18B20測量溫度,輸出信號全數(shù)字化。便于單片機處理及控制,省去傳統(tǒng)的測溫方法的很多外圍電路。且該芯片的物理化學性很穩(wěn)定,它能用做工業(yè)測溫元件,此元件線形較好。在0—100攝氏度時,最大線形偏差小于1攝氏度。DS18B20的最大特點之一采用了單總線的數(shù)據(jù)傳輸,由數(shù)字溫度計DS18B20和微控制芯片AT89C51構(gòu)成的溫度測量裝置,它直接輸出溫度的數(shù)字信號,可直接與計算機連接。這樣,測溫系統(tǒng)的結(jié)構(gòu)就比較簡單,體積也不大。采用AT89C51單片機控制,軟件編程的自由度大,可通過編程實現(xiàn)各種各樣的算術(shù)算法和邏輯控制而且體積小,硬件實現(xiàn)簡單,安裝方便。用AT89C51芯片控制溫度傳感器DS18B20進行實時溫度檢測并顯示,能夠?qū)崿F(xiàn)快速測量環(huán)境溫度,并可以根據(jù)需要設(shè)定上下限報警溫度。該系統(tǒng)擴展性非常強,它可以在設(shè)計中加入時鐘芯片DS1302以獲取時間數(shù)據(jù),在數(shù)據(jù)處理同時顯示時間,并可以利用AT24C16芯片作為存儲器件,以此來對某些時間點的溫度數(shù)據(jù)進行存儲,利用鍵盤來進行調(diào)時和溫度查詢,獲得的數(shù)據(jù)可以通過MAX232芯片與計算機的RS232接口進行串口通信,方便的采集和整理時間溫度數(shù)據(jù)。⒉方案選擇(劉星)按照系統(tǒng)設(shè)計功能的要求,確定系統(tǒng)由3個大的模塊組成:主控制器、測溫電路和顯示電路。由AT89C51單片機組成硬件設(shè)計,AT89C51的EA接高電平,其外圍電路提供能使之工作的晶振脈沖、復(fù)位按鍵,四個I/O分別接8路的單列IP座方便與外圍設(shè)備連接。當AT89C51芯片接到來自溫度傳感器的信號時,其內(nèi)部程序?qū)⒏鶕?jù)信號的類型進行處理,并且將處理的結(jié)果送到顯示模塊,發(fā)送控制信號控制各模塊。⒊元器件選擇(黃學然)3.1單片機AT89C51芯片:AT89C51是一個低電壓,高性能CMOS8位單片機,片內(nèi)含4K的可反復(fù)擦寫的FLASH只讀存儲器和128BYTES的隨機存取數(shù)據(jù)存儲器,40個引腳,32個外部雙向輸入/輸出(I/O)端口,同時內(nèi)含2個外中斷口,2個16位可編程定時計數(shù)器,2個全雙工串行通信口。AT89C51可以按照常規(guī)方法進行編程,也可以在線編程。器件采用ATMEL公司的高密度、非易失性存儲技術(shù)生產(chǎn),兼容標準MCS-51令系統(tǒng),片內(nèi)置通用8位中央處理器和Flash存儲單元,其將通用的微處理器和Flash存儲器結(jié)合在一起,特別是可反復(fù)擦寫的Flash存儲器可有效地降低開發(fā)成本。內(nèi)置功能強大的微型計算機的AT89C51提供了高性價比的解決方案。主要特性:·與MCS-51兼容·4K字節(jié)可編程FLASH存儲器·壽命:1000寫/擦循環(huán)·數(shù)據(jù)保留時間:10年·全靜態(tài)工作:0Hz-24MHz·三級程序存儲器鎖定·128×8位內(nèi)部RAM·32可編程I/O線·兩個16位定時器/計數(shù)器·5個中斷源·可編程串行通道·低功耗的閑置和掉電模式·片內(nèi)振蕩器和時鐘電路管腳說明:VCC:供電電壓。GND:接地。P0:P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門電流。當P1口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時,P0口作為原碼輸入口,當FIASH進行校驗時,P0輸出原碼,此時P0外部必須被拉高。P1口:P1口是一個內(nèi)部提供上拉電阻的8位雙向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ù)存儲器進行讀寫時,P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗時接收高八位地址信號和控制信號。P3口:P3口管腳是8個帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個TTL門電流。當P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。P3.0RXD(串行輸入口)P3.1TXD(串行輸出口)P3.2/INT0(外部中斷0)P3.3/INT1(外部中斷1)P3.4T0(計時器0外部輸入)P3.5T1(計時器1外部輸入)P3.6/WR(外部數(shù)據(jù)存儲器寫選通)P3.7/RD(外部數(shù)據(jù)存儲器讀選通)P3口同時為閃爍編程和編程校驗接收一些控制信號。/EA/VPP:當/EA保持低電平時,則在此期間外部程序存儲器(0000H-FFFFH),不管是否有內(nèi)部程序存儲器。注意加密方式1時,/EA將內(nèi)部鎖定為RESET;當/EA端保持高電平時,此間內(nèi)部程序存儲器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。XTAL1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。XTAL2:來自反向振蕩器的輸出。振蕩器特性:XTAL1和XTAL2分別為反向放大器的輸入和輸出。該反向放大器可以配置為片內(nèi)振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時鐘源驅(qū)動器件,XTAL2應(yīng)不接。有余輸入至內(nèi)部時鐘信號要通過一個二分頻觸發(fā)器,因此對外部時鐘信號的脈寬無任何要求,但必須保證脈沖的高低電平要求的寬度。3.2溫度傳感器DS18B20:DS18B20封裝圖DS18B20是美國DALLAS半導(dǎo)體公司繼DS1820之后最新推出的一種改進型智能溫度傳感器。與傳統(tǒng)的熱敏電阻相比,它能夠直接讀出被測溫度并且可根據(jù)實際要求通過簡單的編程實現(xiàn)9~12位的數(shù)字值讀數(shù)方式??梢苑謩e在93.75ms和750ms內(nèi)完成9位和12位的數(shù)字量,并且從DS18B20讀出的信息或?qū)懭隓S18B20的信息僅需要一根口線(單線接口)讀寫,溫度變換功率來源于數(shù)據(jù)總線,總線本身也可以向所掛接的DS18B20供電,而無需額外電源。因而使用DS18B20可使系統(tǒng)結(jié)構(gòu)更趨簡單,可靠性更高。他在測溫精度、轉(zhuǎn)換時間、傳輸距離、分辨率等方面較DS1820有了很大的改進,給用戶帶來了更方便的使用和更令人滿意的效果。以下是DS18B20的特點:(1)獨特的單線接口方式:DS18B20與微處理器連接時僅需要一條口線即可實現(xiàn)微處理器與DS18B20的雙向通訊。(2)在使用中不需要任何外圍元件。(3)可用數(shù)據(jù)線供電,電壓范圍:+3.0~+5.5V。(4)測溫范圍:-55-+125℃。固有測溫分辨率為0.5(5)過編程可實現(xiàn)9-12位的數(shù)字讀數(shù)方式。(6)用戶可自設(shè)定非易失性的報警上下限值。(7)支持多點組網(wǎng)功能,多個DS18B20可以并聯(lián)在惟一的三線上,實現(xiàn)多點測溫。(8)負壓特性,電源極性接反時,溫度計不會因發(fā)熱而燒毀,但不能正常工作。3.3顯示屏LCD1602液晶顯示屏:同時顯示攝氏溫度與華氏溫度。管腳分布:LCD1602模塊的管腳分布功能管腳號管腳名稱狀態(tài)管腳功能1Vss電源地2Vdd電源正極3V0液晶顯示偏壓信號4RS輸入寄存器選著5RW輸入讀、寫操作6E輸入使能信號7DB0三態(tài)數(shù)據(jù)總線0(LSB)8DB1三態(tài)數(shù)據(jù)總線9DB2三態(tài)數(shù)據(jù)總線10DB3三態(tài)數(shù)據(jù)總線11DB4三態(tài)數(shù)據(jù)總線12DB5三態(tài)數(shù)據(jù)總線13DB6三態(tài)數(shù)據(jù)總線14DB7三態(tài)數(shù)據(jù)總線(MSB)15LEDA輸入背光+5V16LEDK輸入背光地3.4蜂鳴器實現(xiàn)報警振鈴音。3.5其他元件電容(30pf,10uf)、電阻(4.7k,8.2k)、三極管(8550)、晶振(12MHZ)、按鍵、杜邦線、排針若干,萬能板。⒋proteus原理圖繪制(余琳玲)4.1設(shè)計步驟1.使用proteus軟件畫出原理圖2.使用keil軟件1)建立工程2)為工程選擇目標器件3)設(shè)置工程的配置參數(shù)4)打開程序文件5)編輯和鏈接工程6)糾正程序中的書寫和錯誤并重新建立鏈接7)生成hex文件3.使用proteus軟件進行仿真4.2設(shè)計過程硬件接線圖見附錄44.2.1單片機系統(tǒng)模塊4.2.2晶體振蕩模塊晶振電路是提供系統(tǒng)時鐘信號。為了各部分的同步應(yīng)當引入公用的外部脈沖信號作為振蕩脈沖。電容選擇在10~30pF之間,因為電容的大小影響振蕩器振蕩的穩(wěn)定性和起振的速度。電容C1和C2的作用是穩(wěn)定頻率和快速起振,晶振CYS的振蕩頻率取12MHZ。89C51單片機的時鐘信號通常有兩種方式產(chǎn)生,外部時鐘和內(nèi)部時鐘方式,如下圖所示:4.2.3揚聲器報警模塊系統(tǒng)設(shè)有一定的溫度范圍,當系統(tǒng)檢測到的溫度不在預(yù)設(shè)的范圍時,則需發(fā)出報警,警報系統(tǒng)由PNP三極管和蜂鳴器組成。4.2.4溫度傳感器模塊DS18B20溫度傳感器是美國DALLAS半導(dǎo)體公司最新推出的一種改進型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等測溫元件相比,它能直接讀出被測溫度,并且可根據(jù)實際要求通過簡單的編程實現(xiàn)9~12位的數(shù)字值讀數(shù)方式。4.2.5液晶顯示模塊硬件連線圖:指令:1)Cleardisplay清顯示指令碼:RSR/WDB7DB6DB5DB4DB3DB2DB1DB00000000001清顯示指令將空位字符碼20H送入全部DDRAM地址中,使DDRAM中的內(nèi)容全部清除,顯示消失;地址計數(shù)器AC=0,自動增1模式;顯示歸位,光標或者閃爍回到原點(顯示屏左上角);但并不改變移位設(shè)置模式。2)Returnhome歸位指令碼:RSR/WDB7DB6DB5DB4DB3DB2DB1DB0000000001*歸位指令置地址計數(shù)器AC=0;將光標及光標所在位的字符回原點;但DDRAM中的內(nèi)容并不改變。3)Entrymodeset設(shè)置輸入模式指令碼:RSR/WDB7DB6DB5DB4DB3DB2DB1DB000000001I/DSI/D:字符碼寫入或者讀出DDRAM后DDRAM地址指針AC變化方向標志:I/D=1,完成一個字符碼傳送后,光標右移,AC自動加1;I/D=0,完成一個字符碼傳送后,光標左移,AC自動減1;S:顯示移位標志:S=1,將全部顯示向右(I/D=0)或者向左(I/D=1)移位;S=0,顯示不發(fā)生移位;S=1時,顯示移位時,光標似乎并不移位;此外,讀DDRAM操作以及對CGRAM的訪問,不發(fā)生顯示移位。4)Displayon/offcontrol顯示開/關(guān)控制指令碼:RSR/WDB7DB6DB5DB4DB3DB2DB1DB00000001DCBD:顯示開/關(guān)控制標志:D=1,開顯示;D=0,關(guān)顯示;關(guān)顯示后,顯示數(shù)據(jù)仍保持在DDRAM中,立即開顯示可以再現(xiàn);C:光標顯示控制標志:C=1,光標顯示;C=0,光標不顯示;不顯示光標并不影響模塊其它顯示功能;顯示5X8點陣字符時,光標在第八行顯示,顯示5X10點陣字符時,光標在第十一行顯示;B:閃爍顯示控制標志:B=1,光標所指位置上,交替顯示全黑點陣和顯示字符,產(chǎn)生閃爍效果,F(xiàn)osc=250kHz時,閃爍頻率為0.4ms左右;通過設(shè)置,光標可以與其所指位置的字符一起閃爍。5)Cursorordisplayshift光標或顯示移位指令碼:RSR/WDB7DB6DB5DB4DB3DB2DB1DB0000001S/CR/L**光標或顯示移位指令可使光標或顯示在沒有讀寫顯示數(shù)據(jù)的情況下,向左或向右移動;運用此指令可以實現(xiàn)顯示的查找或替換;在雙行顯示方式下,第一行和第二行會同時移位;當移位越過第一行第四十位時,光標會從第一行跳到第二行,但顯示數(shù)據(jù)只在本行內(nèi)水平移位,第二行的顯示決不會移進第一行;倘若僅執(zhí)行移位操作,地址計數(shù)器AC的內(nèi)容不會發(fā)生改變。S/CR/L說明00光標向左移動,AC自動減101光標向右移動,AC自動加110光標和顯示一起向左移動,AC值不變11光標和顯示一起向右移動,AC值不變6)Functionset功能設(shè)置指令碼:RSR/WDB7DB6DB5DB4DB3DB2DB1DB000001DLNF**功能設(shè)置指令設(shè)置模塊數(shù)據(jù)接口寬度和LCD顯示屏顯示方式,即MPU與模塊接口數(shù)據(jù)總線為4位或者是8位、LCD顯示行數(shù)和顯示字符點陣規(guī)格;所以建議用戶最好在執(zhí)行其它指令設(shè)置(讀忙標志指令除外)之前,在程序的開始,進行功能設(shè)置指令的執(zhí)行;DL:數(shù)據(jù)接口寬度標志:DL=1,8位數(shù)據(jù)總線DB7~DB0;DL=0,4位數(shù)據(jù)總線DB7~DB4,DB3~DB0不用,使用此方式傳送數(shù)據(jù),需分兩次進行;N:顯示行數(shù)標志:N=1,兩行顯示模式;N=0,單行顯示模式;F:顯示字符點陣字體標志:F=1:5X10點陣+光標顯示模式;F=0:5X7點陣+光標顯示模式。7)SetCGRAMaddressCGRAM地址設(shè)置指令碼:RSR/WDB7DB6DB5DB4DB3DB2DB1DB00001ACG5ACG4ACG3ACG2ACG1ACG0CGRAM地址設(shè)置指令設(shè)置CGRAM地址指針,它將CGRAM存儲用戶自定義顯示字符的字模數(shù)據(jù)的首地址ACG5~ACG0送入AC中,于是用戶自定義字符字模就可以寫入CGRAM中或者從CGRAM中讀出。8)SetDDRAMaddressDDRAM地址設(shè)置指令碼:RSR/WDB7DB6DB5DB4DB3DB2DB1DB0001ADD6ADD5ADD4ADD3ADD2ADD1ADD0DDRAM地址設(shè)置指令設(shè)置DDRAM地址指針,它將DDRAM存儲顯示字符的字符碼的首地址ADD6~ADD0送入AC中,于是顯示字符的字符碼就可以寫入DDRAM中或者從DDRAM中讀出;值得一提的是:在LCD顯示屏一行顯示方式下,DDRAM的地址范圍為:00H~4FH;兩行顯示方式下,DDRAM的地址范圍為:第一行00H~27H,第二行40H~67H。Readbusyflagandaddress讀忙標志BF和AC指令碼:RSR/WDB7DB6DB5DB4DB3DB2DB1DB001BFAC6AC5AC4AC3AC2AC1AC0當RS=0和R/W=1時,在E信號高電平的作用下,BF和AC6~AC0被讀到數(shù)據(jù)總線DB7~DB0的相應(yīng)位;BF:內(nèi)部操作忙標志,BF=1,表示模塊正在進行內(nèi)部操作,此時模塊不接收任何外部指令和數(shù)據(jù),直到BF=0為止;AC6~AC0:地址計數(shù)器AC內(nèi)的當前內(nèi)容,由于地址計數(shù)器AC被CGROM、CGRAM和DDRAM的公用指針,因此當前AC內(nèi)容所指區(qū)域由前一條指令操作區(qū)域決定;同時,只有BF=0時,送到DB7~DB0的數(shù)據(jù)AC6~AC0才有效。10)WritedatatoCGRAMorDDRAM寫數(shù)據(jù)到CGRAM或DDRAM指令碼:RSR/WDB7DB6DB5DB4DB3DB2DB1DB010D7D6D5D4D3D2D1D0寫數(shù)據(jù)到CGRAM或DDRAM指令,是將用戶自定義字符的字模數(shù)據(jù)寫到已經(jīng)設(shè)置好的CGRAM的地址中,或者是將欲顯示字符的字符碼寫到DDRAM中;欲寫入的數(shù)據(jù)D7~D0首先暫存在DR中,再由模塊的內(nèi)部操作自動寫入地址指針所指定的CGRAM單元或者DDRAM單元中。11)ReaddatafromCGRAMorDDRAM從CGRAM或DDRAM中讀數(shù)據(jù)指令碼:RSR/WDB7DB6DB5DB4DB3DB2DB1DB011D7D6D5D4D3D2D1D0從CGRAM或DDRAM中讀數(shù)據(jù)指令,是從地址計數(shù)器AC指定的CGRAM或者DDRAM單元中,讀出數(shù)據(jù)D7~D0;讀出的數(shù)據(jù)D7~D0暫存在DR中,再由模塊的內(nèi)部操作送到數(shù)據(jù)總線DB7~DB0上。5.綜合調(diào)試(劉星、余琳玲、黃學然)系統(tǒng)程序主要包括主程序、讀出溫度子程序、溫度轉(zhuǎn)換子程序、計算溫度子程序、顯示等等,由余琳玲同學編寫。程序于附錄硬件方面主要由黃學然和劉星調(diào)試焊接,一開始存在少許不易發(fā)現(xiàn)的焊點虛焊漏焊現(xiàn)象,導(dǎo)致顯示屏無顯示,后改正后可以得出正常顯示溫度,證明我們的課程設(shè)計實驗初步取得成功。6.總結(jié)(劉星、余琳玲、黃學然)本次課程設(shè)計經(jīng)過我們小組三個同學的齊心協(xié)力最終獲得了成功,此次實驗中我們還有不少需要改善的地方,比如這個溫度計不能快速的反應(yīng)溫度變化,不能做到接觸測量(由于DS18B20焊接在電路板上),同時焊接技藝還沒有達到極致,美觀上略有欠缺。我們在仿真調(diào)試中也獲得不少感悟:畫圖的時候應(yīng)仔細連線,線一旦連錯,程序無法正常運行。程序燒寫到單片機,實物運行不能顯示正常結(jié)果,要認真檢查仿真圖的連線正確與否以及焊接電路是否出現(xiàn)虛焊、漏焊,元器件是否錯放。附錄1C語言程序#include<reg51.h>#include<intrins.h>#include"18b20.h"http://18b20頭文件#include"1602.h"http://18b20頭文件//宏定義#defineucharunsignedchar#defineuintunsignedint//定義變量uintbw,sw,gw;uchartable[]="0123456789";ucharalarm[]="Alarm";ucharj;//1602顯示的字符個數(shù)longinttem,tem1;//tem為攝氏溫度,tem1為華氏溫度,baojing為警報溫度值longintbaojing=38;sbitspeaker=P1^0;voidbeep();//函數(shù)聲明蜂鳴器函數(shù)voiddisplay(void)//18b20顯示攝氏溫度{EX0=0; tem=duqu_wendu(); if(tem>baojing) {beep(); } bw=tem/10; sw=tem%10;write1602(0x80+0x00); read1602(table[bw]); write1602(0x80+0x01); read1602(table[sw]); write1602(0x80+0x02); read1602(0xdf); write1602(0x80+0x03); read1602('C'); write1602(0x80+0x04); read1602(''); EX0=1;}voiddisplay1(void)//18b20顯示華氏溫度{EX0=0; tem1=duqu_wendu()*1.8+32; if(tem1>(baojing*1.8+32)) {beep(); } bw=tem1/100; sw=(tem1%100)/10; gw=tem1%10;write1602(0x80+0x0b); read1602(table[bw]); write1602(0x80+0x0c); read1602(table[sw]); write1602(0x80+0x0d); read1602(table[gw]); write1602(0x80+0x0e); read1602(0xdf); write1602(0x80+0x0f); read1602('F'); EX0=1;}voiddisplaybaojing(void)//顯示報警溫度值{ bw=baojing/100; sw=baojing/10; gw=baojing%10;write1602(0x80+0x4b); read1602(table[bw]); write1602(0x80+0x4c); read1602(table[sw]); write1602(0x80+0x4d); read1602(table[gw]); write1602(0x80+0x4e); read1602(0xdf); write1602(0x80+0x4f); read1602('C');}voidxianshi()//1602顯示alarm{inti; write1602(0x80+0x40);for(i=0;i<=9;i++){ read1602(alarm[i]); delayms(5);}}voidbeep(void)//蜂鳴器子程序{ uchari; for(i=0;i<=100;i++) { speaker=1; delayus(80); speaker=0; delayus(80); }}voidstartinterrupt(void){TMOD=0x01;//T0模式1定時 TH0=0xD8;//裝入初值,定時20ms TL0=0xF0; IT0=1;//外部中斷0為邊沿觸發(fā)方式 EA=1;//中斷允許總控制位 EX0=1;//外部中斷0允許 EX1=1; ET0=1;//定時器0允許中斷 ET1=1; TR0=1;//啟動定時器0}voidmain(){inte1602(); //1602初始化xianshi(); displaybaojing(); delayms(1000); startinterrupt();while(1){}}voidtimeer(void)interrupt1//定時器0處理函數(shù){ TR0=0; TH0=0xD8;//裝入初值,定時20ms TL0=0xF0; display(); //18B20顯示 display1(); TR0=1;//啟動定時器計數(shù)} 附錄2/*******18b20時序*********/#include<intrins.h>#defineucharunsignedchar#defineuintunsignedintsbitDQ=P3^6;uinttemp;floatf_temp;//單精度實行//延時函數(shù)voiddelayus(uintus){while(us--);}//18B20初始化voidinte_18b20(v

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論