资源简介
本资源基于51单片机开发的一个红外遥控的protuse仿真+keil程序。能使好用,一个是发送方一个是接受方。
代码片段和文件信息
#include
static bit OP; //红外发射管的亮灭
static unsigned int count; //延时计数器
static unsigned int endcount; //终止延时计数
static unsigned char Flag; //红外发送标志
char iraddr1; //十六位地址的第一个字节
char iraddr2; //十六位地址的第二个字节
void SendIRdata(char p_irdata);
void delay();
char getkey()
{
P1=0xfe;P3_6=P3_7=1;P3_3=1;
if(!P1_4)return 1; //ON
if(!P1_5)return 2; //7
if(!P1_6)return 3; //8
if(!P1_7)return 4; //9
if(!P3_6)return 5; //X
if(!P3_7)return 6; //÷
P1=0xfd;
if(!P1_4)return 11; //+-
if(!P1_5)return 12; //4
if(!P1_6)return 13; //5
if(!P1_7)return 14; //6
if(!P3_6)return 15; //-
if(!P3_7)return 16; //MRC
P1=0xfb;
if(!P1_4)return 21; //%
if(!P1_5)return 22; //1
if(!P1_6)return 23; //2
if(!P1_7)return 24; //3
if(!P3_6)return 25; //+
if(!P3_7)return 26; //M-
P1=0xf7;
if(!P1_4)return 31; //□
if(!P1_5)return 32; //0
if(!P1_6)return 33; //.
if(!P1_7)return 34; //=
if(!P3_6)return 35; //+
if(!P3_7)return 36; //M+
P1=0xfF;P3_3=0;
if(!P1_4)return 41; //
if(!P1_5)return 42; //
if(!P1_6)return 43; //
if(!P1_7)return 44; //
if(!P3_6)return 45; //
if(!P3_7)return 46; //
return 0;
}
void main(void)
{
char key;
count = 0;
Flag = 0;
OP = 0;
P3_4 = 1;
EA = 1; //允许CPU中断
TMOD = 0x11; //设定时器0和1为16位模式1
ET0 = 1; //定时器0中断允许
P1=0xff;
TH0 = 0xFF;
TL0 = 0xE6; //设定时值0为38K 也就是每隔26us中断一次
TR0 = 1;//开始计数
iraddr1=0xff;
iraddr2=0xff;
do{
key=getkey();
if(key==1)SendIRdata(0x12);//set
if(key==11)SendIRdata(0x0b);//exit
if(key==25||key==35)SendIRdata(0x1a);//+
if(key==15)SendIRdata(0x1e);//-
if(key==6)SendIRdata(0x0e);//↑ ÷
if(key==16)SendIRdata(0x1d);//↓ MRC
if(key==26)SendIRdata(0x1f);//← M-
if(key==36)SendIRdata(0x1b);//→ M+
if(key==32)SendIRdata(0x00);//0
if(key==22)SendIRdata(0x01);//1
if(key==23)SendIRdata(0x02);//2
if(key==24)SendIRdata(0x03);//3
if(key==12)SendIRdata(0x04);//4
if(key==13)SendIRdata(0x05);//5
if(key==14)SendIRdata(0x06);//6
if(key==2)SendIRdata(0x07);//7
if(key==3)SendIRdata(0x08);//8
if(key==4)SendIRdata(0x09);//9
if(key==21)SendIRdata(0x2A);//%
if(key==5)SendIRdata(0x2B);//X
if(key==33)SendIRdata(0x2C);//.
if(key==34)SendIRdata(0x2D);//=
if(key==31)SendIRdata(0x2E);//□
if(key==41)SendIRdata(0x2F);//
if(key==42)SendIRdata(0x30);//
if(key==43)SendIRdata(0x31);//
if(key==44)SendIRdata(0x32);//
if(key==45)SendIRdata(0x33);//
if(key==46)SendIRdata(0x34);//
}while(1);
}
//定时器0中断处理
void timeint(void) interrupt 1
{
TH0=0xFF;
TL0=0xE6; //设定时值为38K 也就是每隔26us中断一次
count++;
}
void SendIRdata(char p_irdata)
{
int i;
char irdata=p_irdata;
//发送9ms的起始码
endcount=223;
Flag=1;
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2013-04-21 22:00 0021、红外遥控模拟\
文件 138100 2008-01-15 20:28 0021、红外遥控模拟\Last Loaded 红外遥控的仿真.DBK
文件 10446 2008-01-15 19:44 0021、红外遥控模拟\main.LST
文件 12456 2008-01-15 19:44 0021、红外遥控模拟\main.OBJ
文件 5196 2008-01-15 19:44 0021、红外遥控模拟\main.c
文件 10482 2007-11-01 21:52 0021、红外遥控模拟\红外遥控
文件 12468 2007-11-01 21:52 0021、红外遥控模拟\红外遥控.M51
文件 2155 2008-01-15 12:22 0021、红外遥控模拟\红外遥控.Uv2.bak
文件 44 2007-11-01 21:52 0021、红外遥控模拟\红外遥控.lnp
文件 1399 2008-01-15 20:15 0021、红外遥控模拟\红外遥控.opt.bak
文件 166 2008-01-15 12:19 0021、红外遥控模拟\红外遥控.plg
文件 74641 2013-04-06 10:17 0021、红外遥控模拟\红外遥控.uvopt
文件 13246 2013-04-06 10:17 0021、红外遥控模拟\红外遥控.uvproj
文件 1401 2008-01-15 20:07 0021、红外遥控模拟\红外遥控_Opt.Bak
文件 2159 2007-10-26 16:22 0021、红外遥控模拟\红外遥控_Uv2.Bak
文件 138074 2008-01-15 20:36 0021、红外遥控模拟\红外遥控的仿真.DSN
文件 3463 2011-11-29 22:03 0021、红外遥控模拟\红外遥控的仿真.PWI
文件 22067 2008-01-15 20:26 0021、红外遥控模拟\解码
文件 10327 2008-01-15 20:26 0021、红外遥控模拟\解码.LST
文件 20166 2008-01-15 20:26 0021、红外遥控模拟\解码.M51
文件 14237 2008-01-15 20:26 0021、红外遥控模拟\解码.OBJ
文件 1696 2011-11-29 23:16 0021、红外遥控模拟\解码.Opt
文件 2191 2011-11-29 23:16 0021、红外遥控模拟\解码.Uv2
文件 3777 2008-01-15 20:26 0021、红外遥控模拟\解码.c
文件 7199 2008-01-15 20:26 0021、红外遥控模拟\解码.hex
文件 41 2008-01-15 20:26 0021、红外遥控模拟\解码.lnp
文件 178 2011-11-29 21:59 0021、红外遥控模拟\解码.plg
文件 7219 2008-01-15 20:26 0021、红外遥控模拟\解码LCD.LST
文件 10106 2008-01-15 20:26 0021、红外遥控模拟\解码LCD.OBJ
文件 3609 2008-01-15 13:55 0021、红外遥控模拟\解码LCD.c
文件 1700 2008-01-15 20:28 0021、红外遥控模拟\解码_Opt.Bak
............此处省略6个文件信息
- 上一篇:专接本微机原理视频网址
- 下一篇:F35.e
相关资源
- 基于单片机的红外遥控电子密码锁.
- arduino通过红外遥控结合蜂鸣器的定时
- STM32 tim3的输入捕获功能解码 电视红外
- 暴包括51,stm32,LINUXs三种和美的空调
- 智能学习型红外遥控器设计
- STM32的红外遥控程序,亲测能用
- 基于DS1302+AT89C2051制作的红外遥控LED电
- 基于51单片机的红外遥控转发器程序
- 51单片机红外遥控时钟
- msp430g2553红外遥控小程序
- 51单片机红外遥控器程序
- STM8S003红外遥控支持连发码
- 基于单片机的红外遥控开关的设计
- 0011、采用实时时钟芯片DS1302+AT89C205
- Proteus仿真红外遥控
- protues仿真模拟红外遥控器
- 红外遥控协议中文版总结
- 基于红外遥控的arduino遥控小车
- 万能红外遥控解码器
- 红外遥控资料 包括原理图和程序
- 20基于红外遥控控制的智能收纳器设计
- STM8 RGB灯控制源代码(支持红外遥控)
- 基于51单片机的红外遥控控制小车程序
- 基于51单片机的红外遥控电动机转速控
- 红外遥控控制电机正反转
- 基于51单片机的红外遥控计算器程序(
- 红外51遥控仿真
- 红外遥控报警器课程设计报告
- 多种红外遥控协议 NEC SONY PHI philips 等
- STM32红外遥控 控制步进电机正反转实
评论
共有 条评论