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

正文內(nèi)容

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

2025-07-16 23:15 上一頁面

下一頁面
 

【正文】 時刻的溫度情況。另外DS18B20具有3引腳的小體積封裝,測溫范圍為55~+125攝氏度,其測量范圍與精度都能符合設(shè)計要求。圖4 DS18B20接線原理圖 DS18B20時序圖 主機使用時間隙來讀寫DS18B20的數(shù)據(jù)位和寫命令字的位。圖7 字節(jié)分配下表為12位轉(zhuǎn)化后得到的12位數(shù)據(jù),存儲在18B20的兩個8比特的RAM中,二進制中的前面5位是符號位,如果測得的溫度大于0, 這5位為0,;如果溫度小于0,這5位為1, 溫度。 圖8 DS18B20溫度數(shù)據(jù)表 顯示電路 LED數(shù)碼管顯示采用動態(tài)掃描方式,能簡化電路布線,節(jié)約單片機I/O端口。圖10 聲光報警電路 鍵盤輸入電路 四個鍵分別連接單片機P3^P3^P3^P3^7構(gòu)成獨立式鍵盤,分別實現(xiàn)加、減、報警溫度設(shè)定功能鍵和溫度查詢功能鍵。 溫度查詢模塊流程圖如下:入口功能鍵按下? N確認按下?延時消抖 Y N 顯示溫度值與位次 Y 加鍵按下? N確認按下?延時消抖 Y查詢下一個值 Y 減鍵按下? N N查詢上一個值確認按下?延時消抖 Y Y退出功能鍵按下? N N返回 Y 圖18 溫度查詢模塊流程圖 溫度設(shè)定、報警模塊 此模塊跟溫度查詢模塊類似,需要接受按鍵輸入,進入模塊界面后,按加減鍵分別上調(diào)和下調(diào)設(shè)定報警溫度值,當(dāng)實時溫度值超過設(shè)定值時驅(qū)動蜂鳴器發(fā)聲,并點亮8位發(fā)光二極管,實現(xiàn)聲光報警。//蜂鳴器使能端sbit dula=P2^6。//減鍵sbit alarm=P3^6。//1~8個數(shù)碼管的位選碼uchar recordtable[10]。//計數(shù)變量uchar alanum=30。//DS18B20工作延時子程序 void Init_DS18B20()。//由DS18B20產(chǎn)生溫度值void Display(uchar wei,uchar duan)。//記錄溫度值void Showrecord()。 EA=1。//顯示實時溫度 Alarm()。i0。}/************************DS18B20工作延時函數(shù)*****************************/void delay(uchar i){ while(i)。 //稍做延時 DQ = 0。 x=DQ。unsigned char dat = 0。 // 給脈沖信號 dat=1。 } return(dat)。 i) { DQ = 0。 DQ = 1。//分別為數(shù)據(jù)低位和高位 uint temp。 // 啟動溫度轉(zhuǎn)換 delay(200)。 //讀取溫度寄存器等(共可讀9個寄存器) 前兩個就是溫度 tempL=ReadOneChar()。0xff。 P0=tablew[wei]。 P0=tabled[duan]。//顯示溫度數(shù)值 Display(3,tt%10)。 if(alarm==0) { delay1(80)。//add鍵按下,上調(diào)設(shè)定值 if(alanum==51) { alanum=0。//最小值為0攝氏度,循環(huán)顯示 } } } Showtemperature(alanum)。 Display(7,10)。//溫度大于設(shè)定值,聲光報警 P1=0。//溫度大于設(shè)定值,聲光報警 P1=0。 if(countmin==1200)//1分鐘 { countmin=0。//記錄一次加一,最大記錄10個值 if(recordnum==10) { recordnum=10。//最新值填入第一個位置 } } }/************************查詢記錄的溫度值*************************************/void Showrecord(){ bit flag。//record第一次按鍵置位進入標志 } } while(flag)//進入查詢 { Display(0,recordtable[a]/10)。 Display(4,10)。 if(add==0) { delay1(z)。 } } } } if(sub==0)//sub按下,查看上一個值 { delay1(z)。 } } } } if(record==0) { delay1(80)。//50ms countsec++。//一秒鐘更新一次溫度值 } Keeprecord()。定義變量時,盡量定義局部變量,在字符型變量能達到要求的情況下就不用定義成整形變量了,以節(jié)省內(nèi)存空間。另外,如果對按鍵進行釋放判斷的話就能解決長時間按鍵導(dǎo)致按鍵重復(fù)響應(yīng)的問題。 總的來說,自己從這次獨立的課程設(shè)計中收獲了一些知識與經(jīng)驗,一些從書本中學(xué)之不來的東西,不是說理論無用,而這恰恰是在理論的土壤中開出的花朵,是在理論的肩膀望見的更寬廣的道路!成功來之不易,自主動手動腦實踐,小小的成果亦能帶來碩大的喜悅!參考文獻:1. 徐瑋. C51單片機高效入門(第2版). 北京:機械工業(yè)出版社,2010.2. 龍脈工作室,劉鯤,孫春亮(修訂版). 北京:人們郵電出版社,2
點擊復(fù)制文檔內(nèi)容
物理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1