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

正文內(nèi)容

基于單片機(jī)的空氣質(zhì)量檢測(cè)系統(tǒng)畢業(yè)設(shè)計(jì)論文-資料下載頁(yè)

2025-06-20 12:43本頁(yè)面
  

【正文】 ey_D=P2^1。sbit key_L=P2^2。sbit key_R=P2^3。sbit key_S=P2^4。/******報(bào)警用管腳******/sbit beep=P3^4。sbit led1=P3^5。sbit led2=P3^6。unsigned char num=0。//記錄設(shè)定鍵按下次數(shù)unsigned char k_flag=0。//記錄設(shè)置鍵按下次數(shù)(用于調(diào)用)unsigned char wei=0。//光標(biāo)位置unsigned char c_num=0。//記錄切換鍵按下次數(shù)unsigned char c_flag=0。//記錄切換鍵按下次數(shù)(用于調(diào)用)unsigned char voc_ad。//AD讀取數(shù)據(jù)unsigned char flag。//DHT11函數(shù)用到/****************************/sbit DHT=P3^7。uchar NONG1[]=nong:。 //濃度第一行數(shù)據(jù)uchar NONG2[]= 。 //濃度第二行數(shù)據(jù)unsigned char wenZ,wenX,check。unsigned char tr_wenZ,tr_wenX。/*********延時(shí)*******************************/void delay_1ms(uint x) { uchar i。 while(x) for(i=0。i120。i++)。 }void delay_10us() { unsigned char i。 i。 i。 i。 i。 i。 i。 }void DelayUs(unsigned char us) //延時(shí)函數(shù) { unsigned char ust。 ust=us1。 /*12MHz頻率*/ while(ust)。 }/*******1602顯示*******************************************//**********寫(xiě)命令**********/void lcd_write_(uchar c) { delay_1ms(5)。//操作前短暫延時(shí),保證信號(hào)穩(wěn)定 E=0。 RS=0。 RW=0。 _nop_()。 E=1。 Data=c。 E=0。 }/**********寫(xiě)數(shù)據(jù)*************/void lcd_write_dat(uchar c) { delay_1ms(5)。 //操作前短暫延時(shí),保證信號(hào)穩(wěn)定 E=0。 RS=1。 RW=0。 _nop_()。 E=1。 Data=c。 E=0。 RS=0。 }/**********LCD初始化********/void lcd_init() { delay_1ms(15)。 lcd_write_(0x38)。 //display mode lcd_write_(0x38)。 //display mode lcd_write_(0x38)。 //display mode lcd_write_(0x06)。 //顯示光標(biāo)移動(dòng)位置 lcd_write_(0x0c)。 //顯示開(kāi)及光標(biāo)設(shè)置 lcd_write_(0x01)。 //顯示清屏 }/*********顯示單個(gè)字符**********/void ShowChar(uchar pos,uchar c) { unsigned char p。 if (pos=0x10) p=pos+0xb0。 //是第二行則命令代碼高4位為0xc else p=pos+0x80。 //是第二行則命令代碼高4位為0x8 lcd_write_(p)。//寫(xiě)命令 lcd_write_dat(c)。 //寫(xiě)數(shù)據(jù) }/*********顯示字符串**********/void ShowString (uchar line,char *ptr) { unsigned char l,*p。 p=ptr。 l=line4。 while((*p)!=39。\039。) { ShowChar(l++,*(p))。 p++。 } }/*********濃度顯示函數(shù)***********/void NONG disp(void) { ShowString(0, NONG 1)。 _nop_()。 ShowString(1, NONG 2)。 } /*********VOC調(diào)用的顯示函數(shù)***********/void disp(void) { ShowString(0,1)。 _nop_()。 ShowString(1,2)。 } /***********報(bào)警用函數(shù)************/void Beep(unsigned char i,j)//i用于確定亮燈方式,j用于確定蜂鳴器是否報(bào)警 { unsigned char m。 led1=led2=1。 for(m=0。 m m++) { switch(i) { case 0:break。 case 1:led1=led2=0。break。//低電平點(diǎn)亮 case 2:led1=0。break。 case 3:led2=0。break。 } beep = j。 delay_1ms(2)。 led1=led2=1。 beep = 0。 delay_1ms(2)。 } }void voc_warning() { unsigned char voc_t。 unsigned char voc_h。 voc_t=(39。039。+VOC2[6])*10+(39。039。+VOC2[8])。 voc_h=(39。039。+VOC1[9])*10+(39。039。+VOC1[11])。 if(voc_tvoc_h) { Beep(1,1)。 } else Beep(0,0)。 }void wen_warning() { unsigned char wen_t。 unsigned char wen_h。 unsigned char wen_l。 wen_t=(39。039。+ NONG 2[6])*10+(39。039。+ NONG 2[7])。 wen_l=(39。039。+ NONG 1[4])*10+(39。039。+ NONG 1[5])。 wen_h=(39。039。+ NONG 1[10])*10+(39。039。+ NONG 1[11])。 if(wen_twen_h||wen_twen_l) { Beep(2,1)。 } else Beep(0,0)。 } { Beep(3,1)。 } else Beep(0,0)。 }/*******************按鍵***************************//*************進(jìn)入設(shè)定功能***************/unsigned char key_set(void) { if(key_S==0) { delay_1ms(10)。 if(key_S==0) { while(!key_S)。 num++。 k_flag=num%4。 } else k_flag=num%4。 } else k_flag=num%4。 return k_flag。 }/********************調(diào)整數(shù)據(jù)******************/unsigned char key_adddec(unsigned char dat) { if(key_U==0) { delay_1ms(10)。 if(key_U==0) { while(!key_U)。 if(dat39。939。) dat++。 else dat=39。939。 } } if(key_D==0) { delay_1ms(10)。 if(key_D==0) { while(!key_D)。 if(dat39。039。) dat。 else dat=39。039。 } } return dat。 }/***************左右移位*******************/unsigned char key_LR() { if(key_L==0) { delay_1ms(10)。 if(key_L==0) { while(!key_L)。 if(wei==0) wei=3。 else wei。 } } if(key_R==0) { delay_1ms(10)。 if(key_R==0) { while(!key_R)。 if(wei==3) wei=0。 else wei++。 } } return wei。 }/*********主函數(shù)調(diào)用的按鍵函數(shù)*********/void set_updn_dat(void) { while(key_set()) { unsigned j=key_LR()。 if(key_set()==1) { switch(j0) { case 1:j=2。break。 case 0:j=0。break。 } VOCdisp()。 VOC1[j+9]=key_adddec(VOC1[j+9])。 lcd_write_(0x80+j+9)。 lcd_write_dat(VOC1[j+9])。 } else if(key_set()==2) { switch(j) { case 2:j=6。break。 case 3:j=7。break。 } WENdisp()。 WEN1[j+4]=key_adddec(NONG 1[j+4])。 lcd_write_(0x80+j+4)。 lcd_write_dat(NONG 1[j+4])。 } else if(key_set()==3) { switch(j) { case 2:j=6。break。 case 3:j=7。break。 }
點(diǎn)擊復(fù)制文檔內(nèi)容
電大資料相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1