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

正文內(nèi)容

薦基于單片機(jī)的家用煤氣泄漏監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[精選整理]-資料下載頁(yè)

2024-12-01 22:37本頁(yè)面

【導(dǎo)讀】隨著生活水平的提高,罐裝煤氣和煤氣管道已經(jīng)進(jìn)入千家萬(wàn)戶。煤氣泄漏可以使人煤氣中毒,煤氣在和空氣混合到一定比例形成。的混合物還會(huì)發(fā)生爆炸,嚴(yán)重威脅到了人們的生命財(cái)產(chǎn)安全。報(bào),使危急情況得到處理。硬件部分的設(shè)計(jì)包括煤氣濃度采集電。和按鍵電路的設(shè)計(jì)、顯示電路的設(shè)計(jì)、報(bào)警電路的設(shè)計(jì)。該設(shè)計(jì)主要完成了系統(tǒng)原理圖的繪制,軟件仿真,并利用。單片機(jī)開(kāi)發(fā)板實(shí)現(xiàn)了具體的功能,經(jīng)驗(yàn)證該系統(tǒng)工作穩(wěn)定可靠。

  

【正文】 9 sbit ST=P3^3。 sbit EOC=P3^6。 sbit OE=P3^2。 //按鍵 sbit Key1=P2^6。 sbit Key2=P2^7。 sbit Key3=P3^7。 signed char w。 //溫度值全局變量 uint c。 //溫度值全局變量 bit bdata flag=0。 //煤氣含量變量 新鄉(xiāng)學(xué)院本科畢業(yè)論文(設(shè)計(jì)) 35 uchar temp。 uchar yushe_wendu=50。 uchar yushe_yanwu=45。 //按鈕模式 | uchar Mode=0。 //函數(shù)聲明 extern uchar ADC0809()。 extern void Key()。 void delay(uint z) { uint i,j。 for(i=0。iz。i++) for(j=0。j121。j++)。 } /*****延時(shí)子程序 *****/ void Delay_DS18B20(int num) { while(num) 。 } /*****初始化 DS18B20*****/ void Init_DS18B20(void) { unsigned char x=0。 DQ = 1。 //DQ 復(fù)位 Delay_DS18B20(8)。 //稍做延時(shí) DQ = 0。 //單片機(jī)將 DQ拉低 Delay_DS18B20(80)。 //精確延時(shí),大于 480us 新鄉(xiāng)學(xué)院本科畢業(yè)論文(設(shè)計(jì)) 36 DQ = 1。 //拉高總線 Delay_DS18B20(14)。 x = DQ。 //稍做延時(shí)后,如果 x=0 則初始化成功, x=1 則初始化失敗 Delay_DS18B20(20)。 } /*****讀一個(gè)字節(jié) *****/ unsigned char ReadOneChar(void) { unsigned char i=0。 unsigned char dat = 0。 for (i=8。i0。i) { DQ = 0。 // 給脈沖信號(hào) dat=1。 DQ = 1。 // 給脈沖信號(hào) if(DQ) dat|=0x80。 Delay_DS18B20(4)。 } return(dat)。 } /*****寫一個(gè)字節(jié) *****/ void WriteOneChar(unsigned char dat) { unsigned char i=0。 for (i=8。 i0。 i) { DQ = 0。 新鄉(xiāng)學(xué)院本科畢業(yè)論文(設(shè)計(jì)) 37 DQ = datamp。0x01。 Delay_DS18B20(5)。 DQ = 1。 dat=1。 } } /*****讀取溫度 *****/ unsigned int ReadTemperature(void) { unsigned char a=0。 unsigned char b=0。 unsigned int t=0。 float tt=0。 Init_DS18B20()。 WriteOneChar(0xCC)。 //跳過(guò)讀序號(hào)列號(hào)的操作 WriteOneChar(0x44)。 //啟動(dòng)溫度轉(zhuǎn)換 Init_DS18B20()。 WriteOneChar(0xCC)。 //跳過(guò)讀序號(hào)列號(hào)的操作 WriteOneChar(0xBE)。 //讀取溫度寄存器 a=ReadOneChar()。 //讀低 8位 b=ReadOneChar()。 //讀高 8位 t=b。 t=8。 t=t|a。 tt=t*。 t= tt*10+。 //放大 10 倍輸出并四舍五入 return(t)。 } //===================================================================新鄉(xiāng)學(xué)院本科畢業(yè)論文(設(shè)計(jì)) 38 ================== //===================================================================================== //===================================================================================== /*****讀取溫度 *****/ void check_wendu(void) { c=ReadTemperature()5。 //獲取溫度值并減去 DS18B20 的溫漂誤差 if(c0) c=0。 if(c=999) c=999。 } //ADC0809 讀取信息 uchar ADC0809() { uchar temp_=0x00。 //轉(zhuǎn)化初始化 ST=0。 //開(kāi)始轉(zhuǎn)換 ST=1。 ST=0。 //外部中斷等待 AD 轉(zhuǎn)換結(jié)束 while(EOC==0) //讀取轉(zhuǎn)換的 AD值 OE=1。 temp_=Data_ADC0809。 新鄉(xiāng)學(xué)院本科畢業(yè)論文(設(shè)計(jì)) 39 OE=0。 return temp_。 } void Key() { //模式選擇 if(Key1==0) { while(Key1==0)。 if(Mode=3) Mode=0。 else { write_(0x38)。//屏幕初始化 write_(0x0d)。//打開(kāi)顯示 無(wú)光標(biāo) 光標(biāo)閃爍 write_(0x06)。//當(dāng)讀或?qū)懸粋€(gè)字符是指針后一一位 Mode++。 switch(Mode) { case 1: { write_(0x80+7)。//位置 break。 } case 2: { write_(0x80+15)。//位置 break。 } 新鄉(xiāng)學(xué)院本科畢業(yè)論文(設(shè)計(jì)) 40 case 3: { write_(0x38)。//屏幕初始化 write_(0x0c)。//打開(kāi)顯示 無(wú)光標(biāo) 無(wú)光標(biāo)閃爍 Mode=0。 break。 } } } } if(Key2==0amp。amp。Mode!=0) { while(Key2==0)。 switch(Mode) { case 1: { yushe_wendu++。 if(yushe_wendu=99) yushe_wendu=99。 write_(0x80+6)。 write_data(0x30+yushe_wendu/10)。 write_data(0x30+yushe_wendu%10)。 break。 } case 2: { yushe_yanwu++。 if(yushe_yanwu=255) 新鄉(xiāng)學(xué)院本科畢業(yè)論文(設(shè)計(jì)) 41 yushe_yanwu=255。 write_(0x80+13)。 write_data(0x30+yushe_yanwu/100)。 write_data(0x30+yushe_yanwu%100/10)。 write_data(0x30+yushe_yanwu%10)。 break。 } } } if(Key3==0amp。amp。Mode!=0) { while(Key3==0)。 switch(Mode) { case 1: { yushe_wendu。 if(yushe_wendu=0) write_(0x80+6)。 write_data(0x30+yushe_wendu/10)。 write_data(0x30+yushe_wendu%10)。 break。 } case 2: { yushe_yanwu。 if(yushe_yanwu=0) yushe_yanwu=0。 write_data(0x30+yushe_yanwu%100/10)。 新鄉(xiāng)學(xué)院本科畢業(yè)論文(設(shè)計(jì)) 42 write_data(0x30+yushe_yanwu%10)。 break。 } } } delay(200)。 write_(0x38)。//屏幕初始化 write_(0x0c)。//打開(kāi)顯示 無(wú)光標(biāo) 無(wú)光標(biāo)閃爍 } void main() { check_wendu()。 check_wendu()。 Init1602()。 while(1) { temp=ADC0809()。 check_wendu()。 Key()。 if(Mode==0) { Display_1602(yushe_wendu,yushe_yanwu,c,temp)。 if(temp=yushe_yanwu) { LED_yanwu=0。 baojing=0。 } 新鄉(xiāng)學(xué)院本科畢業(yè)論文(設(shè)計(jì)) 43 else { LED_yanwu=1。 } if(c=(yushe_wendu*10)) { baojing=0。 LED_wendu=0。 } else { LED_wendu=1。 } if((tempyushe_yanwu)amp。amp。(c(yushe_wendu*10))) { baojing=1。 } } } } 新鄉(xiāng)學(xué)院本科畢業(yè)論文(設(shè)計(jì)) 44 致 謝 首先感謝我的指導(dǎo)老師 李中琴老師 。本 設(shè)計(jì) 是在 李 老師的指導(dǎo)幫助下修改完成的。在此,我要向 她 的細(xì)心幫助和指導(dǎo)表示由衷的感謝 。在畢業(yè)設(shè)計(jì)的這段時(shí)間從她身上學(xué)習(xí)到了許多專業(yè)知識(shí),而且還感受到她一絲不茍,兢兢業(yè)業(yè)的工作精神,還感受到她平時(shí)生活中的平易近人,她的態(tài)度和精神值得我去學(xué)習(xí)。 非常感謝大家對(duì)我在畢業(yè)設(shè)計(jì)中的幫助,使我有了整體思路,給我了許多幫助,解決了 許多實(shí)際問(wèn)題,使我有了許多收獲。 感謝多年來(lái)教授我知識(shí)的老師們,感謝學(xué)校給我的學(xué)習(xí)機(jī)會(huì),感謝那些鼓勵(lì)幫助過(guò)我的朋友們,感謝所以那些幫助過(guò)我的老師,學(xué)校和同學(xué)。感謝我的父母和家人。 通過(guò)論文的撰寫,使我系統(tǒng)的了解了單片機(jī)控制方面的知識(shí),這對(duì)我以后的工作是寶貴的財(cái)富。由于作者水平有限,設(shè)計(jì)中難免有疏漏和不足之處,歡迎老師和專家指正。
點(diǎn)擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1