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

正文內(nèi)容

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

2025-05-05 21:32本頁(yè)面

【導(dǎo)讀】附錄二程序清單........

  

【正文】 ******************************************************/ 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ù)碼管段碼表共陽(yáng) 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í)器計(jì)數(shù)值 uchar buf_count=0。//定時(shí)器計(jì)數(shù)值暫存 //uint buf_mon_code=0。//系統(tǒng)碼暫存 //uint mon_code=0。//系統(tǒng)碼值 uchar mon_code_count=0。//系統(tǒng)碼的計(jì)數(shù) uchar key_bit_count=0。//數(shù)據(jù)碼的計(jì)數(shù) uchar ir_status=0。//紅外接收所處的狀態(tài), 0表示沒(méi)有信號(hào), 1表示系統(tǒng)碼接收, 2表示數(shù)據(jù)碼接收 //紅外發(fā)送頭文件 bit op。//定義紅外發(fā)射管的亮滅 sbit P3_3=P3^3。//定義紅外發(fā)射端口 uint count2。//延時(shí)計(jì)數(shù)值 uint endcount。//延時(shí)計(jì)數(shù)值大小 uchar flag。//紅外發(fā)送高低電平標(biāo)志 char iraddr1。 char iraddr2。//紅外發(fā)射碼的十六位地址碼 //I2C存儲(chǔ)模塊函數(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() //起始信號(hào) { sda=1。 delay()。 scl=1。 delay()。 sda=0。 delay()。 // scl=0。 } void respons() //應(yīng)答信號(hào) { uchar i。 scl=1。 delay()。 while((sda==1)amp。amp。(i255)) i++。 38 scl=0。 delay()。 } void stop() //停止信號(hào) { sda=0。 delay()。 scl=1。 delay()。 sda=1。 delay()。 // scl=0。 } void writebyte(uchar date) //寫(xiě)一個(gè)字節(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) //讀一個(gè)字節(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) //任意一地址寫(xiě)入一數(shù)據(jù) { start()。 writebyte(0xae)。 respons()。 writebyte(address)。 respons()。 writebyte(date)。 respons()。 stop()。 } read_add(address) //任意地址讀一個(gè)數(shù)據(jù) { uchar date。 40 start()。 writebyte(0xae)。 respons()。 writebyte(address)。 respons()。 start()。 writebyte(0xaf)。 respons()。 date=readbyte()。 respons()。 stop()。 return date。 } //紅外指令信號(hào)的發(fā)送 void timer2() interrupt 5 { TF2=0。 //必須軟件清零 TH2=0xFF。//26us定時(shí) 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() { //初始化 來(lái)自 IR cap ir=1。//紅外接收端口置位 EA=1。//開(kāi)總中斷 TMOD=0x21。//設(shè)置定時(shí)器 0為方式 2八位自動(dòng)重裝,定時(shí)器 0為方式 1,用于紅外信號(hào)的撲捉 TH1=0xd1。 TL1=0xd1。//定時(shí) 50us TH0=0xef。 TL0=0xf0。//定時(shí)器 0設(shè)置初始值 用來(lái)數(shù)碼管掃描和溫度檢測(cè)間隔 IT1=1。//設(shè)外部中斷 0為下降沿觸發(fā) ET1=1。//允許定時(shí)器 1中斷 EX0=1。//允許外部 0中斷 ET0=1。//允許定時(shí)器 0中斷 init()。//I2c總線初始化 wp=0。//寫(xiě)保護(hù)禁止 P2=0x00。 count0=0。 //來(lái)自 IR send count2=0。 endcount=0。 op=0。 flag=0。 iraddr1=0x50。 iraddr2=0x50。 45 T2CON=0x01。//定義定時(shí)器 2為 16位的定時(shí)器 ,用于紅外發(fā)送定時(shí) TCLK=0。 RCLK=0。 TH2=0xFF。 TL2=0xE6。//38k的調(diào)制頻率,定時(shí) 26us // EA=1。//開(kāi)總中斷 ET2=1。//開(kāi)定時(shí)器 0中斷 //TR2=1。開(kāi)定時(shí)器 TR0=1。 } //主函數(shù)和紅外指令信號(hào)撲捉、溫度采集顯示部分 include include include include include include include /********************************************************************
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1