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

正文內(nèi)容

基于單片機的室溫控制系統(tǒng)的設(shè)計畢業(yè)論文-資料下載頁

2025-06-23 15:12本頁面
  

【正文】 t read_temperature_T(unsigned char *p,unsigned char y) //讀溫度{ i_start()。 if(i_send(y)) { if(i_send(0xaa)) { i_start()。 if(i_send(y+1)) { *(p+1)=i_receive()。 //接收高字節(jié) i_ack()。 *p=i_receive()。 //接收低字節(jié) i_stop()。 delay()。 return(1)。 } else { i_stop()。 delay()。 return(0)。 } } else { i_stop()。 delay()。 return(0)。 } } else { i_stop()。 delay()。 return(0)。 } } void temperconvert_T(unsigned char y) //溫度轉(zhuǎn)換{ if(start_temperature_T(y)) { secondflag=0。 secondcount=0。 TH0=55536/256。 TL0=55536%256。 TR0=1。 } while(secondflag!=1) {} read_temperature_T(temperdata,y)。}void colect_dealt_t(void) //溫度采集與數(shù)據(jù)處理{ temperconvert_T(0x90)。 T_data[1]=temperdata[1]。 result=temperdata[0]。 T_data[0]=result3。 temperconvert_T(0x92)。 T_data[3]=temperdata[1]。 result=temperdata[0]。 T_data[2]=result3。if((T_data[1]+T_data[3])%2) //求溫度平均值 {average_T[0]=16+(T_data[0]+T_data[2])/2。 }else {average_T[0]=(T_data[0]+T_data[2])/2。 } average_T[1]=(T_data[1]+T_data[3])/2。 m= average_T[1]。for(x=0。x5。x++) {displaybuffer[x]=16。 } x=2。 result=average_T[1]。while(result/10) //數(shù)組依次存放溫度低位到高位數(shù)值 {displaybuffer[x]=result%10。 result=result/10。 x++。 } displaybuffer[x]=result。 result=average_T[0]。 displaybuffer[0]=(dotcode[result])%10。 displaybuffer[1]=(dotcode[result])/10。} void show_T(unsigned char *p) //數(shù)碼顯示{ unsigned char i。 for(i=3。i=0。i) {if(i==2) {P0=(displaycode[*(p+i)])|0x80。} //顯示小數(shù)點 else {P0=displaycode[*(p+i)]。} if(i==3) {displaybit=0xfe。 P1=(P1amp。displaybit)。 delay()。 } else {displaybit=_crol_(displaybit,1)。 //循環(huán)左移點亮位 if(i==2) {P1=(P1|0x01)。} else if(i==1) {P1=(P1|0x02)。} else {P1=(P1|0x04)。} P1=(P1amp。displaybit)。 delay()。 } } P1=(P1|0x0f)。 displaybit=(displaybit|0x0f)。}unsigned int key_scan(void) //讀按鍵值{ EX0=0。 P2=0xF1。 k=P2。 if(k!=0xF1) { delay()。 ks=P2。 if(k==ks) {k=0xFD。 do { P2=k。 if(k!=P2) {switch(P2) {case 0xed:{return 0。break。} case 0xdd:{return 1。break。} case 0xbd:{return 2。break。} case 0x7d:{return 3。break。} case 0xeb:{return 4。break。} case 0xdb:{return 5。break。} case 0xbb:{return 6。break。} case 0x7b:{return 7。break。} case 0xe7:{return 8。break。} case 0xd7:{return 9。break。} case 0xb7:{return (key+1)。break。} case 0x77:{return (key1)。break。} } } k=_crol_(k,1)。 //循環(huán)左移掃描 }while(k!=0xEF)。 } }}void temper_change_T(unsigned char y) //熱電制冷{ unsigned char i。 for(i=0。i30。i++) {while(y!=m) {P1_4=1。 //制冷片工作 if((ym)0) //設(shè)定值比室溫高 {P1_5=1。n=ym。 if(n==1) {if(average_T[1]28) {delay10ms()。P1_4=0。break。}// 176。C else {delayts(1)。} } else {delayts(n)。} } else {P1_5=0。 n=my。 //設(shè)定值比室溫低 if(n==1) {delayts(1)。} else {delayts(n)。} } colect_dealt_T()。 show_T(displaybuffer)。 } while(y==m) { if(average_T[1]4) {P1_5=0。delay10ms()。 // 176。C P1_4=0。break。 } else {P1_4=1。P1_5=0。delayts(1)。} colect_dealt_T()。 show_T(displaybuffer)。 } }}void main(void) { P0=0x00。 P1=0xef。 P2=0xf1。 P3=0xa4。 TMOD=0x01。 //定時器設(shè)定為工作方式1 IT0=0。 //低電平觸發(fā)外部中斷 ET0=1。 EX0=1。 EA=1。 colect_dealt_T()。 //溫度值采集與處理 show_T(displaybuffer)。 //顯示當前溫度值 s=0。 P3_3=1。 s_key[0]= 25/10。 s_key[1]= 25%10。 while(1) {if(s==0) //沒有鍵輸入 { colect_dealt_T()。 show_T(displaybuffer)。 temper_change_T(key)。 } else //有鍵輸入 {delayts(2)。 //等待第二個按鍵輸入 if(s==2) {y_key=10*s_key[0]+s_key[1]。} //有第二個按鍵輸入 else {y_key=s_key[0]。} s=0。 if(0y_keyamp。amp。y_key40){P3_3=1。key=y_key。temper_change_T(key)。colect_dealt_T()。 show_T(displaybuffer)。 } else {P3_5=0。P3_6=1。} } }}void intr0(void) interrupt 0 using 0 //按鍵值讀取{s++。if(s==1) {s_key[0]=key_scan()。 }else {s_key[1]=key_scan()。}}Void t0(void) interrupt 1 using 0 //T0用于定時1s時間到{ secondcount++。 if(secondcount==100) { secondcount=0。 secondflag=1。 } TH0=55536/256。 TL0=55536%256。 }
點擊復(fù)制文檔內(nèi)容
物理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1