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

正文內容

畢業(yè)論文-電熱水器水溫水位控制系統的研究(編輯修改稿)

2025-02-12 22:09 本頁面
 

【文章內容簡介】 (S3)(3)、Up —— (S4)顯示溫度:(1)、沒有DS18B20存在時,LCD1602屏幕中間顯示DS18B20 ERROR(3)、有DS18B20存在時,LCD1602第一行顯示當前溫度now temp:(4)、LCD1602第二行顯示設定溫度settemp:xx ,初始值為20。設定溫度:(1)、按下Enter,LCD1602第二行顯示set temp:xx,xx同時閃爍。(2)、這時可以按Up和Down來調節(jié)設定溫度。(3)、調節(jié)好后,再按Enter退出。這時數字不閃爍,執(zhí)行相應指令動作。第四章 實驗測試 LCD1602顯示“ABCD1234”編一段小程序,在液晶屏上實現顯示“ABCD1234”。源程序略。編一段小程序,實現鍵盤及數字顯示結合。先設定某個定值作為初始值,當按下鍵S2時,進入數值設定狀態(tài),這時可通過按下鍵SS4來加減所設定的初始值。源程序略。經過調式,可達到預期效果。編譯好主程序和個模塊子程序,燒寫進單片機AT89C51中,連接好各部分硬件電路。打開電源,電路自動復位,首先不要接入DS18B20,此時屏幕中間只顯示DS18B20ERROR,然后接入DS18B20,但讓其處于無水狀態(tài),此時屏幕中間顯示錯誤ERROR,并且語音發(fā)出報警聲。接著讓DS18B20處于有水狀態(tài),此時LCD1602液晶顯示DS18B20所讀到水的當前溫度T1,用溫度計測量水的當前溫度T2,對比T1與T2的值。通過按鍵設定某個值,并使這個值大于當前溫度值,當退出“確認”按鍵 時,觀察到繼電器1能夠吸合。再次通過按鍵設定一個值,并使這個值小于當前溫度值。在原理上基本能達到預期效果。 測量TT2的溫度測量次數12345DS18B20所測溫度T1(℃)溫度計所測溫度T2(℃)由于元器件DS18B20讀溫度時有延時,并且讀溫度計所測溫度時人為的視覺誤差,以及周圍環(huán)境影響等原因,T1,T2有較小的差別。 DS18B20測量設定前后的溫度鍵盤設定的溫度(℃)102520溫度設定前溫度計所測溫度(℃)溫度設定前DS18B20所測溫度(℃)溫度設定后系統再次達到穩(wěn)定時溫度計所測溫度(℃)溫度設定后系統再次達到穩(wěn)定時DS18B20所測溫度(℃)實驗現象由于所設定的溫度與當前水溫在整數上相等,所以系統不啟動任何裝置,兩個繼電器都不吸合。設定溫度值大于當前水溫,繼電器1吸合,啟動加熱裝置。當溫度升到25度時,繼電器1馬上斷開,停止加熱。設定溫度值小于當前水溫,繼電器2吸合,啟動降溫裝置。當溫度降到低于21度時,繼電器2斷開。 由于在實驗過程中,當加熱裝置達到所設定的溫度時,繼電器斷開后,加熱裝置仍有余熱,所以水的溫度仍然會上升一定的溫度。所以本系統設定的允許溫差為<1℃。 結論本系統以單片機為核心部件的控制系統,利用軟件編程,最終基本實現了各項設計要求。由于數據采集、顯示的實時性要求不是很高,而單片機的執(zhí)行速度相對于這些過程要快得多,若分時選通各個采樣或顯示通道,雖然單片機對各個通道的處理是依次進行的,但是只要這一過程大到一定速度,總的來看幾乎同時執(zhí)行,不斷重復這一過程,就產生了循環(huán)掃描的思想,它在單片機系統設計中得到了廣泛的應用。在當今越來越趨向于自動化的社會,該系統的可用性及簡易性更能取得廣泛的應用。通過這次畢業(yè)設計使我從中學到了許多東西,了解到在電子制作方面的很多經驗,同時也學到了那種堅決不放棄的制作精神,做任何學問都要一絲不茍,對出現的任何問題和偏差都不能輕視,要找方法去解決,做事情的時候要有耐心和毅力,不要一遇到困難就打退堂鼓,只要堅持下去就能找到解決問題的思路和辦法。自己的求學之路還很長,以后更應該在工作實踐中不斷學習,努力使自己成為一個對社會有所貢獻的人。致謝 這次畢業(yè)設計得到了很多老師、同學的幫助,其中我的指導老師李風雷老師對我的關心和支持尤為重要,感謝李風雷老師一直以來對我畢業(yè)設計的建議和指導。這次畢業(yè)論文能夠最終順利完成,歸功于各位任課老師兩年間的認真負責,使我能夠很好的掌握專業(yè)知識,并在畢業(yè)論文中得以體現。也正是你們長期不懈的支持和幫助才使得我的畢業(yè)論文最終順利完成。最后,向自動化專業(yè)的全體老師們再次表示衷心感謝:謝謝你們,謝謝你們兩年的辛勤栽培!參考文獻[1] 蘇家健,[M].北京:高等教育出版社,2004,2655.[2] 99SE[M].北京:北京希望電子出版社,2002,6580.[3] 江曉安,[M].西安:西安電子科技大學出版社,1993,5070.[4] 鄭長勇,[J].電子質量報,2005,12:011.[5] 王任遠,[J] .工礦自動化報,2008,02:049.[6] 全國大學生電子設計競賽組委會. 全國大學生電子設計競賽獲獎作品匯編[M]. 北京:北京理工大學出版社,2004.[7] DS18B20官方英文文檔 . DS18B20官方英文站點下載.[8] 常君,劉坤,[J].電子測試報,2008,04:014.[9] [D].華中科技大學,2006.[10] [J].2008,01:030[11] 劉剛,秦永左. 單片機原理及應用. 北京:北京大學出版社,2006,3576.[12] :清華大學出版社,2004,1033.[13] 蔡美琴、 系列單片機系統及其應用(第二版).高等教育出版社,2004.,2640.[14]:清華大大學學出版社,1999年8月第一版,410.[15] 萬福君、2001.附錄A附錄 Binclude include define uint unsigned intdefine uchar unsigned chardefine ulong unsigned longdefine LCDIO P1sbit DQ=P3^5。//ds18b20與單片機連接口sbit rs=P2^5。 sbit rd=P2^6。sbit lcden=P2^7。sbit key1=P1^0。 //設定sbit key2=P1^1。 //加sbit key3=P1^2。 //減sbit heat=P3^6。 //報警輸出sbit out1=P3^2。sbit out2=P3^1。sbit busy=P2^0。sbit dat=P2^1。sbit rest=P2^2。uchar key。 //設定指針uchar TL=30,WH=12,WL=8。//水位上下限sbit RX = P3^4。 //模塊引腳sbit TX = P3^3。uint Speed=340。unsigned long time=0。unsigned long S=0。bit flag =0。uchar l_disbuff[4] ={ 0,0,0,0,}。//顯示緩沖uchar data disdata[5]。uint tvalue。//溫度值uchar tflag。uchar count,s1num。uchar code table[]=WH: WL: 。uchar code table1[]=TL: NOW: 。uchar dispbuf[3]。ulong temp。uchar getdata。 //獲取ADC轉換回來的值void delay(uint z){ uint x,y。 for(x=z。x0。x) for(y=110。y0。y)。}/********************************************************報數 程序********************************************************/uint sound(uint k){uint i。 while(busy==0)。 rest=1。 delay(1)。 rest=0。 for(i=k。i0。i) {dat=1。 delay(1)。 dat=0。 } return(1)。 }/*********************************************//**********************************************/void write_(uchar ){ rs=0。 rd=0。 lcden=0。 P0=。 delay(5)。 lcden=1。 delay(5)。 lcden=0。 }/*********************************************/void write_date(uchar date){ rs=1。 rd=0。 lcden=0。 P0=date。 delay(5)。 lcden=1。 delay(5)。 lcden=0。 }/***********************************************/void init(){ uchar num。 lcden=0。 write_(0x38)。 write_(0x0c)。 write_(0x06)。 write_(0x01)。 write_(0x80)。 for(num=0。num15。num++) { write_date(table[num])。 delay(5)。 } write_(0x80+0x40)。 for(num=0。num15。num++) { write_date(table1[num])。 delay(5)。 } }/********************************************************/void displayTL() {write_(0xc3)。 write_date(TL/10%10+0x30)。//溫度上限十位 write_(0xc4)。 write_date(TL%10+0x30)。//溫度上限個位 }void displayWH() {write_(0x83)。 write_date(WH/100%10+0x30)。 write_date(WH/10%10+0x30)。//水位上限十位 write_date(WH%10+0x30)。//水位上限個位 }void displayWL() {write_(0x89)。 write_date(WL/10%10+0x30)。//水位上限十位 write_date(WL%10+0x30)。//水位上限個位}/**************************************************/void delay_18B20(uint i)//延時1微秒{ while(i)。}/**************************************************/void ds1820rst()/*ds1820復位*/ { uchar x=0。 DQ = 1。 //DQ復位 delay_18B20(4)。 //延時 DQ = 0。 //DQ拉低 delay_18B20(100)。 //精確延時大于480us DQ = 1。 //拉高 delay_18B20(40)。 } uchar ds1820rd()/*讀數據*/ { uchar i=0。 uchar dat = 0。 for (i=8。i0。i) { DQ = 0。 //給脈沖信號 dat=1。 DQ = 1。 //給脈沖信號 if(DQ) dat|=0x80。 delay_18B20(10)。 } return(dat)。 }/**************************************************/ void ds1820wr(uchar wdata)/*寫數據*/ {uchar i=0。 for (i=8。 i0。 i) { DQ = 0。 DQ = wdataamp。0x01。 delay_18B20(10)。 DQ = 1。 wdata=1。 } }read_temp()/*讀取溫度值并轉換*/ {uchar a,b。 ds1820rst()。 ds1820wr(0xcc)。//*跳過讀序列號*/ ds1820wr(0x44)。//*啟動溫度轉換*/ ds1820rst()。 ds1820wr(0xcc)。//*跳過讀序列號*/ ds1820wr(0xbe)。//*讀取溫度*/ a=ds1820rd()。
點擊復制文檔內容
環(huán)評公示相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1