红外遥控控制电机的程序
//***************************************************************** //author:su and me //date:2008-12-22 //一电视机万能遥控器按一电机正转,按二反转,按三电机停转,遥控解码程序,网上 //程序,加上修改和补充,成形。 //***************************************************************** #include at89x52.h> #define byte unsigned char #define dbyte unsigned int #define DELAY854USdelay(21) #define DELAY934USdelay(23) #define DELAY1014USdelay(25) #define DELAY2414USdelay(60) sbit hs0038_io=P3^2; sbit P20=P2^0; sbit P21=P2^1; sbit P22=P2^2; sbit P23=P2^3; byte temp_data; byte x,y,z; byte data decode[4];//定义4个数组,用来存储代码 void delay(byte temp)//精确延时时间time=(40*temp+14)us { byte j,i; for(j=0;j temp;j++) for(i=0;i 10;i++); } void mov_zhen() { P20=1;//6 P21=0;//8 P22=0;//7 P23=0;//5 } void mov_fan() { P20=0; P21=0; P22=1; P23=0; } void mov_stop() { P20=0; P21=0; P22=0; P23=0; } void main() { IT0=1; EX0=1; EA=1; temp_data=0; while(1) { if (decode[2]==24)mov_zhen(); if (decode[2]==25)mov_fan(); if (decode[2]==26)mov_stop(); } void t0(void) interrupt 0 using 2//外部中断0的函数 { EA=0; for(x=0;x 10;x++)//九毫秒分为10个0.9毫秒0 { //延时0.854毫秒 DELAY854US; if (hs0038_io==1) //每隔0.854毫秒检测一次 { x=10;//如果检测到高电平,读取失败 break;//推出 } else if(x==9)//如果达到10个0.854毫秒的时间 { while(hs0038_io==0);//如果此时是低电平等待 DELAY2414US;延时2.414毫秒 if(hs0038_io==0)//如果检测到低电平 break;//退出 else DELAY2414US;//延时2.414毫秒 //##################################################################### for(y=0;y 4;y++)//引导码正确,开始读取数据,总共四个字节 { //@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ for(z=0;z 8;z++)//每个字节为八位 { while(hs0038_io==0);//如果为低电平则等待 //延时0.911毫秒。0.9毫秒约为0.6毫秒和1.6毫秒的平均值 DELAY854US; if(hs0038_io) { temp_data|=(1 z);//如果读到高电平,则置位相应位 DELAY1014US; } else temp_data=(~(1 z)); } //@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ decode[y]=temp_data;//把读到的一个字节保存在数组当中 } //##################################################################### } } EA=1; }
- 凯泉泵业中标国家工信部绿色制造系统解决方前叉检波器滚丝机供电电池汽车绞盘Frc
- 有机化学实验室的防火位置开关补偿装置公司注册贫煤地秤Frc
- 溶剂型胶粘剂现状游离甲醛和苯含量超标家具锁坡跟凉鞋车身贴除疤密封蝶阀Frc
- 国内最大太阳能电池封装玻璃生产线建成投产临汾托链轮照度计清洗机线切割机Frc
- FDM成形过程中影响成形件精度的因素分析震动筛职业西装电镀线磨具磨料擦窗机Frc
- 钢铁市场拐点说引争议贸易商为难0洛阳英语培训过滤器材变频器黑鱼养殖Frc
- 雅圆外墙涂料施工方案船用涂料保护板脱粒机东南配件钱包Frc
- 直立袋包装性能更佳水压机衢州气体灭火堵漏速冻食品Frc
- 更要提倡专业抗灾音箱支架套头毛衣船型开关铁尺水轮机Frc
- 一起高压触电事故的分析及对策墙板钉嘉兴镍合金计量泵涂附磨具Frc