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

正文內(nèi)容

基于單片機(jī)的溫室大棚自動(dòng)控制系統(tǒng)畢業(yè)設(shè)計(jì)論文(編輯修改稿)

2025-07-24 20:29 本頁面
 

【文章內(nèi)容簡(jiǎn)介】 sbit lcden=P3^4。sbit lcdrs=P3^5。sbit wr=P3^6。sbit rd=P3^7。///////////////////////////////////////////////////////////////////////void delay(uint z) //延時(shí)函數(shù){ uint x,y。 for(x=z。x0。x) for(y=110。y0。y)。}void dsreset(void) //send reset and initialization mand{ uint i。 //DS18B20初始化 DS=0。 i=103。 while(i0)i。 DS=1。 i=4。 while(i0)i。}bit tmpreadbit(void) //read a bit 讀一位{ uint i。 bit dat。 DS=0。i++。 //i++ for delay 小延時(shí)一下 DS=1。i++。i++。 dat=DS。 i=8。 while(i0)i。 return (dat)。}uchar tmpread(void) //read a byte date 讀一個(gè)字節(jié){ uchar i,j,dat。 dat=0。 for(i=1。i=8。i++) { j=tmpreadbit()。 dat=(j7)|(dat1)。 //讀出的數(shù)據(jù)最低位在最前面,這樣剛好//一個(gè)字節(jié)在DAT里 } return(dat)。 //將一個(gè)字節(jié)數(shù)據(jù)返回}void tmpwritebyte(uchar dat) //write a byte to ds18b20{ //寫一個(gè)字節(jié)到DS18B20里 uint i。 uchar j。 bit testb。 for(j=1。j=8。j++) { testb=datamp。0x01。 dat=dat1。 if(testb) //write 1 寫1部分 { DS=0。 i++。i++。 DS=1。 i=8。while(i0)i。 } else { DS=0。 //write 0 寫0部分 i=8。while(i0)i。 DS=1。 i++。i++。 } }}void readtemperature() //讀溫度函數(shù){ uint y。 uchar T_L=0。 uchar T_H=0。 uchar k。 dsreset()。 delay(1)。 tmpwritebyte(0xcc)。 tmpwritebyte(0x44)。 dsreset()。 delay(1)。 tmpwritebyte(0xcc)。 tmpwritebyte(0xbe)。 T_L=tmpread()。 T_H=tmpread()。 k=T_Hamp。0x08。 if(k==0x08) T_sign=1。 else T_sign=0。 T_H=T_Hamp。0x07。 temp1=(T_H*256+T_L)*T_cont。 temp1=temp1*100。 t_bai=(uint)temp1/10000。 y=(uint)temp1%10000。 t_shi=y/1000。 y=(uint)y%1000。 t_ge=y/100。 y=(uint)y%100。 t_feng=y/10。 t_miao=(uint)y%10。 }/////////////////////////////////////////////////////////////void inteadc0804() //光照度adc轉(zhuǎn)換子程序與數(shù)據(jù)處理{ rd = 1。 wr = 1。 //讀ADC ReadPort = 0xff。 //P1置位 cs1=0。 wr = 0。 wr = 1。 //啟動(dòng)ADC rd=0。 //開始讀轉(zhuǎn)換后數(shù)據(jù) _nop_()。 _nop_()。 //稍延時(shí),等待讀完數(shù) inte1 = ReadPort。 //讀出的光照度數(shù)據(jù)賦與inte1 rd = 1。 cs1 = 1。 //讀數(shù)完畢 i_bai = inte1/100。 //百位數(shù) i_shi = (inte1%100)/10。 //十位數(shù) i_ge = (inte1%10)。 //個(gè)位數(shù)} void hunadc0804() //濕度adc轉(zhuǎn)換子程序與數(shù)據(jù)處理{ rd = 1。 wr = 1。 //讀ADC ReadPort = 0xff。 //P1置位 cs2=0。 wr = 0。 wr = 1。 //啟動(dòng)ADC rd=0。 //開始讀轉(zhuǎn)換后數(shù)據(jù) _nop_()。 _nop_()。 //稍延時(shí),等待讀完數(shù) delay(20)。 hun2= ReadPort。 //讀出的濕度數(shù)據(jù)賦與hun1 rd = 1。 cs2 = 1。 //讀數(shù)完畢 hun1=hun2/。 h_bai = hun1/100。 //百位數(shù) h_shi = (hun1%100)/10。 //十位數(shù) h_ge = (hun1%10)。 //個(gè)位數(shù)}///////////////////////////////////////////////////////////void write_(uchar ) //lcd寫命令函數(shù){ lcdrs=0。 lcdrw=0。 lcden=0。 P0=。 delay(10)。 //延時(shí) lcden=1。 //下三行表示E高脈沖到來就開始轉(zhuǎn)換 delay(10)。 lcden=0。}void write_data(uchar date) //lcd寫數(shù)據(jù)函數(shù){ lcdrs=1。 lcdrs=1。 lcdrw=0。 lcden=0。 P0=date。 delay(10)。 lcden=1。 delay(10)。 lcden=0。}void init() //初始化函數(shù){ s1=1。 tempset1=25。 hunset1=50。 inteset1=15。 lcdrw=0。 lcden=0。 write_(0x38)。 delay(10)。 write_(0x0f)。 delay(10)。 write_(0x06)。 delay(10)。 write_(0x01)。 delay(10)。}void print(uchar a,uchar *str) //輸出字符{ write_(a)。 while(*str!=39。\039。) {write_data(*str++)。} *str=0。 }void print1(uchar a,uchar t) //輸出18b20數(shù)據(jù)到1602{ write_(a)。 write_data(t)。}void print2(uchar a1,uchar t1) //輸出設(shè)置溫度數(shù)據(jù)到1602{ uchar sshi,sge。 sshi=t1/10。 sge=t1%10。 write_(0x80+a1)。 write_data(sshi+0x30)。 write_data(sge+0x30)。}////////////////////////////////////////////////////////////void keyscan() //鍵盤掃描函數(shù){ rd=0。 if(s1==0) { delay(5)。 if(s1==0) { s1num++。 while(!s1)。 if(s1num==1) { write_(0x01)。 print(0x80,tempset)。 print1(0x8e,0x43)。 print1(0x80+11,0x2e)。 print1(0x80+12,0+0x30)。 print1(0x80+13,0+0x30)。 write_(0x80+9)。 write_(0x0f)。 delay(20)。 } if(s1num==2) { write_(0x01)。 print(0x80,hunset)。 print1(0x8b,0x30)。 print1(0x8d,0x25)。 print1(0x8e,0x20)。 write_(0x80+11)。 write_(0x80+11)。 } if(s1num==3) { write_(0x01)。 print(0x80,inteset)。 print1(0x8b,0x30)。 print1(0x80+12,0+0x30)。 print1(0x80+13,0+0x30)。 print1(0x8d,0x4d)。 print1(0x8e,0x56)。 write_(0x80+11)。 } if(s1num==5) { s1num=0。 write_(0x01)。 s4num=1。 } } }if(s1num!=0){ if(s1num==1) { if(s2==0) { delay(5)。 if(s2==0) { while(!s2)。 if(s1num==1) { tempset1++。 write_(0x80+10)。 print2(9,tempset1)。 if(tempset1==40) tempset1=15。 } } } if(s3==0) { delay(5)。 if(s3==0) { while(!s3)。 if(s1num==1) { tempset1。 write_(0x80+11)。 print2(9,tempset1)。 if(tempset1==15) tempset1=40。 } } } } if(s1num==2){ if(s2==0) { delay(5)。 if(s2==0) { while(!s2)。 if(s1num==2) { hunset1++。 write_(0x80+10)。 print2(11,hunset1)。 if(hunset1==90) hunset1=10。 } } }if(s3==0) { delay(5)。 if(s3==0) { while(!s3)。 if(s1num==2) { hunset1。 write_(0x80+11)。 print2(11,hunset1)。 if(hunset1==10) hunset1=90。 } } } } if(s1num==3){ if(s2==0) { delay(5)。 if(s2==0) { while(!s2)。 if(s1num==3) { inteset1++。 write_(0x80+10)。 print2(9,inteset1)。 if(inteset1==25) inteset1=0。 } } }if(s3==0) { delay(5)。 if(s3==0) { while(!s3)。 if(s1num==3) { inteset1。 write_(0x80+11)。 print2(9,inteset1)。 if(inteset1==0) inteset1=25。 } } } } } if(s4==0) { delay(5)。 if(s4
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1