遥控器原理小知识

遥控器原理小知识(附加程序)

1.红外遥控简介

主要器件:红外遥控器、红外接收头。

2.红外遥控器

Ht6221标准红外线解码遥控器,采用NEC的UPD6121G编码标准(如图1),由38K载波调制的红外编码。

图1 UPD6121G编码标准

Ht6221标准红外线解码遥控器发射的一帧数据如下图2,每帧数据由引导码开始,随后共32位数据,分别位16位用户编码,8位键数据码和8位键数据反码。

图2 Ht6221标准红外线解码遥控器发射的一帧数据

3.红外接收头

红外一体化接收头VS1838B,这种一体化接收头内部集成了红外接收电路:内部电路包括红外监测二极管,放大器,限副器,带通滤波器,积分电路,比较器等。实现红外遥控信号的拾取、放大和解调,检波输出信号可以直接由微处理器解码,红外一体化接收头VS1838B解调后的波形如图3。

图3 红外一体化接收头VS1838B解调前后的波形图

4.红外遥控信号解码程序代码分析

void delay_hongwai(unsigned char x)    //红外延时x*0.14MS

{

 unsigned char i;

 while(x--)

  {

   for (i = 0; i<13; i++) {}

  }

}

void IR_IN() interrupt 0 using 0 //INT0外部中断0

{

  unsigned char j,k,N=0;

     EX0 = 0;   //关闭外部中断0中断

 delay_hongwai(15);//延时2.1ms,检测高电平出现

 if (IRIN==1)               //确认IR信号出现

     { EX0 =1;//打开外部中断0中断

   return;

  }

  while (!IRIN)            //等IR变为高电平,跳过9ms的前导低电平信号。

    {delay_hongwai(1);}

for (j=0;j<4;j++)         //收集四组数据

 {

  for (k=0;k<8;k++)        //每组数据有8位

  {

   while (IRIN)            //等 IR 变为低电平,跳过4.5ms的前导高电平信号。

     {delay_hongwai(1);}

    while (!IRIN)          //等 IR 变为高电平

     {delay_hongwai(1);}

     while (IRIN)           //计算IR高电平时长

      {

    delay_hongwai(1);

    N++;           

    if (N>=30)

 { EX0=1;

 return;}                  //0.14ms计数过长自动离开。

      }                        //高电平计数完毕                

     IRCOM[j]=IRCOM[j] >> 1;                  //数据最高位补“0”

     if (N>=8) {IRCOM[j] = IRCOM[j] | 0x80;}  //数据最高位补“1”

     N=0;

  }

 }

   if (IRCOM[2]!=~IRCOM[3])

   { EX0=1;

     return; }

   IRCOM[5]=IRCOM[2] & 0x0F;     //取键码的低四位

   IRCOM[6]=IRCOM[2] >> 4;       //右移4次,高四位变为低四位

  EX0 = 1;

}

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 前言:红外遥控是利用红外线进行传输数据,红外线又称红外光波,在电磁波谱中,光波的波长范围为0.01um1000um...
    only_cherry阅读 5,371评论 3 2
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,868评论 18 139
  • 我站在过街天桥发呆。桥下车水马龙,而我的头像是宿醉般阵痛。 突然有人从后面拍我的肩膀,我转过身,是一个陌生女孩,短...
    发泡鲸阅读 530评论 0 3
  • 大三了,还是写篇文章纪念下我逝去的大学生活吧!不然,大学岂不是没有了痕迹。 大学是个什么鬼?用一句装逼的话说,大学...
    退无止步阅读 290评论 9 4
  • 一直以来知道,奥特曼打大怪兽 的故事,很记得一张图,奥特曼对小怪兽说就吃这一个,吃多了长胖了我就不能把你丢出去了。...
    小雨辰阅读 341评论 0 2