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

正文內(nèi)容

基于單片機(jī)保溫箱的溫控系統(tǒng)研究畢業(yè)論文-資料下載頁(yè)

2025-06-27 20:04本頁(yè)面
  

【正文】 //蜂鳴器間隔標(biāo)志uchar x=0。 //計(jì)數(shù)器uchar code tab1[]={Now Tem: . C }。uchar code tab2[]={TH: C TL: C}。uint c。uchar Mode=0。 //狀態(tài)標(biāo)志signed char TH=40。 //上限報(bào)警溫度,默認(rèn)值為 40signed char TL=10。 //下限報(bào)警溫度,默認(rèn)值為 10//============================================================================================//====================================DS18B20=================================================//============================================================================================/*****延時(shí)子程序*****/void Delay_DS18B20(int num){ while(num) 。}畢業(yè)論文22void delay(uint xms)//延時(shí)函數(shù),有參函數(shù){uint x,y。for(x=xms。x0。x) for(y=110。y0。y)。}/*****初始化 DS18B20*****/void Init_DS18B20(void){ unsigned char x=0。 DQ = 0。 //單片機(jī)將 DQ 拉低 Delay_DS18B20(80)。 //精確延時(shí),大于 480us 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){畢業(yè)論文23 unsigned char i=0。 for (i=8。 i0。 i) { DQ = 0。 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 位 t=8。 t=t|a。 tt=t*。 // t= tt*10+。 //放大 10 倍輸出并四舍五入 t= tt*10+。 return(t)。}/*****讀取溫度*****/void check_wendu(void){c=ReadTemperature()5。 //獲取溫度值并減去 DS18B20 的溫漂誤差畢業(yè)論文24if(c1200)c=1200。}/********液晶寫入指令函數(shù)與寫入數(shù)據(jù)函數(shù),以后可調(diào)用**************/void write_1602(uchar )//****液晶寫入指令函數(shù)****{RS=0。//數(shù)據(jù)/指令選擇置為指令delay(1)。EN=1。//拉高使能端,為制造有效的下降沿做準(zhǔn)備delay(1)。EN=0。//en 由高變低,產(chǎn)生下降沿,液晶執(zhí)行命令}void write_1602dat(uchar dat)//***液晶寫入數(shù)據(jù)函數(shù)****{RS=1。//數(shù)據(jù)/指令選擇置為數(shù)據(jù)// rw=0。 //讀寫選擇置為寫LCD1602=dat。//送入數(shù)據(jù)delay(1)。EN=1。 //en 置高電平,為制造下降沿做準(zhǔn)備delay(1)。EN=0。 //en 由高變低,產(chǎn)生下降沿,液晶執(zhí)行命令}void lcd_init()//***液晶初始化函數(shù)****{uchar a。write_1602(0x38)。//設(shè)置液晶工作模式,意思:16*2 行顯示,5*7 點(diǎn)陣,8 位數(shù)據(jù)write_1602(0x0c)。//開(kāi)顯示不顯示光標(biāo)write_1602(0x06)。//整屏不移動(dòng),光標(biāo)自動(dòng)右移write_1602(0x01)。//清顯示畢業(yè)論文25write_1602(0x80)。//日歷顯示固定符號(hào)從第一行第 1 個(gè)位置之后開(kāi)始顯示for(a=0。a16。a++){write_1602dat(tab1[a])。//向液晶屏寫日歷顯示的固定符號(hào)部分delay(3)。}write_1602(0x80+0x40)。//時(shí)間顯示固定符號(hào)寫入位置,從第 2 個(gè)位置后開(kāi)始顯示for(a=0。a16。a++){write_1602dat(tab2[a])。//寫顯示時(shí)間固定符號(hào),兩個(gè)冒號(hào)delay(3)。}}void display(){if(Mode==0){write_1602(0x80+8)。write_1602dat(c/1000+0x30)。write_1602dat((c%1000)/100+0x30)。write_1602dat(((c%1000)%100)%10+0x30)。write_1602(0x80+13)。write_1602dat(0xdf)。write_1602(0x80+0x40+3)。write_1602dat(TH/10+0x30)。write_1602dat(TH%10+0x30)。write_1602dat(0xdf)。write_1602(0x80+0x40+12)。write_1602dat(TL%10+0x30)。write_1602dat(0xdf)。} }//=====================================================================================畢業(yè)論文26/*****初始化定時(shí)器 0*****/void InitTimer(void){TL0=0xb0。 //50ms(晶振 12M)EA=1。 //全局中斷開(kāi)關(guān)TR0=1。ET0=1。 //開(kāi)啟定時(shí)器 0}void KEY(){//功能鍵if(SET==0){BUZZ=0。delay(10)。if(SET==0){Mode++。if(Mode==3)Mode=0。BUZZ=1。}while(SET==0){if(Mode==0){// write_1602(0x80+0x40+6)。write_1602(0x0c)。}else if(Mode==1){write_1602(0x80+0x40+4)。write_1602(0x0f)。}畢業(yè)論文27else{write_1602(0x80+0x40+13)。write_1602(0x0f)。}}}//增加if(ADD==0amp。amp。Mode==1){BUZZ=0。delay(10)。if(ADD==0){TH++。if(TH=99)TH=99。write_1602dat(TH%10+0x30)。write_1602(0x80+0x40+4)。BUZZ=1。}while(ADD==0)。}//減少if(DEC==0amp。amp。Mode==1){BUZZ=0。delay(10)。if(DEC==0){TH。if(TH==TL)TH=TL+1。write_1602(0x80+0x40+3)。write_1602dat(TH/10+0x30)。畢業(yè)論文28BUZZ=1。}while(DEC==0)。}if(ADD==0amp。amp。Mode==2){BUZZ=0。delay(10)。if(ADD==0){TL++。if(TL==TH)TL=TH1。write_1602(0x80+0x40+12)。write_1602dat(TL%10+0x30)。write_1602(0x80+0x40+13)。BUZZ=1。}while(ADD==0)。}//減少if(DEC==0amp。amp。Mode==2){BUZZ=0。if(TL=0)TL=0。write_1602(0x80+0x40+12)。write_1602dat(TL/10+0x30)。write_1602dat(TL%10+0x30)。write_1602(0x80+0x40+13)。BUZZ=1。}while(DEC==0)。}}畢業(yè)論文29/*****報(bào)警子程序*****/void Alarm(){if(x=10){beep_st=~beep_st。x=0。}if(Mode==0){if((c/10)=TH){ALAM=0。BUZZ=0。elseBUZZ=1。}else if((c/10)TL){ALAM1=0。ALAM=1。BUZZ=1。}else{ALAM1=1。}}else{BUZZ=1。ALAM=1。ALAM1=1。}}/*****主函數(shù)*****/void main(void){畢業(yè)論文30uint z。delay(1)。InitTimer()。 //初始化定時(shí)器for(z=0。z100。z++){check_wendu()。delay(1)。 } while(1){display()。KEY()。Alarm()。 check_wendu()。}}/*****定時(shí)器 0 中斷服務(wù)程序 *****/void timer0(void) interrupt 1{ TH0=0x3c。 TL0=0xb0。 x++。}
點(diǎn)擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1