资源简介
红外线遥控Proteus仿真电路+发射+接收程序

代码片段和文件信息
/***************************************************************
作品:红外线发射
单片机:STC89C52RC
晶振:12M
编译环境:Keil uVision4 V9.00
***************************************************************/
//
// 发射引脚(接PNP三极管b极)
// PNP三极管e极接2Ω电阻,c极接红外发射管
#include
#include
#define uchar unsigned char
#define uint unsigned int
#define SBM 0x80 //识别码
#define m9 (65536-9000) //约9mS
#define m4_5 (65536-4500) //约4.5mS
#define m1_6 (65536-1630) //约1.65mS
#define m_65 (65536-580) //约0.65mS
#define m_56 (65536-560) //约0.56mS
#define m40 (65536-40000) //约40mS
#define m56 (65536-56000) //56mS
#define m2_25 (65536-2250) //约2.25mS
sbit IR = P3^6; //定义发射引脚(接PNP三极管基极)
sbit LED = P3^7; //发射指示灯
uchar KEY(void);
void SanZhuan(void);
void ZZ(uchar x);
void Z0(uchar temp);
void TT0(bit BTuint x);
void YS(uchar time);
/*┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
函数功能:主函数
┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈*/
void main(void)
{
TMOD = 0x01; //T0 16位工作方式
IR=1; //发射端口常态为高电平
while(1)
{
SanZhuan();
}
}
/***************************************************************
函数功能: 4×4矩阵键盘
键值
P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7
│ │ │ │ │ │ │ │ ┃
│ │ │ └────13 14 15 16 ┃
│ │ └─────────9 10 11 12 ┃
│ └──────────────5 6 7 8 ┃
└────────────────────1 2 3 4 ┃
***************************************************************/
uchar KEY(void)
{
uchar HL; //行值,列值
H=0;
L=0;
P1 = 0xf0; //将键盘端口行值设为1,列值设为0
if(P1!= 0xf0) //检测是否有按键按下,如果有则hangval必不为0x0f
{
YS(10); //按键去抖动,延时10毫秒
if(P1!=0xf0) //确实有按键按下
{
H = P1&0xf0; //按键后得到按键的行标志位,将行标志位赋值给hangval
P1 = 0x0f; //翻转键盘接口输出
L = P1&0x0f; //得到列标志位
}
return (H+L);
}
return 0;
}
/***************************************************************
函数功能:散转程序
入口参数:v
//
// 13 14 15 16
// 9 10 11 12
// 5 6 7 8
// 1 2 3 4
***************************************************************/
void SanZhuan(void)
{
uchar v;
v = KEY();
switch(v)
{
case 0x77:ZZ(0x01);v=0;break; //“ “
case 0xb7:ZZ(0x02);v=0;break; //“ “
case 0xd7:ZZ(0x03);v=0;break; //“ “
case 0xe7:ZZ(0x04);v=0;break; //“ “
case 0x7b:ZZ(0x05);v=0;break; //“ “
case 0xbb:ZZ(0x06);v=0;break; //“ “
case 0xdb:ZZ(0x07);v=0;break; //“ “
case 0xeb:ZZ(0x08);v=0;break; //“ “
case 0x7d:ZZ(0x09);v=0;break; //“ “
case 0xbd:ZZ(0x10);v=0;break; //“ “
case 0xdd:ZZ(0x11);v=0;break; //“ “
case 0xed:ZZ(0x12);v=0;break; //“ “
case 0x7e:ZZ(0x13);v=0;break; //“ “
case 0xbe:ZZ(0x14);v=0;break; //“ “
case 0xde:ZZ(0x15);v=0;break; //“ “
case 0xee:ZZ(0
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2011-07-25 20:30 红外线遥控Proteus仿真电路+发射+接收程序\
文件 147555 2011-07-22 11:30 红外线遥控Proteus仿真电路+发射+接收程序\Last Loaded 红外线发射接收_电路仿真.DBK
目录 0 2011-07-25 20:30 红外线遥控Proteus仿真电路+发射+接收程序\发射\
文件 131261 2011-06-29 22:07 红外线遥控Proteus仿真电路+发射+接收程序\发射\Last Loaded 红外线发射2.1简化.DBK
文件 144400 2011-07-22 10:26 红外线遥控Proteus仿真电路+发射+接收程序\发射\Last Loaded 红外线发射接收.DBK
文件 6376 2009-05-07 14:37 红外线遥控Proteus仿真电路+发射+接收程序\发射\STARTUP.A51
文件 14048 2011-07-22 12:24 红外线遥控Proteus仿真电路+发射+接收程序\发射\STARTUP.LST
文件 749 2011-07-22 12:24 红外线遥控Proteus仿真电路+发射+接收程序\发射\STARTUP.OBJ
文件 8484 2011-07-22 12:24 红外线遥控Proteus仿真电路+发射+接收程序\发射\红外线发射
文件 5751 2011-07-22 10:47 红外线遥控Proteus仿真电路+发射+接收程序\发射\红外线发射.c
文件 1573 2011-07-22 12:24 红外线遥控Proteus仿真电路+发射+接收程序\发射\红外线发射.hex
文件 68 2011-07-22 12:24 红外线遥控Proteus仿真电路+发射+接收程序\发射\红外线发射.lnp
文件 29343 2011-07-22 12:24 红外线遥控Proteus仿真电路+发射+接收程序\发射\红外线发射.LST
文件 11174 2011-07-22 12:24 红外线遥控Proteus仿真电路+发射+接收程序\发射\红外线发射.M51
文件 9169 2011-07-22 12:24 红外线遥控Proteus仿真电路+发射+接收程序\发射\红外线发射.OBJ
文件 393 2011-07-22 12:24 红外线遥控Proteus仿真电路+发射+接收程序\发射\红外线发射.plg
文件 56113 2011-07-22 12:24 红外线遥控Proteus仿真电路+发射+接收程序\发射\红外线发射.uvopt
文件 13424 2011-07-22 12:24 红外线遥控Proteus仿真电路+发射+接收程序\发射\红外线发射.uvproj
文件 969 2011-06-29 23:31 红外线遥控Proteus仿真电路+发射+接收程序\发射\红外线发射2.1简化.PWI
文件 56115 2011-07-22 12:24 红外线遥控Proteus仿真电路+发射+接收程序\发射\红外线发射_uvopt.bak
文件 13444 2011-06-04 12:50 红外线遥控Proteus仿真电路+发射+接收程序\发射\红外线发射_uvproj.bak
文件 1078 2011-07-22 10:14 红外线遥控Proteus仿真电路+发射+接收程序\发射\红外线发射接收.PWI
目录 0 2011-07-25 20:30 红外线遥控Proteus仿真电路+发射+接收程序\接收\
文件 13853 2011-06-04 12:13 红外线遥控Proteus仿真电路+发射+接收程序\接收\CK.LST
文件 5642 2011-06-04 12:13 红外线遥控Proteus仿真电路+发射+接收程序\接收\CK.OBJ
文件 2403 2011-07-23 16:31 红外线遥控Proteus仿真电路+发射+接收程序\接收\HT1621.c
文件 17891 2011-07-23 16:32 红外线遥控Proteus仿真电路+发射+接收程序\接收\HT1621.LST
文件 7461 2011-07-23 16:32 红外线遥控Proteus仿真电路+发射+接收程序\接收\HT1621.OBJ
文件 6376 2009-05-07 14:37 红外线遥控Proteus仿真电路+发射+接收程序\接收\STARTUP.A51
文件 14048 2011-07-23 16:32 红外线遥控Proteus仿真电路+发射+接收程序\接收\STARTUP.LST
文件 749 2011-07-23 16:32 红外线遥控Proteus仿真电路+发射+接收程序\接收\STARTUP.OBJ
............此处省略12个文件信息
相关资源
- 单片机音乐倒数定时器的设计
- STC15F
- 红外线通信技术,红外编码解码
- 6122协议和红外线的发送程序
- 51单片机通信采样proteus仿真方波转化
- 51 单片机 红外避障小车 大集合136
- 基本放大电路multisim仿真.ms14
- STC8951系列单片机中方指南
- 一个labview仿真的函数信号发生器.vi
- 60个HFSS 仿真模型库
- 基于MCS_51单片机的工业屏柜散热方案
- MCS_51单片机与8255A的接口设计
- Quartus II 15.0中仿真Altera三速以太网I
- Quartus II 15.0中仿真Altera三速以太网I
- 飞思卡尔单片机MC9S12XS12G128驱动(硬件
- 51单片机PWM程序,占空比、周期可调整
- 瑞利信道的仿真,包括信号的调制,
- 单片机和adc0809数字电压表
- PIC单片机完成的电子密码锁
- 单片机、ADC0808809设计简易数字电压表
- 51单片机多功能自行车测速仪
- 单片机做的6位时分秒数字钟
- 单片机电子时钟 闹钟 日历
- proteus仿真 AT89C51输出各种波形
- 音乐代码转换软件 单片机编程时用
- 单片机课程设计 篮球计分器
- 一种红外遥控编解码仿真
- 00
- 用51单片机实现G代码翻译
- 简易的电阻电容测量电路
评论
共有 条评论