• mybook
    了解作者
  • C/C++
    开发工具
  • 55KB
    文件大小
  • rar
    文件格式
  • 0
    收藏次数
  • 1 积分
    下载积分
  • 8
    下载次数
  • 2010-09-15 14:44
    上传日期
AT89s51单片机上开发红外线遥控源码,提供给有需要开发红外线遥控应用的朋友
AT89s51control.rar
  • 红外线通信
  • 备份红外线通信
  • send.M51
    7.5KB
  • send.hex
    546B
  • send.Uv2
    2.1KB
  • incept.OBJ
    6.3KB
  • send.LST
    3.6KB
  • incept.Uv2
    2.1KB
  • STARTUP.A51
    5KB
  • incept.lnp
    60B
  • STARTUP.OBJ
    749B
  • incept.c
    2.4KB
  • send.Opt
    1KB
  • send.OBJ
    4.1KB
  • incept.Opt
    1KB
  • send.plg
    173B
  • send
    4.1KB
  • incept.M51
    8.4KB
  • incept.hex
    1.7KB
  • STARTUP.LST
    11.4KB
  • incept.LST
    5.4KB
  • send.lnp
    56B
  • incept.plg
    581B
  • incept
    6KB
  • send.c
    1.5KB
  • send.M51
    7.2KB
  • send.hex
    690B
  • send.Uv2
    2.1KB
  • incept.OBJ
    7.5KB
  • incept_Opt.Bak
    1.2KB
  • send.LST
    5.3KB
  • incept.Uv2
    2.1KB
  • STARTUP.A51
    5KB
  • incept.lnp
    60B
  • STARTUP.OBJ
    706B
  • incept.c
    3.4KB
  • send.Opt
    1.1KB
  • send.OBJ
    5.1KB
  • incept.Opt
    1.1KB
  • incept_Uv2.Bak
    1.7KB
  • send.plg
    158B
  • send
    5.1KB
  • incept.M51
    9KB
  • incept.hex
    1.5KB
  • STARTUP.LST
    11.4KB
  • incept.LST
    8.1KB
  • send.lnp
    56B
  • incept.plg
    180B
  • send.c
    2.3KB
内容介绍
/*********************************************************************/ // incept.c // 遥控接收处理器 // LRM 2004.10.22 /*********************************************************************/ //使用AT89C52单片机,12MHZ晶振, // //#pragma src(E:\remote.asm) #include "reg51.h" #include "intrins.h" //_nop_();延时函数用 // #define uchar unsigned char #define uint unsigned int #define qudong P1 #define ShuJu P2 #define WeiXuan P0 #define qianwei 0xf7 #define baiwei 0xfb #define shiwei 0xfd #define gewei 0xfe #define QianJin 0x0a #define HouTui 0x05 #define YouZhuan 0x0b #define ZuoZhuan 0x0e #define DingZuo 0x06 #define DingYou 0x09 #define ShaChe 0x0F // sbit remotein=P3^1; // 遥控输入 sbit sin=P3^0; //基准正弦波相位输入 sbit AA=P0^0; sbit BB=P0^1; sbit fengming=P3^5; uchar code tab[]= {0x7b,0x22,0x57,0x37,0x2e,0x3D,0x7D,0x23,0x7F,0x3f,0x4f,0x4d}; /*后两个为P,F*/ // uchar a=0,b=0,c=0,d=0,i,j,k,m=0,e=0,f,g; uchar keynum; //值存放 // //// /*********1毫秒延时程序**********/ delay1ms(uchar t) { for(i=0;i<t;i++) for(j=0;j<120;j++) ; } void delay(uchar k) {uchar idata j; uchar i; for(i=0;i<k;i++) for(j=0;j<255;j++); } // /***********初始化函数**********/ clearmen() { EX0=1; EA=1; //开总中断 } // // // /**********函数************/ /*loop() { switch(disout&0x07) { case 0:{s=1;break;} case 1:{s=2;break;} case 2:{s=3;break;} case 3:{s=4;break;} case 4:{s=5;break;} case 5:{s=6;break;} case 6:{s=7;break;} case 7:{s=8;break;} default:break;} } */ // // /***********主函数***************/ main() {fengming=0; delay(255); delay(255); delay(255); fengming=1; clearmen(); //初始化 P2=0xfe; while(1) { g=0; WeiXuan=gewei; ShuJu=tab[a]; delay(5); WeiXuan=shiwei; ShuJu=tab[b]; delay(5); WeiXuan=baiwei; ShuJu=tab[c]; delay(5); WeiXuan=qianwei; ShuJu=tab[d]; delay(5); if(g==1) {fengming=0; delay(200); fengming=1; } } } // // /************外中断遥控接收函数**************/ //外中断0 void intt0(void) interrupt 0 {EX0=0;keynum=0; if(remotein==0) {delay1ms(1); if(remotein==0) {while(1) {while(remotein==0); keynum++;k=0; while(remotein==1){delay1ms(1);k++;if(k>2){m++; goto OOUUTT;};} } OOUUTT: if(m<4) switch(m) { case 1:e=keynum;break; //case 2:f=keynum;break; //case 3:g=keynum;break; default:break; } else {m=0; //if(e==keynum&&f==keynum) if(e==keynum) { g=1; switch(keynum) { case 1:{a++;if(a==9) a=0;qudong=YouZhuan;break;} case 2:{b++;if(b==9) b=0;qudong=QianJin;break;} case 3:{c++;if(c==9) c=0;qudong=ZuoZhuan;break;} case 4:{d++;if(d==9) d=0;qudong=HouTui;break;} case 5:{qudong=ShaChe;break;} default:break; } } } } } EX0=1; } // // //*********************结束**************************//
评论
    相关推荐