51单片机~红外通信工作原理
一. 红外接收原理
位定义:脉冲位置调制方式,用“0”和“1”的时间区分,在一小段脉冲中,位“0”表示0.56ms+("1"的时间)ms,而位“1”表示0.56ms+(“1”的时间)ms。由于“1”的时间不同,所以产生了“0”和“1”的区分。
但是通常会产生误差,导致无法精确到某一毫秒,此时就产生“1"与”0“之间的一个分介点,比如0.56~1.57ms,分别是位“0”和位“1”的高电平1时长,此时可采取低于1ms位“0”,高于1ms位“1”来解决误差问题。
二。红外传输代码:
#include "reg52.h"
typedef unsigned int u16;
typedef unsigned char u8;
sbit LSA=P2^2;
sbit LSB=P2^3;
sbit LSC=P2^4;
sbit IRIN=P3^2;
u8 IrValue[6]; //存储接收到的用户码,用户反码,数据码,数据反码
u8 Time; //保存高电平时间
u8 DisplayData[8];
u8 code smgduan[17]={
0X3F,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,