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

正文內(nèi)容

基于單片機的智能空調(diào)節(jié)電控制器c語言編程-資料下載頁

2025-05-05 21:32本頁面

【導讀】附錄二程序清單........

  

【正文】 ******************************************************/ uchar temp。 36 uchar flag_get,count0,num0,minute,second。 uchar code tab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}。//7段數(shù)碼管段碼表共陽 uchar str[3]。 //紅外撲捉頭文件 sbit ir=P3^2。//定義紅外接 收端口 bit learn_heat=0。 bit learn_cool=0。 bit learn_end=0。 uchar num。 uchar key_code=0。//定義遙控鍵值 uchar buf_key_code=0。//定義遙控器鍵值暫存 uint count=0。//定時器計數(shù)值 uchar buf_count=0。//定時器計數(shù)值暫存 //uint buf_mon_code=0。//系統(tǒng)碼暫存 //uint mon_code=0。//系統(tǒng)碼值 uchar mon_code_count=0。//系統(tǒng)碼的計數(shù) uchar key_bit_count=0。//數(shù)據(jù)碼的計數(shù) uchar ir_status=0。//紅外接收所處的狀態(tài), 0表示沒有信號, 1表示系統(tǒng)碼接收, 2表示數(shù)據(jù)碼接收 //紅外發(fā)送頭文件 bit op。//定義紅外發(fā)射管的亮滅 sbit P3_3=P3^3。//定義紅外發(fā)射端口 uint count2。//延時計數(shù)值 uint endcount。//延時計數(shù)值大小 uchar flag。//紅外發(fā)送高低電平標志 char iraddr1。 char iraddr2。//紅外發(fā)射碼的十六位地址碼 //I2C存儲模塊函數(shù) void delay() 37 {。} /*void delay1ms(uchar z) { uchar x,y。 for(x=0。x=z。x++) for(y=0。y=113。y++)。 } */ void init() //總線初始化 { scl=1。 delay()。 sda=1。 delay()。 } void start() //起始信號 { sda=1。 delay()。 scl=1。 delay()。 sda=0。 delay()。 // scl=0。 } void respons() //應答信號 { uchar i。 scl=1。 delay()。 while((sda==1)amp。amp。(i255)) i++。 38 scl=0。 delay()。 } void stop() //停止信號 { sda=0。 delay()。 scl=1。 delay()。 sda=1。 delay()。 // scl=0。 } void writebyte(uchar date) //寫一個字節(jié) { uchar i,temp。 temp=date。 delay()。 for(i=0。i8。i++) { temp=temp1。 scl=0。 delay()。 sda=CY。 scl=1。 delay()。 } scl=0。 delay()。 sda=1。 delay()。 } 39 uchar readbyte(void) //讀一個字節(jié) { uchar i,k。 scl=0。 delay()。 sda=1。 for(i=0。i8。i++) { scl=1。 delay()。 k=(k1)|sda。 delay()。 scl=0。 delay()。 } return(k)。 } void write_add(uchar address,uchar date) //任意一地址寫入一數(shù)據(jù) { start()。 writebyte(0xae)。 respons()。 writebyte(address)。 respons()。 writebyte(date)。 respons()。 stop()。 } read_add(address) //任意地址讀一個數(shù)據(jù) { uchar date。 40 start()。 writebyte(0xae)。 respons()。 writebyte(address)。 respons()。 start()。 writebyte(0xaf)。 respons()。 date=readbyte()。 respons()。 stop()。 return date。 } //紅外指令信號的發(fā)送 void timer2() interrupt 5 { TF2=0。 //必須軟件清零 TH2=0xFF。//26us定時 TL2=0xE6。 count2++。 if(flag==1) { op=~op。 } else { op=0。 } P3_3=op。 } send_irdata(char p_irdata)//紅外數(shù)據(jù)發(fā)射函數(shù) { int i。 41 char irdata=p_irdata。 TR2=1。 endcount=173。//發(fā)送 count2=0。 flag=1。 do{}while(count2endcount)。 endcount=173。//發(fā)送 count2=0。 flag=0。 do{}while(count2endcount)。 irdata=iraddr1。//發(fā)送十六位地址碼的前八位 for(i=0。i8。i++) { endcount=10。//發(fā)送 flag=1。 count2=0。 do{}while(count2endcount)。 if(irdata(irdata/2)*2)//判斷地址碼的最后一位是 0還是 1 { endcount=40。 } else { endcount=15。 } flag=0。 count2=0。 do{}while(count2endcount)。 irdata=irdata1。 } 42 irdata=iraddr2。//發(fā)送十六位地址碼的后八位 for(i=0。i8。i++) { endcount=10。 flag=1。 count2=0。 do{}while(count2endcount)。 if(irdata(irdata/2)*2) { endcount=40。 } else { endcount=15。 } flag=0。 count2=0。 do{}while(count2endcount)。 irdata=irdata1。 } irdata=p_irdata。//發(fā)送八位數(shù)據(jù)碼 for(i=0。i8。i++) { endcount=10。 flag=1。 count2=0。 do{}while(count2endcount)。 if(irdata(irdata/2)*2) { 43 endcount=40。 } else { endcount=15。 } flag=0。 count2=0。 do{}while(count2endcount)。 irdata=irdata1。 } irdata=~irdata。//發(fā)送八位數(shù)據(jù)碼反碼 for(i=0。i8。i++) { endcount=10。 flag=1。 count2=0。 do{}while(count2endcount)。 if(irdata(irdata/2)*2) { endcount=40。 } else { endcount=15。 } flag=0。 count2=0。 do{}while(count2endcount)。 irdata=irdata1。 } 44 endcount=10。 flag=1。 count2=0。 do{}while(count2endcount)。 flag=0。 } //初始化函數(shù) void initial() { //初始化 來自 IR cap ir=1。//紅外接收端口置位 EA=1。//開總中斷 TMOD=0x21。//設置定時器 0為方式 2八位自動重裝,定時器 0為方式 1,用于紅外信號的撲捉 TH1=0xd1。 TL1=0xd1。//定時 50us TH0=0xef。 TL0=0xf0。//定時器 0設置初始值 用來數(shù)碼管掃描和溫度檢測間隔 IT1=1。//設外部中斷 0為下降沿觸發(fā) ET1=1。//允許定時器 1中斷 EX0=1。//允許外部 0中斷 ET0=1。//允許定時器 0中斷 init()。//I2c總線初始化 wp=0。//寫保護禁止 P2=0x00。 count0=0。 //來自 IR send count2=0。 endcount=0。 op=0。 flag=0。 iraddr1=0x50。 iraddr2=0x50。 45 T2CON=0x01。//定義定時器 2為 16位的定時器 ,用于紅外發(fā)送定時 TCLK=0。 RCLK=0。 TH2=0xFF。 TL2=0xE6。//38k的調(diào)制頻率,定時 26us // EA=1。//開總中斷 ET2=1。//開定時器 0中斷 //TR2=1。開定時器 TR0=1。 } //主函數(shù)和紅外指令信號撲捉、溫度采集顯示部分 include include include include include include include /********************************************************************
點擊復制文檔內(nèi)容
研究報告相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1