下载此文档

红外遥控实例.doc


文档分类:通信/电子 | 页数:约6页 举报非法文档有奖
1/6
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/6 下载此文档
文档列表 文档介绍
#include<> //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义
sbit IR=P3^2; //红外接口标志
sbit dianji=P1^7;
sbit p1_0=P1^0;
s;//定时器0工作方式2,TH0是重装值,TL0是初值
TH0=0x00; //重载值
TL0=0x00; //初始化值
ET0=1; //开中断
TR0=1;
}
/*------------------------------------------------
外部中断0初始化
------------------------------------------------*/
void EX0init(void)
{
IT0 = 1; //指定外部中断0下降沿触发,INT0 ()
EX0 = 1; //使能外部中断
EA = 1; //开总中断
}
/*------------------------------------------------
键值处理
------------------------------------------------*/
void Ir_work(void)//红外键值散转程序
{
switch(IRcord[2])//判断第三个数码值
{
case 0x0c:gao_num=1;di_num=3;break;//1
case 0x18:gao_num=2;di_num=2;break;//2
case 0x5e:gao_num=3;di_num=1;break;//3
case 0x08:gao_num=4;di_num=0;break;//4
case 0x15:num++;if(num==4) num=3;break;//+号,步进电机加速
case 0x07:if(num!=0) num--;else num=0;break;//-号,步进电机减速
case 0x09:flag=~flag;break;//8 EQ键控制步进电机正反转
case 0x43:if(flag1==0) flag1=1;else flag1=0;break;//预留
default:break;
}
irpro_ok=0;//处理完成标志
}
/*------------------------------------------------
红外码值处理
------------------------------------------------*/
void Ircordpro(void)//红外码值处理函数
{
unsigned char i, j, k;
unsigned char cord,value;
k=1;
for(i=0;i<4;i++)

红外遥控实例 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数6
  • 收藏数0 收藏
  • 顶次数0
  • 上传人1542605778
  • 文件大小23 KB
  • 时间2022-02-25