freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于at89s51單片機的數(shù)字溫度計的設(shè)計-預覽頁

2025-07-20 13:13 上一頁面

下一頁面
 

【正文】 蕩報警點按鍵調(diào)整 圖21 總體設(shè)計方框圖3 系統(tǒng)整體硬件電路 系統(tǒng)整體硬件電路包括,單片機AT89S51主板電路,溫度顯示電路,溫度檢測電路,晶振控制電路,復位電路等。另外是EA端一定要接上電源,使單片機能夠工作。VSS:電源地端。EA/Vpp:EA為英文External Access的縮寫,表示存取外部程序代碼之意,低電平動作,也就是說當此引腳接低電平后,系統(tǒng)會取用外部的程序代碼(存于外部EPROM中)來執(zhí)行程序。ALE/PROG:ALE是英文Address Latch Enable的縮寫,表示地址鎖存器啟用信號。PSEN:此為Program Store Enable的縮寫,其意為程序儲存啟用,當8051被設(shè)成為讀取外部程序代碼工作模式時(EA=0),會送出此信號以便取得程序代碼,通常這支腳是接到EPROM的OE腳。如果當EA引腳為低電平時(即取用外部程序代碼或數(shù)據(jù)存儲器),P0就以多工方式提供地址總線(A0~A7)及數(shù)據(jù)總線(D0~D7)。PORT1(~):端口1也是具有內(nèi)部提升電路的雙向I/O端口,其輸出緩沖器可以推動4個LS TTL負載,同樣地若將端口1的輸出設(shè)為高電平,便是由此端口來輸入數(shù)據(jù)。:TXD,串行通信輸出。:T1,計時計數(shù)器1輸入。液晶2端為電源,116端為背光電源,為防止直接加5V而燒壞背光燈,在15腳串聯(lián)一個1K電阻,液晶3端為液晶對比度調(diào)節(jié)端,通過一個10K的電位器來調(diào)節(jié)液晶顯示對比度,用于限流。 溫度檢測電路設(shè)計溫度檢測電路如下圖34所示:圖34 溫度檢測電路 DS18B20是美國DALLAS半導體公司最新推出的一種改進型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等測溫元件相比,它能直接讀出被測溫度,并且可根據(jù)實際要求通過簡單的編程實現(xiàn)9~12位的數(shù)字值讀數(shù)方式。DS18B20的管腳排列、各種封裝形式如圖 35所示,DQ 為數(shù)據(jù)輸入/輸出引腳。 減法計數(shù)器1對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行減法計數(shù),當減法計數(shù)器1的預置值減到0時溫度寄存器的值將加1,減法計數(shù)器 1的預置將重新被裝入,減法計數(shù)器1重新開始對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行計數(shù),如此循環(huán)直到減法計數(shù)器2計數(shù)到0時,停止溫度寄存器值的累加,此時溫度寄存器中的數(shù)值即為所測溫圖37中的斜率累加器用于補償和修正測溫過程中的非線性其輸出用,于修正減法計數(shù)器的預置值,只要計數(shù)門仍未關(guān)閉就重復上述過程,直至溫度寄存器值達到被測溫度值,這就是DS18B20的測溫原理。 在正常測溫情況下,℃。這樣可以在一秒之內(nèi)測量一次被測溫度,其程序流程見圖41所示。溫度轉(zhuǎn)換命令子程序流程圖如圖43所示。 圖45 顯示數(shù)據(jù)刷新流程圖 5 調(diào)試 系統(tǒng)的調(diào)試以程序為主。軟件調(diào)試到能顯示溫度值,而且在有溫度變化時(例如用手去接觸)現(xiàn)實溫度能改變就基本完成。 本設(shè)計所介紹的數(shù)字溫度計與傳統(tǒng)的溫度計相比,具有讀數(shù)方便,測溫范圍廣,測溫準確,其輸出溫度采用數(shù)字顯示,主要用于對測溫比較準確的場所,或科研實驗室使用,該設(shè)計控制器使用單片機AT89S51,測溫傳感器使用DS18B20,用3位共陽極LED數(shù)碼管以串口傳送數(shù)據(jù),實現(xiàn)溫度顯示,能準確達到以上要求。 //DS18B20接入口uchar FLAG_DIS=0。 //提示語/*****一毫秒定時*****/void delay_ms(uint z){ uint x,y。y0。 lcden=0。 delay_ms(1)。 P0=date。 lcden=0。 write_lcd_(0x01)。 //稍做延時 DATA = 0。 x=DATA。 for (i=8。 DATA = 1。}/*溫度傳感器寫一個字節(jié)*/void WriteOneChar(uchar dat){ uchar i=0。 DATA = datamp。 dat=1。 int t=0。 //跳過讀序號列號的操作 WriteOneChar(0x44)。 //讀取溫度寄存器等(共可讀9個寄存器)前兩個就是溫度 a=ReadOneChar()。 t=t|a。 } else { flag_Negative_number = 0。}/*液晶顯示溫度*/void dis_D18B20(void){ int temp。//顯示個位 ge_18b20=temp%10。 write_lcd_date(0x30+ge_18b20)。 write_lcd_date(0x2D)。 write_lcd_date(0x43)。 write_lcd_date(0x30+ge_18b20)。 write_lcd_date(0x30+bai_18b20)。 write_lcd_date(0xDF)。 TH0=(6553650000)/256。 EA=1。num++) { write_lcd_date(table[num])。 dis_D18B20()。 coun
點擊復制文檔內(nèi)容
法律信息相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1