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

正文內(nèi)容

紅外遙控密碼鎖的設(shè)計與實現(xiàn)-資料下載頁

2025-06-30 08:12本頁面
  

【正文】 }void key_control(unsigned char number)//判斷按鍵{ TR1=0。 TL1=0。 TH1=0。//清零定時器1 TR1=1。 time_1=0。 delay(800)。//延時約8毫秒防抖動 switch(number) { case 0: if(key_0==0) { while(key_0==0 amp。amp。 time_1_time_delay)。 if (key_0==0 amp。amp。 time_1=_time_delay)//按鍵控制 { while(key_0==0)。//wait code_learn(number)。//學(xué)習(xí) } else { if(key_0==1 amp。amp。 time_1_time_delay/2) { out_0=~out_0。//輸出取反 } } } break。 case 1: if(key_1==0) { while(key_1==0 amp。amp。 time_1_time_delay)。 if (key_1==0 amp。amp。 time_1=_time_delay)//按鍵控制 { while(key_1==0)。//wait code_learn(number)。//學(xué)習(xí) } else { if(key_1==1 amp。amp。 time_1_time_delay/2) { out_1=~out_1。//輸出取反 } } } break。 } code_right=0。//清零紅外代碼}//***********************************AT24C02******************************void AT24C_start(void) { SDA=1。 delay(1)。 SCL=1。 delay(1)。 SDA=0。 delay(1)。 SCL=0。}void AT24C_stop(void) //停止{ SDA=0。 delay(1)。 SCL=1。 delay(1)。 SDA=1。 delay(1)。}void AT24C_ack(void) //應(yīng)答{ SCL=0。 delay(1)。 SDA=0。 delay(1)。 SCL=1。 delay(1)。 SCL=0。 delay(1)。 SDA=1。}void AT24C_unack(void) //不應(yīng)答{ SDA=1。 delay(1)。 SCL=1。 delay(1)。 SCL=0。 delay(1)。}unsigned char AT24C_cack(void) //檢查應(yīng)答{ delay(1)。 SCL=0。 delay(1)。 SDA=1。 delay(1)。 SCL=1。 delay(1)。 if(SDA==0) { SCL=0。 return(1)。 } else { SCL=0。 return(0)。 }}void AT24C_write(unsigned char temp) //寫一個字節(jié){ unsigned char i。 SCL=0。 for (i=0。i8。i++) { temp=temp1。 SDA=CY。 delay(1)。 SCL=1。 delay(1)。 SCL=0。 }}unsigned char AT24C_read(void) //讀一個字節(jié),返回數(shù)據(jù){ unsigned char i,j,temp=0。 for (i=0。i8。i++) { SDA=1。 delay(1)。 SCL=1。 delay(1)。 if(SDA==1) j=1。 else j=0。 temp=(temp1)|j。 SCL=0。 } return(temp)。}unsigned char AT24C_write_addr(unsigned char addr,unsigned long dd) //寫入指定地址的4個字節(jié){ unsigned char i,a[4]。 for(i=4。i0。i) { a[i1]=dd。 dd=dd8。 } AT24C_start()。 AT24C_write(0xa0)。//寫地址+寫 if(AT24C_cack()==0) { AT24C_stop()。//應(yīng)答不對停止 return(0)。 } AT24C_write(addr)。 if(AT24C_cack()==0) { AT24C_stop()。//應(yīng)答不對停止 return(0)。 } for(i=0。i4。i++) { AT24C_write(a[i])。 if(AT24C_cack()==0) { AT24C_stop()。 return(0)。 } } AT24C_stop()。 return(1)。}unsigned long AT24C_read_addr(unsigned char addr) //讀出指定地址的4個字節(jié){ unsigned char i。 unsigned long temp=0。 AT24C_start()。 AT24C_write(0xa0)。 if(AT24C_cack()==0) { AT24C_stop()。 return(0)。 } AT24C_write(addr)。 if(AT24C_cack()==0) { AT24C_stop()。 return(0)。 } AT24C_start()。 AT24C_write(0xa1)。 if(AT24C_cack()==0) { AT24C_stop()。 return(0)。 } for(i=0。i4。i++) { temp=(temp8)。 temp=temp+AT24C_read()。 if(i=3) { AT24C_unack()。 } else { AT24C_ack()。 } } AT24C_stop()。 return(temp)。}//**********判斷代碼子程序************unsigned char d_code_x(unsigned int t)//判斷紅外位是0或1 { if(t=0x480 amp。amp。 t=0x300) return 0。 else { if(t=0x8ee amp。amp。 t=0x700) return 1。 else return 0xff。//錯誤 } }//*********** 接收代碼中斷 ************void receive_code() interrupt 0 using 1{ unsigned int temp。 unsigned char dd_code。 if(TR0==0) { TH0=TL0=0。 TR0=1。 } else { TR0=0。 temp=TH0*256+TL0。 TH0=TL0=0。 TR0=1。 dd_code=d_code_x(temp)。 if(dd_code==0||dd_code==1) { code_t=(code_t1)+dd_code。 code_length++。 } else { if(code_length=_code_length amp。amp。 code_right==0) { code_tt=code_t。//紅外代碼正確 code_right=1。 } code_length=0。 code_t=0。 } } }//定時器1,中斷,void time1() interrupt 3 using 2{ time_1++。 if(time_1=7 amp。amp。 light_flash==1) { time_1=0。 light=~light。 time_flash++。 } }void code_control(void)//紅外遙控{ unsigned char i。 code_right=0。 for(i=0。i_control_number。i++)//讀EEPROM比較紅外遙控代碼 { d_addr=i*4。 EA=0。//關(guān)中斷 d_code=AT24C_read_addr(d_addr)。 EA=1。//開中斷 if(code_tt==d_code) { switch(i) { case 0: out_0=~out_0。break。 case 1: out_1=~out_1。break。 } } }}//*********main***********void main(void){ TMOD=0x11。 //T0定時方式1,T1定時方式1 IT0=1。 //INT0邊沿觸發(fā) EX0=1。 //外部中斷0允許 TR0=0。 //定時器0計數(shù)開關(guān) TR1=1。 //定時器1開 ET1=1。 //定時器1中斷開 EA=1。 //打開CPU總中斷請求 while(1) { if(key_0==0)//判斷按鍵是否按下 { key_control(0)。 } if(key_1==0) { key_control(1)。 } if(code_right==1) { EX0=0。 code_control()。 delay(100)。 EX0=1。 } }}
點擊復(fù)制文檔內(nèi)容
物理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1