打印

红外解码程序!!请高手帮忙看看

[复制链接]
楼主: 贺信
手机看帖
扫描二维码
随时随地手机跟帖
101
:L我看错了

使用特权

评论回复
102
贺信|  楼主 | 2009-10-14 22:44 | 只看该作者
定时100uS,用来解码高低电平

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

void timer0() interrupt 1
{

   //    SendFlag = 1;                   //屏蔽这句
        T0Count++;
//        TH0         = 0x9C;                //定时100uS
//        TL0         = 0x00;

}

IR Decode.h文件
extern void mDelay(unsigned int i);
extern unsigned char IR_Decode();
extern unsigned char ReceiveData;


//另外请注意:每次上电复位后,只能发一次红外。如果要再次发红外,请先复位。(因为你的程序没有退出接收机制)
谢谢!!

这 句 //    SendFlag = 1;                   //屏蔽这句
是我刚才看看有没有进入定时器而加的,忘了删!!
打包的程序没这句!!

现在检查出来了一个错!!


extern bit SendFlag ;                //发送标志//sbit IR_RE   = P3^2;        //红外接受中断口
sbit IR_RE   = P2^5;        //红外接受中断口
sbit led   = P2^1;        //红外接受中断口

使用特权

评论回复
103
贺信|  楼主 | 2009-10-14 22:45 | 只看该作者
extern bit SendFlag ;                //发送标志

这句放这mian.h中

使用特权

评论回复
104
huangqi412| | 2009-10-14 23:26 | 只看该作者
还好酱油店老板是照自己头呼,匠人姐姐可是拿砖头呼lz了。嘎嘎,

使用特权

评论回复
105
xwj| | 2009-10-14 23:32 | 只看该作者
看,匠人姐姐呼得多温柔、多么有耐心,
哪像那酱油店的老板...

使用特权

评论回复
106
贺信|  楼主 | 2009-10-15 08:28 | 只看该作者
本帖最后由 贺信 于 2009-10-15 08:30 编辑

谢谢大家的帮助和提示,尤其感谢匠人前辈!!
小弟这是第一次写程序,也算学到很多了,心里很感激大家,也很内疚,很对自己不舒服!
上班时间就不打搅大家了,我也要忙自己的事了,写这程序纯属学习,只能等有时间再学习了!!一有时间我就会再努力
   谢谢!!

使用特权

评论回复
107
程序匠人| | 2009-10-15 12:35 | 只看该作者
希望楼主不要“始乱终弃”哦。呵呵

使用特权

评论回复
108
贺信|  楼主 | 2009-10-17 11:59 | 只看该作者
问题找到了!!!问题的关键不是接受程序的错误,而是发射编码的错误,我的发射也是用单片机编码然后发射!我现在的做法是用下降沿记录下数据宽度的时间,即下降沿来就记录时间后相减,得到每个数据的时间,后发到串口上分析,发现,数据头是41ms 左右!!(我采集了几次有如0XA378,0XA37F,这是真整个数据头的时间),数据0为8ms左右(0X2249,0X2248,0X224A),数据1为17ms左右(0X4481,0X4482)
真的很郁闷,难道示波器采集的数据不对?还是这样看采集的数据很有很大的误差!!!!
我开始编码采集数据后就认为OK了!!看样子还是数据编码有问题!!!

使用特权

评论回复
109
贺信|  楼主 | 2009-10-17 12:01 | 只看该作者
这是18380UT脚给单片机的电平!!!眼睛也不会有这么大误差吧!!!!

K1改变发射头后的正确接受波形.JPG (78.69 KB )

K1改变发射头后的正确接受波形.JPG

使用特权

评论回复
110
贺信|  楼主 | 2009-10-17 12:04 | 只看该作者
??

K1头发射改后图2.JPG (75.05 KB )

K1头发射改后图2.JPG

使用特权

评论回复
111
贺信|  楼主 | 2009-10-17 12:07 | 只看该作者
有没有什么好方法能让单片机产生准确的编码呢????我的发射码是用延时来做的!!看样子误差太离谱了!!!

使用特权

评论回复
112
夏日飞鹰| | 2009-10-18 20:55 | 只看该作者
我的经验是,发送用定时做,接受用延时就可以了:)

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则