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

正文內(nèi)容

單片機(jī)水溫自動(dòng)控制系統(tǒng)設(shè)計(jì)-資料下載頁

2025-07-07 13:06本頁面
  

【正文】 。 i++ ) { P0 = ~TAP2[str[1]48] 。 P2 = ~0x02。 } P2 = ~0x00。 for ( i=0。 i255。 i++ ) { P0 = ~TAP[str[3]48] 。 P2 = ~0x04。 } P2 = ~0x00。 for ( i=0。 i255。 i++ ) { P0 = ~TAP[str[4]48] 。 P2 = ~0x08。 } P2 = ~0x00。 }}//蜂鳴器控制void Alarm(unsigned char t){ unsigned char i,j。 for(i=0。i200。i++) { BEEP= ~BEEP。 for(j=0。jt。j++)。 }}// 主程序 void main( ) { unsigned char warning= 25。 unsigned char TMP_H = 0。 unsigned char TMP_L = 0。 short TMP= 0。 // 短整型數(shù)據(jù) float TMP_F= 0。 // 浮點(diǎn)型數(shù)據(jù) // P1_0= 0。 // 開機(jī)時(shí)測試溫度超限警報(bào)LED 燈 while(1) { if (SET==0) { delay1ms(10)。 //按鍵去抖 while (SET==0)。 con++。 if (con=2) con=0。 } if(con) // 報(bào)警值確定 { if( P1_1==0){ //delay1ms(10)。 //按鍵去抖 //while( P1_1==0)。 warning++。 // 增加上限 } else if( P1_2==0) { //delay1ms(10)。 //按鍵去抖 //while( P1_2==0)。 warning。 // 減小上限 } else warning+= 0。 str[ 0] = warning / 10+ 48。 str[ 1] = warning%10+ 48。 str[ 3] = 48。 str[ 4] = 48。 display( ) 。 delay_10us( 5) 。 } INIT( ) 。 // 初始化DS18B20 WRITE( 0xCC) 。 // 跳過ROM 配置 WRITE( 0x44) 。 // 開始轉(zhuǎn)換溫度 display( ) 。 // 默認(rèn)至少等待750 ms, 用于溫度轉(zhuǎn)換 INIT( ) 。 // 初始化DS18B20 WRITE( 0xCC) 。 // 跳過ROM 配置 WRITE( 0xBE) 。 // 準(zhǔn)備讀取溫度值 TMP_L= READ( ) 。 // 讀取溫度值的低8 位 TMP_H = READ( ) 。 // 讀取溫度值的高4 位 TMP=TMP_H 。 TMP=( TMP8) | TMP_L。 // 高位左移8 位與低位相或( 加) 賦值于T MP TMP_F= TMP *。 // 計(jì)算溫度值 sprintf( str , %.2f , TMP_F) 。// 將浮點(diǎn)數(shù)轉(zhuǎn)換成字符型, 存入str 數(shù)組 if( TMP_F= warning ) { P1_5= 0。 P1_6= 1。 P1_7= 1。 Alarm(90)。 Alarm(120)。 }// 如果溫度值大于等于報(bào)警值, 報(bào)警 else { P1_5= 1。 P1_6= 0。 P1_7= 0。 } }}//PID控制部分define FiltA ; //PID輸出的濾波系數(shù)()define FiltB // PID輸出的濾波系數(shù)(1FilterA)define Kp //PID控制器的比例系數(shù)define Ki //PID控制器的積分系數(shù)define Kd //PID控制器的微分系數(shù)define Emax //誤差積分上限float Err[4] [2]。float InteR[4] [2]。float OnMs[4] [2]。/*function: unsigned char pid(unsigned char i,unsigned char j,unsigned char k,unsigned char l)description: this function for pid controlparameter: i:channel j:time k:set temprature l:actual tempraturereturn: adjust_timeadjust time*/void pid (unsigned char ch,float refval){ Float DiscE,Tmpr。 Err[ch][1]=refvalGetTmp(GetData7705(ch+l))。 //e(k) If(Err[ch] [1]=Emax) InteE[ch] [1]=InteE[ch] [1]=InteE[ch] [0]+Err[ch] [1]。 else InteE[ch] [l]= InteE[ch] [0]。 DiscE=Err [ch] [1]Err[ch] [0]。 Tmpr=Kp*Err[ch] [1]+Ki*InteE[ch] [1]+Kd*DiscE。 OnMs[ch] [1]=GetOnMs(FiltA*OnMs[ch] [0]+FiltB*Tmpr)。 Err[ch] [0]=Err [ch] [1]。 InteE[ch] [0]=InteE[ch] [1]。 OnMs[ch] [0]= OnMs[ch] [1]。}/*function: float GetOnMs(float OnTime)description: output control timeparameter: nonereturn: ftmp*/float GetOnMs(float OnTime){ float ftmp。 if(OnTime=0) ftmp=0。 else if(OnTime=100) ftmp=100。 else ftmp=OnTime。 return(ftmp)。}24
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1