首先谢谢大家对我的帮助~~真的谢谢你们~~经过“ju748”朋友的指导,学到了一些东西~~和大家分享一下~~
1.用到的红外接收头的型号是HS0038B;发射头的型号是IR333——A;
2.关于HS0038B 其载波的频率应该在38K左右;脉冲时间应为10个周期或更长;burst我理解为边沿的触发方式,故在每一个比1.8MS长的触发周期,数据流就需要一段相应的差距时间;这段差距时间至少应是边沿触发时间的四倍以上;以每秒高达800的频率接受脉冲;持续的信号在38K或其他任何频率;
3.关于载波 在红外对管中使用载波可以降低自然界对红外发射管的干扰,用“ju748”的话来说就是你在发射端输出一个38K的频率,自然界不会有一个专门的38K的干扰频率,这样就提高了红外对管得有效信号的范围在一定的范围内代替了超声波,降低了成本。
4.遇到的问题 在载波的时候一般都需要检波,我还不太清楚在这样的情况下需不需要检波,希望大家给一些意见~~~
5.测试程序
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit Led=P0^0;
void init();
void main()
{
init();
while(1);
}
void init()
{
EA=1;
EX0=1;
IT0=1;//电平的触发方式;
TCON=0x01; //定时器0来做定时;
ET0=1;
TR0=1;
TH0=(65536-26)/256;
TL0=(65536-26)%256;
}
void INT_1() interrupt 0
{
Led=~Led;//led取反;
}
void T_0() interrupt 1
{
TH0=(65536-26)/256;
TL0=(65536-26)%256;
}
希望大家能指出我的问题~~谢谢大家~~~
点击此处下载
ourdev_533786.rar(文件大小:314K) (原文件名:红外.rar)
你的接收头是两PIN还是3PIN的?
两PIN的是红外二极管或红外电阻,一般只做到半米内接收.
3PIN的是带运放的红外接收头,已经虑掉载波了,可以接收十来米信号.电视上是用这种.
用运放接收头已经滤掉载波你还能检测载波那你就牛了!
一周热门 更多>