51 单 片 机 红 外 遥 控 格 力 空 调 程 序 #include #define uchar unsigned char #define uint unsigned int sbit key1=P3^4;//按 键 控 制 开 机 sbit key2=P3^5;//按 键 控 制 关机 sbit key3=P3^6;//按 键 控 制 温度+ sbit key4=P3^7;//按 键 控 制 温度- sbit out=P1^5;//发送 IO 口 uchar wd1[15]={0x00,0x08,0x04,0x0c,0x02, 0x0a,0x06,0x0e,0x01,0x09, 0x05,0x0d,0x03,0x0b,0x07 }; uchar wd2[15]={0x0a,0x06,0x0e,0x01,0x09, 0x05,0x0d,0x03,0x0b,0x07, 0x0f,0x00,0x08,0x04,0x0c }; uchar x=12;//开 机 28 度 /************晶振 11
0592MHz**************/ void delay(uint xms) { uint i,j; for(i=xms;i>0;i--) //i=xms 即 延 时 约 xms 毫 秒 for(j=112;j>0;j--); } void delay560us(void) //560us 延 迟 函 数 { uint j; for(j=63;j>0;j--); } void delay4500us(void) //4
5ms 延 迟 函 数 { uint j; for(j=516;j>0;j--); } void khz_2(uint num) //38KHZ 脉 冲 占空比 1:2 { for(;num>0;num--) { out=~ out; } }