标题:
基于51单片机的红外遥控灯 原理图及程序
[打印本页]
作者:
强国
时间:
2017-5-8 17:23
标题:
基于51单片机的红外遥控灯 原理图及程序
红外遥控灯单片机原理图:
捕获.PNG
(54.73 KB, 下载次数: 126)
下载附件
2017-5-8 17:23 上传
0.png
(49.55 KB, 下载次数: 99)
下载附件
2017-5-8 20:18 上传
单片机源程序:
//头函数
#include <reg52.h>
//宏定义
#define uint unsigned int
#define uchar unsigned char
//时间计算
#define Imax 14000 //此处为晶振为11.0592时的取值,
#define Imin 8000 //如用其它频率的晶振时,
#define Inum1 1450 //要改变相应的取值。
#define Inum2 700
#define Inum3 3000
sbit led1=P2^3;
sbit led2=P2^0;
//解码变量
unsigned char Im[4]={0x00,0x00,0x00,0x00};
//全局变量
uchar f;
unsigned long m,Tc;
unsigned char IrOK;
//主函数
void main()
{
P2=0xff;
EA=1;//开启总中断
IT1=1;//下降沿有效
EX1=1;//外部中断1开
TMOD=0x01;//定时器初始化
TH0=0;//T0赋初值
TL0=0;
TR0=0;//t0开始计时
while(1)
{
if(IrOK==1)
{
//1键
if(Im[2]==0x0c)
{
P2=0x00;
led1=0;
}
//2键
else if(Im[2]==0x18)
{
//P2=0xa2;
led1=1;
}
//3键
else if(Im[2]==0x5e)
{
P2=0xb0;
}
//4
else if(Im[2]==0x08)
{
// P2=0x08;
led2=0;
}
//5
else if(Im[2]==0x1c)
{
// P2=0x91;
led2=1;
}
//6
else if(Im[2]==0x5a)
{
P2=0x8c;
}
//7键
else if(Im[2]==0x42)
{
P2=0xf8;
}
//8
else if(Im[2]==0x52)
{
P2=0x80;
}
//9
else if(Im[2]==0x4a)
{
P2=0x90;
}
//0
else if(Im[2]==0x16)
{
P2=0xc0;
}
//关机
else if(Im[2]==0x45)
{
P2=0xff;
}
IrOK=0;
}
}
}
//外部中断解码程序_外部中断1
void intersvr1(void) interrupt 2 using 1
{
TR0=1;
Tc=TH0*256+TL0;//提取中断时间间隔时长
TH0=0;
TL0=0; //定时中断重新置零
if((Tc>Imin)&&(Tc<Imax))
{
m=0;
f=1;
return;
} //找到启始码
if(f==1)
{
if(Tc>Inum1&&Tc<Inum3)
{
Im[m/8]=Im[m/8]>>1|0x80; m++;
}
if(Tc>Inum2&&Tc<Inum1)
{
Im[m/8]=Im[m/8]>>1; m++; //取码
}
if(m==32)
{
m=0;
f=0;
if(Im[2]==~Im[3])
{
IrOK=1;
TR0=0;
}
else IrOK=0; //取码完成后判断读码是否正确
…………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码
完整源码下载:
1-程序.rar
(19.54 KB, 下载次数: 334)
2017-5-8 17:23 上传
点击文件名下载附件
下载积分: 黑币 -5
作者:
jianhua
时间:
2018-4-12 09:33
请问红外遥控接收头发送头怎么找的呢
,谢谢了
作者:
gbb
时间:
2018-4-17 20:03
程序都是全的吗?
作者:
罗程峰8200
时间:
2018-6-18 01:15
谢谢楼主,这个刚刚好需要,简直就是及时雨的存在,谢谢
作者:
denuai
时间:
2018-6-23 16:32
不错,如果把if语句改为swich,程序看起来就舒服点了
作者:
铃恋仙
时间:
2018-10-25 18:17
是发射和接收两个程序么?
作者:
yzh166
时间:
2018-10-25 21:52
内容不错,学习了
作者:
小小弹壳
时间:
2018-12-5 20:53
正好是我现在需要的,谢谢了
作者:
lll666666
时间:
2019-1-11 15:28
可以,很完整
作者:
sjxbm
时间:
2019-1-15 17:50
红外是用什么元器件啊?
作者:
llm268
时间:
2019-6-27 12:51
程序都是全的吗?
作者:
bengbai4
时间:
2019-12-25 09:31
根本没用
作者:
弹道痕
时间:
2020-5-13 22:59
谢谢分享。
作者:
风流少年叶公子
时间:
2021-10-6 20:44
P1在哪里,软件上找不到
作者:
mxdkey
时间:
2021-10-9 16:59
有原理图有代码,赞一下楼主!
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1