12171|13

8

帖子

5

TA的资源

一粒金砂(中级)

楼主
 

红外线遥控器控制继电器的程序+电路图 [复制链接]

红外线遥控器控制继电器的程序
#include
#include

#define uchar unsigned char
#define uint unsigned int
  

#pragma interrupt_handler IceInt:6 中断程序说明

uint bitcnt,data0=0,data1=0;

void ICEInit(void) //T/C1 初始化
{
    CLI();
    DDRD&=~(1<   PORTD=0XFF;
   
    TIMSK=0X20; //使能捕获中断(PD6)
    TCCR1A=0X00; // T/C1时钟与系统相同,使用系统 AVR内部自带 1MHz
    TCCR1B=0X81; //使能噪音抑制, 下降沿触发中断
   
}
void IceInt(void)
{
    static uint oldFall;
    uint temp,newFall;
   
    newFall=ICR1;
    temp=newFall- oldFall; //计算脉冲加间隔的时间
   
    oldFall=newFall;
   
if(temp>1025 && temp<1225) // "0"信号
   {
            temp=0;
            }
            else if (temp>2145 && temp<2345) //"1"信号
            {
            temp=1;
   }
   
else if (temp>13400 && temp<13600) //header信号

    {
      bitcnt=0;
      data0=0;
      data1=0;
   
return; //返回, 等待下次开始接收
        }
        else // 干扰信号
        {
      return;
        }
      bitcnt++;
      
if (bitcnt<16) //开始接收前 16 位
     {
   data0=data0|(uint)temp;
   data0=data0<<1;
   }
else if (bitcnt==16)
    {
    data0=data0|(uint)temp;
    }
else if (bitcnt<32) //开始接收后 16 位
    {
    data1=data1|(uint)temp;
    data1=data1<<1;
    }
else if (bitcnt==32) // 接收完最后一位
    {
    CLI();
    data1=data1|(uint)temp;
   
if(data1==0X3BD2) //"开关"键的data1值是0X3BD2

    {
    PORTC=~PORTC;//"开关"变换
    }
else
   {
   PORTC=PORTC;//"开关"不变
   }
    }
}

//**********************

void main()
{
  
  DDRC=0XFF;//初始化端C口
  PORTC=0X00;
  PORTC&=~(1<   
  SREG=0x00;   //关闭全局中断
  ICEInit();
  IceInt();
  S_St();    //调用显示
  SREG=0x80;   //开全局中断
   
}


//用“S_St();    //调用显示函数”先查出红外线遥控器开关键的值“data1”的值--****,再把值填入if(data1==0X3****) //"开关"键的data1值是****

[ 本帖最后由 pyq208 于 2011-4-13 21:57 编辑 ]

快照-1.rar

7.9 KB, 下载次数: 278

此帖出自传感器论坛

最新回复

谢谢,学习  详情 回复 发表于 2013-12-27 22:33
点赞 关注
 
 

回复
举报

7219

帖子

195

TA的资源

五彩晶圆(高级)

沙发
 
感觉不够详细 对红外挺有兴趣
此帖出自传感器论坛
 
 
 

回复

45

帖子

0

TA的资源

一粒金砂(中级)

板凳
 
我只会发送,还不会接收,研究一下
此帖出自传感器论坛
 
 
 

回复

888

帖子

3

TA的资源

五彩晶圆(初级)

4
 
看着让人迷茫啊
此帖出自传感器论坛
个人签名邮箱:ternence.hsu@foxmail.com
 
 
 

回复

10

帖子

0

TA的资源

一粒金砂(初级)

5
 
有点深奥啊
此帖出自传感器论坛
 
 
 

回复

8

帖子

0

TA的资源

一粒金砂(中级)

6
 
中断函数呢?学习捕获中
此帖出自传感器论坛
 
 
 

回复

21

帖子

0

TA的资源

一粒金砂(初级)

7
 
嗯。。来看看。。!
此帖出自传感器论坛
 
 
 

回复

11

帖子

0

TA的资源

一粒金砂(初级)

8
 
下载看看,感谢分享!!!
此帖出自传感器论坛
 
 
 

回复

21

帖子

0

TA的资源

一粒金砂(初级)

9
 
非入门,小白菜绕道
此帖出自传感器论坛
 
 
 

回复

4

帖子

0

TA的资源

一粒金砂(中级)

10
 
怎么没有电路图啊?
此帖出自传感器论坛
 
 
 

回复

113

帖子

1

TA的资源

一粒金砂(中级)

11
 
不知道稳定不稳定,之前用捕获做的时好时坏
此帖出自传感器论坛
 
 
 

回复

598

帖子

0

TA的资源

纯净的硅(初级)

12
 
电路图呢?
此帖出自传感器论坛
 
 
 

回复

44

帖子

0

TA的资源

一粒金砂(中级)

13
 
电路图呢
此帖出自传感器论坛
 
 
 

回复

25

帖子

0

TA的资源

一粒金砂(初级)

14
 
谢谢,学习
此帖出自传感器论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表