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

正文內容

畢業(yè)設計之基于單片機的溫室大棚自動控制系統(tǒng)-閱讀頁

2025-07-07 12:54本頁面
  

【正文】 電器控制電路,直接顯示參數,然后對鍵盤進行循環(huán)掃描。 參數測量子程序流程圖YN開始聲明變量與函數調用顯示函數啟動A/D完成轉換?讀取轉換值結束 參數測量子程序流程如圖42: 圖42 參數測量子程序流程圖子程序開始先聲明變量和調用的函數后,調用顯示函數,啟動模數轉換器ADC0804進行模數轉換,轉化如果未完成,單片機進行等待。鋝豈濤軌躍輪蒔講嫗鍵。按鍵S2和S3作用是調節(jié)參數值,每次按下S2,當前設置的參數值就加一。S4是切換顯示按鍵,當S4被按下,判斷S4被按下的次數,一次是顯示溫度值,兩次是顯示濕度值,三次是顯示光度值。總結致謝 通過對本系統(tǒng)的研究和設計,使我對單片機的使用有了更深一層次的理解和掌握,同時也很好的鍛煉了自己Protel DXP 2004和仿真軟件Proteus的使用技巧。整個系統(tǒng)設計過程用到的主要硬件有STC89C52,溫度傳感器DS18B20,濕度傳感器HS1101,光照度傳感器光敏電阻,數模轉換器ADC0804,555定時器。設計過程中也鍛煉了自己獨立思考問題的能力,并增強了自己的動手操作能力,對自己將來的工作有很大的幫助。在此要感謝我得指導老師蘇艷蘋老師在設計過程中給予我得幫助,使我能更好的完成畢業(yè)設計。[3] 濕度傳感器HS1101的原理與應用[EB/OL].中國電子科技信息網.[4] [M].清華大學出版社,1996.[5] 黃賢斌,[M].北京:高等教育出版社. 成都:電子科技大學出版社,2004,3()儔聹執(zhí)償閏號燴鈿膽賾。[12] 美M考夫曼,[M].國防科技出版社.[13] [M].北京:人民郵電出版社,1994附錄1 系統(tǒng)總體電路圖附錄2 系統(tǒng)源代碼 include includeincludeincludedefine uchar unsigned chardefine uint unsigned intdefine T_cont 。uchar code tempset[]={tempset: }。uchar code hunset[]={hunset: }。uchar code inteset[]={inteset: }。uchar tempset1,s1num,s4num,hunset1,hun1,hun2,inteset1,inte1。bit T_sign。uchar t_bai,t_shi,t_ge,t_feng,t_miao,sshi,sge, h_bai,h_shi,h_ge,hshi,hge, i_bai,i_shi,i_ge,ishi,ige。sbit s2=P1^1。sbit s4=P1^3。sbit relay2=P1^6。sbit cs1=P3^0。sbit DS=P3^2。sbit lcden=P3^4。sbit wr=P3^6。///////////////////////////////////////////////////////////////////////癱噴導閽騁艷搗靨驄鍵。 for(x=z。x) for(y=110。y)。{ uint i。 i=103。 DS=1。 while(i0)i。 bit dat。i++。i++。 dat=DS。 while(i0)i。}uchar tmpread(void) //read a byte date 讀一個字節(jié){ uchar i,j,dat。 for(i=1。i++) { j=tmpreadbit()。 //讀出的數據最低位在最前面,這樣剛好//一個字節(jié)在DAT里欖閾團皺鵬緦壽驏頦蘊。 //將一個字節(jié)數據返回}void tmpwritebyte(uchar dat) //write a byte to ds18b20遜輸吳貝義鰈國鳩猶騸。 uchar j。 for(j=1。j++) { testb=datamp。 dat=dat1。 i++。 DS=1。while(i0)i。 //write 0 寫0部分 i=8。 DS=1。i++。 uchar T_L=0。 uchar k。 delay(1)。 tmpwritebyte(0x44)。 delay(1)。 tmpwritebyte(0xbe)。 T_H=tmpread()。0x08。 else T_sign=0。0x07。 temp1=temp1*100。 y=(uint)temp1%10000。 y=(uint)y%1000。 y=(uint)y%100。 t_miao=(uint)y%10。void inteadc0804() //光照度adc轉換子程序與數據處理{ rd = 1。 //讀ADC ReadPort = 0xff。 wr = 0。 //啟動ADC rd=0。 _nop_()。 //讀出的光照度數據賦與inte1 rd = 1。 //讀數完畢 i_bai = inte1/100。 //十位數 i_ge = (inte1%10)。 wr = 1。 //P1置位 cs2=0。 wr = 1。 //開始讀轉換后數據 _nop_()。 //稍延時,等待讀完數 delay(20)。 //讀出的濕度數據賦與hun1 rd = 1。 //讀數完畢 hun1=hun2/。 //百位數 h_shi = (hun1%100)/10。 //個位數}///////////////////////////////////////////////////////////誦終決懷區(qū)馱倆側澩賾。 lcdrw=0。 P0=。 //延時 lcden=1。 lcden=0。 lcdrs=1。 lcden=0。 delay(10)。 delay(10)。}void init() //初始化函數{ s1=1。 hunset1=50。 lcdrw=0。 write_(0x38)。 write_(0x0f)。 write_(0x06)。 write_(0x01)。}void print(uchar a,uchar *str) //輸出字符{ write_(a)。\039。} *str=0。 write_data(t)。 sshi=t1/10。 write_(0x80+a1)。 write_data(sge+0x30)。void keyscan() //鍵盤掃描函數{ rd=0。 if(s1==0) { s1num++。 if(s1num==1) { write_(0x01)。 print1(0x8e,0x43)。 print1(0x80+12,0+0x30)。 write_(0x80+9)。 delay(20)。 print(0x80,hunset)。 print1(0x8d,0x25)。 write_(0x80+11)。 } if(s1num==3) { write_(0x01)。 print1(0x8b,0x30)。 print1(0x80+13,0+0x30)。 print1(0x8e,0x56)。 } if(s1num==5) { s1num=0。 s4num=1。 if(s2==0) { while(!s2)。 write_(0x80+10)。 if(tempset1==40) tempset1=15。 if(s3==0) { while(!s3)。 write_(0x80+11)。 if(tempset1==15) tempset1=40。 if(s2==0) { while(!s2)。 write_(0x80+10)。 if(hunset1==90) hunset1=10。 if(s3==0) { while(!s3)。 write_(0x80+11)。 if(hunset1==10) hunset1=90。 if(s2==0) { while(!s2)。 write_(0x80+10)。 if(inteset1==25) inteset1=0。 if(s3==0) { while(!s3)。 write_(0x80+11)。 if(inteset1==0) inteset1=25。 if(s4==0) { s4num++。 } } if(s4num!=0) { if(s4num==1) { print(0x80,tempset)。 print1(0x8e,0x43)。 print1(12,0x2e)。 print1(14,0+0x30)。 else print1(0xc7,0x2b)。 else print1(0xc8,0x20)。 print1(0xc9,t_shi+0x30)。 print1(0xcb,0x2e)。 print1(0xcd,t_miao+0x30)。 } if(s4num==2) { print(0x80,hunset)。 print2(11,hunset1)。 print1(0x80+10,0x20)。 print1(0x8e,0x20)。 else print1(0xc9,0x20)。 print1(0xc8,0x20)。 print1(0xcb,h_shi+0x30)。 print1(0xcd,0x25)。 } if(s4num==3) { print(0x80,inteset)。 print2(9,inteset1)。 print1(0x8c,0+0x30)。 print1(0x8e,0x56)。 else print1(0xc9,0x20)。 print1(0xc8,0x20)。 print1(0xcb,i_ge+0x30)。 print1(0x0d,0x4d)。 } if(s4num==4) { write_(0x01)。 s4num=0。 print(0x80,set)。 readtemperature()。 delay(20)。 delay(20)。 if(temp1=tempset1*100) relay1=0。 if(hun1=hunset1) relay2=1。 if(inte1=inteset1*10) relay3=
點擊復制文檔內容
試題試卷相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1