51/AVR单片机技术驿站!  <在线翻译>     便利工具    特色网址   无弹窗、无插件的绿色站点...  英才招聘   学历查询  喜欢>>收藏我站 

当前位置:首页 > 单片机源码 > 详细内容
遥控接收处理器程序
作者:佚名  发布时间:2009/11/14  阅读次数:770  字体大小: 【】 【】【

/*********************************************************************/
//                                         incept.c
//                                       遥控接收处理器
//                                       LRM 2004.10.22          
/*********************************************************************/
//使用AT89C52单片机,12MHZ晶振,
//
//#pragma src(E:\remote.asm)
#include "reg51.h"
#include "intrins.h"         //_nop_();延时函数用
//
#define char unsigned char
#define int unsigned int
#define disout P1                     //显示输出
//
sbit   remotein=P3^1;                 // 遥控输入
sbit   sin=P3^0;                           //基准正弦波相位输入
sbit   AA=P0^0;
sbit   BB=P0^1;
sbit   CC=P0^2;
sbit   DD=P0^3;
sbit   EE=P0^4;
sbit   FF=P0^5;
sbit   GG=P0^6;
sbit   HH=P0^7;
sbit   II=P2^0;
sbit   JJ=P2^1;
sbit   KK=P2^2;
sbit   LL=P2^3;
sbit   MM=P2^4;
sbit   NN=P2^5;
sbit   PP=P2^6;
sbit   QQQ=P2^7;
//
//
int i,j,m,n,k,s=1;
int keyvol;                             //值存放
//
////
/*********1毫秒延时程序**********/
delay1ms(int t)
{
for(i=0;i<t;i++)
     for(j=0;j<120;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()
{
clearmen();                   //初始化
loop();
P2=0xfe;
while(1)
  {
   while(sin==1);
   delay1ms(s);
   QQQ=0;delay1ms(1);QQQ=1;
   }
}
//
//
/************外中断遥控接收函数**************/
//外中断0
void intt0(void) interrupt 0
{
EX0=0;keyvol=0;
if(remotein==0)
   {delay1ms(1);
     if(remotein==0)
       {while(1)
         {while(remotein==0);
           keyvol++;k=0;
           while(remotein==1){delay1ms(1);k++;if(k>2){ goto OOUUTT;};}
          }
OOUUTT:  
   switch(keyvol)
   {
   case 2:{AA=~AA;break;}
         case 3:{BB=~BB;break;}
   case 4:{CC=~CC;break;}
   case 5:{DD=~DD;break;}
   case 6:{EE=~EE;break;}
   case 7:{FF=~FF;break;}
   case 8:{GG=~GG;break;}
   case 9:{HH=~HH;break;}
   case 10:{PP=~PP;break;}
   case 11:{NN=~NN;break;}
   case 12:{MM=~MM;break;}
   case 13:{LL=~LL;break;}
   case 14:{KK=~KK;break;}
   case 15:{JJ=~JJ;break;}
   case 16:{II=~II;break;}
   case 17:{if(disout==0x00){disout=0xff;}else{disout--;}loop();break;}
   default:break;
   }
  }
   }
EX0=1;
}
//
//
//*********************结束**************************//

  

我要评论
  • 匿名发表
  • [添加到收藏夹]
  • 发表评论:(匿名发表无需登录,已登录用户可直接发表。) 登录状态:未登录
最新评论
所有评论[0]
    暂无已审核评论!

网站导航 管理登陆 ┊ 免责声明 问题反馈  友链说明
本站部分内容来自网络共享资源,如有冒犯您的权利请来信告之删除或纠正!
不得对本站进行复制、盗链或镜像,转载内容须获得同意或授权;欢迎友情链接、站务合作!

    我要报警 Alexa
 mcusy_cn#126.com (请把#改成@) 交流:522422171
本站学习交流群:138..158(高级群1-)、77930286(高级群2)、61804809(群3)
Copyright© MCUSY All Rights Reserved
本站网警备案号: WZ36040002485
  ICP备案证书号:粤ICP备09034963号