版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、51 单片机红外遥控格力空调程序 #include #define uchar unsigned char#define uint unsigned int sbit key仁P3八4;/ 按键控制开机sbit key2=P3A5;/ 按键控制关机sbit key3=P3A6;/ 按键控制温度+sbit key4=P3A7;/ 按键控制温度 -sbit out=P1A5;/ 发送 IO 口uchar wd115=0x00,0x08,0x04,0x0c,0x02,0x0a,0x06,0x0e,0x01,0x09,0x05,0x0d,0x03,0x0b,0x07 ;uchar wd215=0x0a
2、,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;i0;i-)/i=xms 即延时约 xms 毫秒for(j=112;j0;j-); void delay560us(void) /560us 延迟函数uint j; for(j=63;j0;j-);void delay4500us(void) /4.5ms 延迟函数uint j;for(j=516;j0
3、;j-);void khz_2(uint num)/38KHZ 脉冲 占空比 1:2for(;num0;num-)out=out;void send0_a(void) / 发送 0khz_2(42) ;/khz_3(21) ;out=1;delay560us();void send1_a(void) / 发送 1khz_2(42) ;out=1;delay560us();delay560us();delay560us();void leadcode_a(void) / 发送引导码khz_2(690) ;out=1; delay4500us();关机/* * void close( uchar
4、a,uchar b,uchar c,uchar d) uint i;leadcode_a();send1_a();for(i=0;i7;i+)send0_a();if(a)send1_a();elsesend0_a();if(b)send1_a();elsesend0_a();if(c)send1_a();elsesend0_a();if(d)send1_a(); elsesend0_a();send0_a();send0_a();send0_a();send0_a();for(i=0;i5;i+)send0_a();send1_a();for(i=0;i6;i+)send0_a();send
5、1_a();send0_a();send1_a();send0_a();send0_a();send1_a();send0_a();khz_2(42) ;out=1;delay(20);void close1(uchar e,uchar f,uchar g,uchar h )uchar i;for(i=0;i13;i+)send0_a();send1_a();send0_a();send0_a();for(i=0;i12;i+)send0_a();if(e)send1_a();elsesend0_a();if(f)send1_a();elsesend0_a();if(g)send1_a();e
6、lsesend0_a();if(h)send0_a();elsesend1_a();khz_2(42) ;out=1;delay(1000);/*void open(uchar a,uchar b,uchar c,uchar d ) uint i; leadcode_a(); send1_a(); send0_a(); send0_a(); send1_a();for(i=0;i4;i+)send0_a();if(a)send1_a();elsesend0_a();if(b)send1_a();elsesend0_a();if(c)send1_a();elsesend0_a();if(d)se
7、nd1_a();elsesend0_a();send0_a();send0_a();send0_a();send0_a() ; for(i=0;i5;i+) send0_a(); send1_a(); for(i=0;i6;i+) send0_a();send1_a();send0_a();send1_a();send0_a();send0_a();send1_a();send0_a();khz_2(42) ;out=1;delay(20);void open1(uchar e,uchar f,uchar g,uchar h) uchar i;for(i=0;i13;i+) send0_a()
8、;send1_a();send0_a();send0_a(); for(i=0;i12;i+) send0_a();if(e)send1_a();else send0_a();if(f)send1_a();else send0_a();if(g)send1_a();else send0_a();if(h)send1_a();elsesend0_a();khz_2(42) ;out=1;delay(1000);void keyscan()uchar a,b,c,d,e,f,g,h;if(key1=0)delay(10);if(key1=0)while(!key1);if(wd1x & 0x08)
9、a=1;elsea=0;if(wd1x & 0x04)b=1;elseb=0;if(wd1x & 0x02)c=1;elsec=0;if(wd1x & 0x01)d=1;elsed=0;if(wd2x & 0x08)e=1;elsee=0;if(wd2x & 0x04)f=1;elsef=0;if(wd2x & 0x02)g=1; elseg=0;if(wd2x & 0x01)h=1;elseh=0;open(a,b,c,d); open1(e,f,g,h);if(key2=0)delay(10); if(key2=0) while(!key2);if(wd1x & 0x08) a=1;els
10、ea=0;if(wd1x & 0x04)b=1;elseb=0;if(wd1x & 0x02)c=1;elsec=0;if(wd1x & 0x01)d=1;elsed=0;if(wd2x & 0x08) e=1;elsee=0;if(wd2x & 0x04)f=1;elsef=0; if(wd2x & 0x02)g=1;elseg=0;if(wd2x & 0x01)h=1;elseh=0;close(a,b,c,d); close1(e,f,g,h);if(key3=0)delay(10);if(key3=0)while(!key1); x+;if(wd1x & 0x08)a=1;else a
11、=0;if(wd1x & 0x04)b=1;elseb=0;if(wd1x & 0x02)c=1;elsec=0;if(wd1x & 0x01)d=1;elsed=0;if(wd2x & 0x08)e=1;elsee=0;if(wd2x & 0x04)f=1;elsef=0; if(wd2x & 0x02)g=1;elseg=0;if(wd2x & 0x01)h=1;elseh=0;open(a,b,c,d);open1(e,f,g,h);if(key4=0)delay(10);if(key4=0)while(!key1);x-;if(wd1x & 0x08)a=1;elsea=0;if(wd1x & 0x04)b=1;elseb=0;if(wd1x & 0x02)c=1;elsec=0;if(wd1x & 0x01)d=1;elsed=0;if(wd2x & 0x08)e=1;elsee=0;if(wd2x & 0x
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论