红外线 波长0.76~1.5um
为将信号发送出去,经常会将二进制数据信号调制成脉冲信号,通过红外发射管发射。常用的有脉冲宽度调制(PWM)和脉冲位置调制(PPM)。
选择合适的红外接收设备(即知道红外遥控器的编码方式和载波频率),选取一体化红外接收头和指定阶码方案。
传输的数据格式:
数据格式包括引导码、用户码、数据码和数据反码,共32位。区分每位的0和1时利用脉冲的时间间隔来区别,即PPM。

以下为在ATM89C52上的执行代码。
出红外模块外,还调用了数码管模块。
此处用到了74HC138译码器和74HC245总线收发器。

#include "reg52.h"typedef unsigned int uint;
typedef unsigned char uchar;sbit LSA = P2^2;        //数码管选通端
sbit LSB = P2^3;       //数码管选通端
sbit LSC = P2^4;       //数码管选通端sbit IRIN = P3^2;       //红外数据传输端uchar IrValue[6];
uchar Time;uchar DisplayData[8];
uchar code smgduan[17] = {
0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0X76};  //0~F、Hvoid delay(uint i)
{while (i--);
}void DigDisplay()
{uchar i;for(i=0;i<3;i++){switch(i){case(0):LSA=0;LSB=0;LSC=0;break;case(1):LSA=1;LSB=0;LSC=0;break;case(2):LSA=0;LSB=1;LSC=0;break;}P0=DisplayData[2-i];delay(100);P0=0x00;}
}void IrInit()
{IT0=1;         //下降沿触发EX0=1;      //打开中断0允许EA=1;         //打开总中断IRIN=1;         //初始化端口
}void ReadIr() interrupt 0
{uchar j,k;uint err;Time = 0;delay(700);if(IRIN==0){err=1000;   //等待10mswhile((IRIN==0)&&(err>0)){delay(1);err--;}if(IRIN==1){err=500;   //等待5mswhile((IRIN==1)&&(err>0)){delay(1);err--;}for(k=0;k<4;k++){for(j=0;j<8;j++){err=60;while((IRIN==0)&&(err>0)){delay(1);err--;}err = 500;while((IRIN==1)&&(err>0)){delay(10);    //100为1msTime++;err--;if(Time>30){return;} }IrValue[k]>>=1;if(Time>=8){IrValue[k]|=0x80;}Time=0;  }}}if(IrValue[2]!=~IrValue[3]){return;}}
}void main()
{IrInit();while(1){DisplayData[0] = smgduan[IrValue[2]/16];DisplayData[1] = smgduan[IrValue[2]%16];DisplayData[2] = smgduan[16];}
}

红外模块 51单片机相关推荐

  1. 红外测距模块 51单片机_[51单片机] HC-SR04超声波测距仪

    1.HC-SR04超声波模块工作原理 (1)采用IO口触发测距,给至少10us高电平脉冲: (2)模块自动发送八个40khz方波,并自主检测是否有电波返回: (3)当有信号返回时,通过IO口输出一个高 ...

  2. 51单片机红外通信及控制LED灯(LCD1602显示)

    51单片机红外通信及控制LED灯(LCD1602显示) 大家好,又和大家见面了,离上一次DS18B20传感器的文章已经过去了一个星期了,这期我将给大家带来,基于STC89C52芯片和HS0038红外接 ...

  3. 小白系列之51单片机的入门速成法

    51单片机的入门速成法 01-经典51内核资源全览浓缩图 02-重要外设特殊功能寄存器概览 03-程序开发流程与设计要点 04-三大外设的开发与可重用代码 05-应用程序设计入门一例通 01-经典51 ...

  4. 51单片机红外电子密码锁【红外对管矩阵键盘数码管LCD1602显示模块】

    系统功能 51单片机红外电子密码锁系统主要由红外线编码电路.红外线解码开锁电路.掉电保护电路.声光提示报警电路.键盘及显示电路等组成,编写相应的程序代码并进行结果测试和仿真演示. 利用红外遥控技术和单 ...

  5. Proteus8仿真:51单片机IrLink红外发送加接受模块的使用

    51单片机IrLink红外的使用 元器件 原理图部分 代码 单片机1发送main.c 单片机2接受main.c 工程文件 注意:本篇的密码接受有问题,不够仍然可以使用,想优化可以看我最新文章:最新优化 ...

  6. 详细介绍如何从零开始制作51单片机控制的智能小车(二)———超声波模块、漫反射光电管、4路红外传感器的介绍和使用

       我会通过本系列文章,详细介绍如何从零开始用51单片机去实现智能小车的控制,在本系列的上一篇文章中介绍了如何让小车动起来,本文作为本系列的第二篇文章,主要介绍让小车实现自动避障所涉及的一些传感器, ...

  7. 51单片机红外模块学习,必会解读

    这篇文章是我学习红外模块的时候的一些心得和体会,并附带个人对于这块的理解,希望能够对大家有帮助. 首先一点的就是红外发射信号后,单片机上接受数据部分 这是常见的接收模块,负责接受发射出的调制波,还有整 ...

  8. AutoLeaders控制组——51单片机学习笔记(AD/DA、红外遥控)

    本篇内容是观看B站江科大自化协UP主的教学视频所做的笔记,对其中内容有所引用,并结合自己的单片机板块进行了更改调整. 以下笔记内容以一个视频为一个片段(内容较多,可能不适合速食,望见谅) 一些内容涉及 ...

  9. 51单片机-蓝牙遥控红外循迹小车-代码+硬件连接

    2021/04/28-更新工具的连接 ----------------------------------------- 前几天弄了个基于51芯片的蓝牙红外小车,因为是新手也没有人教,网上的资料也不够 ...

最新文章

  1. 如何实现显示超过10个字符就显示省略号?
  2. 怎么快速学好php,学习编程的快速高效方法
  3. 环境调试: RuntimeWarning: Couldn‘t find ffmpeg or avconv - defaulting to ffmpeg, but may not work warn(“
  4. hdu1728 广搜
  5. 第八届蓝桥杯决赛 图书排列
  6. Session 和 Cookie 的区别与联系
  7. 程序员的职业素养文摘
  8. Winform GDI+ 绘图
  9. 合并压缩JavaScript,开发发布两不误
  10. IT运维管理必备工具大全,看完还敢称自己是高手吗?
  11. 树莓派搭建局域网内的静态网页
  12. JAVAWeb项目 微型商城项目-------(二)数据库设计
  13. Keras实现text classification文本二分类
  14. Socket编程模型之完成端口模型
  15. MAC下面安装使用Nginx_飘云羽逸_新浪博客
  16. 外汇EA网格交易策略
  17. 台式计算机识别不了鼠标,USB无线鼠标失灵电脑检测不到无法识别怎么办
  18. npm run tsc报错 (声明文件报错||tsc.js报错)
  19. 软件项目管理作业(一)
  20. 基于Springboot的漫画之家管理系统

热门文章

  1. MySQL-电商数据建表
  2. 网站安全狗Apache 3.5版升级 新增网站后台防护功能
  3. FPGA项目(12)——基于FPGA的万年历设计
  4. c++用递归法将一个整数n转换成字符串
  5. 编辑精选 | 程序员大本营5月刊:每月遴选高质量的技术干货与资讯
  6. 21考研初试备考指导
  7. 《网络是怎样连接的》第一章第二节:向DNS服务器查询Web服务器的IP地址
  8. 阿里云备案和腾讯云备案的吐槽内容
  9. 雪城大学 计算机专业,雪城大学计算机科学专业.pdf
  10. 腾讯云服务器安装oracle19c