微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > STC12LE5608AD 红外发射

STC12LE5608AD 红外发射

时间:10-02 整理:3721RD 点击:
1: 使用红外遥控,将红外接收头的管脚直连模块A可以正确打印出数据
2: 用STC12LE5608AD  IO口来模拟后直连模块A无反应
sbit IR_IN = P3^3;
#define IR_IN_H  1
#define IR_IN_L  0

void IR_sendData(unsigned char dat_1, unsigned char dat_2)
{
        EA = 0;
        IR_IN = IR_IN_L;
        Delay9ms();
        IR_IN = IR_IN_H;
        Delay4500us();
        IR_sendByte(IRIN_ADDR1);
        IR_sendByte(IRIN_ADDR2);
        IR_sendByte(dat_1);
        IR_sendByte(dat_2);
        IR_IN = IR_IN_H;
        EA = 1;
}
void IR_sendByte(unsigned char tmp)
{
        unsigned char i;
        for(i = 0; i < 8; i++)
        {
                IR_IN = IR_IN_L;
                Delay560us();
                IR_IN = IR_IN_H;
                if(tmp & 1)
                {
                        Delay1680us();
                }
                else
                {
                        Delay560us();
                }
                tmp >>= 1;
        }
}

测试:用示波器测接收头的管脚波形与STC12管脚波形,进行比对,波形一致
不懂为什么,求各种建议,各种想法

补充内容 (2016-7-11 14:53):
现在写一红外接收程序,来测试,发现可以检测道9ms低电平-4.5ms高电平-560us低电平-后面就检测不到了,此红外接收程序可正常接收红外接收头的数据

你波形应该和datasheet的时序比较

哪个datasheep,这种是没有载波的

常用的红外发射都有载波,除非是不常见的特色接收端

谢谢小编分享

因为是IO口直连的,跳过红外发射和红外接收的,故把载波去掉

比较过了,一样的

谢谢分享!谢谢分享!谢谢分享!谢谢分享!谢谢分享!

谢谢分享!谢谢分享!谢谢分享!谢谢分享!谢谢分享!

谢谢小编分享

在线等

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top