LC7461遥控解码子程序源代码
- 名称:LC7461遥控解码子程序源代码
- 类型:单片机学习
- 授权方式:免费版
- 更新时间:10-10 20:48:56
- 下载要求:无需注册
- 下载次数:6526次
- 语言简体中文
- 大小:4.18 MB
- 推荐度:2 星级
//遥控解码子程序,LC7461,用户码为11C
//external interrupt0
void isr_4()
{
unsigned char r_count;//定义解码的个数
unsigned long use_data=0;//定义16位的用户码,只用到13位
unsigned long use_code=0;//定义16位的用户反码,只用到13位
unsigned long data=0;//定义16位数据码,包括8位数据码和反码
unsigned char data_h=0;//数据反码
unsigned char data_l=0;//数据码
_clrwdt();
// _delay(7000);//7461解码,延时7000
// _delay(7000);//7461解码,延时7000
//_delay(7000);//7461解码,延时7000
if(remote==1)
goto error;
while(remote==0);//wait to high
//_delay(9744);
count_delay=0;
while(count_delay<143);
if(remote==1)
goto error;
/////用户码解码use_data//////////add//////////////////////////
for(r_count=13;r_count>0;r_count--)
{
while(remote==0);//wait to high
count_delay=0;
while(count_delay<24);//_delay(1680);
_c=remote;
if(_c==1)
{
_lrrc(&use_data);
count_delay=0;
while(count_delay<32);//_delay(2200);//wait to low
}
else
_lrrc(&use_data);
}
_nop();
//if(remote==1)
//_delay(1680);//wait to low while(remote==1);//wait to low
_nop();
////////用户码解码finish/////////add/////////add////////
/////用户码反码解码use_code//////////add//////////////////////////
for(r_count=13;r_count>0;r_count--)
{
while(remote==0);//wait to high
count_delay=0;
while(count_delay<24);//_delay(1680);
_c=remote;
if(_c==1)
{
_lrrc(&use_code);
count_delay=0;
while(count_delay<32);//_delay(2200);//wait to low
}
else
_lrrc(&use_code);
}
_nop();
//if(remote==1)
// _delay(1680);//wait to low while(remote==1);//wait to low
_nop();
////////用户码反码解码finish/////////add/////////add////////
////数据码解码开始////data_l为用户码,data_h为数据码反码////////////
for(r_count=16;r_count>0;r_count--)
{
while(remote==0);//wait to high
count_delay=0;
while(count_delay<24);//_delay(1680);
_c=remote;
if(_c==1)
{
_lrrc(&data);
count_delay=0;
while(count_delay<32);//_delay(2200);//wait to low
}
else
_lrrc(&data);
}
////数据码解码结束////////////////////////////////////////////////
data_l=data;
data_h=data>>8;
///用户码//////
use_data>>=3;
use_code>>=3;
use_code=~use_code;
////////
////如果用户码等与0x11c并且数据码和数据反码都校验一致,解码成功
//if((~data_h==data_l)&&use_data==0x11c)//使用用户码
//跳过用户码
if(~data_h==data_l)//如果数据码和数据反码(取反后)相等,解码正确
{
_nop();
r_data=data_l;//r_data为解出的最终数据码
}
//否则解码不成功
_nop();
_nop();
error: //r_data=nocode;
_nop();
_nop();
_nop();
}
- 上一篇:红外遥控接收程序
《LC7461遥控解码子程序源代码》相关下载
- › LC7461遥控解码子程序源代码
- 在百度中搜索相关下载:LC7461遥控解码子程序源代码
- 在谷歌中搜索相关下载:LC7461遥控解码子程序源代码
- 在soso中搜索相关下载:LC7461遥控解码子程序源代码
- 在搜狗中搜索相关下载:LC7461遥控解码子程序源代码
编辑推荐
- · 单片机实验简介
- · 单片机软硬件联合仿真解决方案
- · 单片机技术中的一些问题
- · 单片机技术问题(一)
- · 电容介绍
- · 单元电路图识图方法
- · 磁技术的新应用与展望
- · 常用DTMF,FSK解码集成电路
- · xe系列任你选
- · viterbi译码算法简介