📄 yaokong.h
字号:
/*****************************************************************************************/
/*********************************************遥控解码************************************/
/******************************************************************************************/
void t0(void) interrupt 0 using 2
{
unsigned char j,k;
EA=0;
for(k=0;k<10;k++)
{
display0_9ms();
/************************************************************************************/
/*********************************************抖动确认*******************************/
/************************************************************************************/
if (IR==1) {k=10;break;}
else if(k==9)
{
while(IR==0);
display2_4ms();
/************************************************************************************/
/*********************************************连发码确认*****************************/
/************************************************************************************/
if(IR==1)
{
display2_4ms();
/************************************************************************************/
/*********************************************开始接收数据***************************/
/************************************************************************************/
for(j=1;j<=26;j++)
{
while(IR==0);
display0_9ms();
if(IR==1)
{
display1ms();
dm=dm|0x01;
if(j<26)dm=dm<<1;
}
else if(j<26)dm=dm<<1;
}
bb=dm;
dm=0;
/************************************************************************************/
/********************************************继续接收数据****************************/
/************************************************************************************/
for(j=1;j<=16;j++)
{
while(IR==0);
display0_9ms();
if(IR==1)
{
display1ms();
dm=dm|0x01;
if(j<16)dm=dm<<1;
}
else if(j<16)dm=dm<<1;
}
aa=dm;
dm=0;
/************************************************************************************/
/***************************************遥控信号处理*********************************/
/************************************************************************************/
if(bb==0xa2){dianyuanchuli();} //电源
// if(bb==0xa0){;}
// if(bb==0xab){;}
if(bb==0x22){if(dianyuan==1){numb=PWM_data=0x01;}else{numb=0xaa;}} //1档
if(bb==0x20){if(dianyuan==1){numb=PWM_data=0x02;}else{numb=0xaa;}} //2档
if(bb==0x2b){if(dianyuan==1){numb=PWM_data=0x03;}else{numb=0xaa;}} //3档
if(bb==0xc2){if(dianyuan==1){numb=PWM_data=0x04;}else{numb=0xaa;}} //4档
if(bb==0xc0){if(dianyuan==1){numb=PWM_data=0x05;}else{numb=0xaa;}} //5档
if(bb==0xcb){if(dianyuan==1){numb=PWM_data=0x06;}else{numb=0xaa;}} //6档
// if(bb==0x42){;}
// if(bb==0x40){;}
// if(bb==0x4b){;}
// if(bb==0x80){;}
// if(bb==0x82){;}
// if(bb==0x8b){;}
// if(bb==0x02){;}
// if(bb==0x00){;}
// if(bb==0x0b){;}
}//为lian发码则执行括号后面的语句
display();
}//判断引导码是否够9ms低电平:小于8ms出现高电平时认为是抖动
}//循环十次每次0.9ms
display();
EA=1;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -