电子文章 | 电子资料下载 | 家电维修 | 维修资料下载 | 加入收藏 | 全站地图
您现在所在位置:电子爱好者维修技术家电维修单元电路介绍微机|单片机用89C51单片机代替PT2272解码PT2262的程序

用89C51单片机代替PT2272解码PT2262的程序

09-08 11:37:14 | http://www.5idzw.com | 微机|单片机 | 人气:720
标签:电路设计,http://www.5idzw.com 用89C51单片机代替PT2272解码PT2262的程序,http://www.5idzw.com
recv_flg =1;
lianji_flg =1;
} else {
recv_flg =0;
lianji_flg =0;
}
// MOV A,ADD_A0
// XRL A,ADD_USER_A0
// JNZ REMOTE8 //密码不正确则跳转
//
// MOV A,ADD_A1
// XRL A,ADD_USER_A1
// JNZ REMOTE8 //密码不正确则跳转
// //置接收正确位 ---------------------------------------------------------
// SETB RECEIVE
// //置ENABLE 用于检测按键有没有放开 --------------------------------
// SETB ENABLE
// RET //接收正确返回 -----------------------------------------
//REMOTE8:
// CLR ENABLE
// CLR RECEIVE
// RET //接收不正确返回 ---------------------------------------
}
PT2272_deco_exit:
return;
}
//<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<   //>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
void remote_2272_deco() //接收遥控码(解码程序)
{
uint i;
//检测50ms内有没有编码接收
for(i=1000;i;i--) {
if(!W_REM) {
PT2272_deco(); //解码
break;
}
else d50us(1); //50uS延时
}
recv_flg =0; //清按键没有放开过标志
}
//<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<   //>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
void work() //控制输出 //把选中的LED取反
{
if(recv_flg) { //接收不正确,退出
recv_flg=0; //清接收正确标志位
a_0.bytes.byte_data =~a_0.bytes.byte_data;
P1 =P1^a_0.bytes.byte_data;
}
//WORK:
// JNB RECEIVE,WORK_END //接收不正确,退出
// //每次按键都一次响应
// CLR RECEIVE //清接收正确标志位
// MOV A,DATA_A1
// CPL A
// ORL A,#0FH //屏蔽低4位
// MOV DATA_A1,A
// MOV A,LCD_OUT
// XRL A,DATA_A1
// ORL A,#0FH
// MOV LCD_OUT,A
// MOV P1,LCD_OUT
// NOP
//WORK_END:
// RET
// END
}
//<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<-<  
// ==================================== main function ============================================
// ==================================== main function ============================================
// ==================================== main function ============================================
// ==================================== main function ============================================
// ==================================== main function ============================================
// ==================================== main function ============================================
void main (void)
{
//上电初始化 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
P1 =0xff;
P3 =0xff;
for(addr_user_a1=100;addr_user_a1;addr_user_a1--) d50us(200); //50uS延时
//编码设定为:A0~A7地址编码为:悬空 +++++++++++++++++++++++++++++++++++++++++++++
addr_user_a0 =0xff;
addr_user_a1 =0x00;
//start: //================================================================================
while(1) {
remote_2272_deco(); //接收遥控码
work(); //控制输出
LED0 =!LED0;
}
}

上一页  [1] [2] 

,用89C51单片机代替PT2272解码PT2262的程序
关于《用89C51单片机代替PT2272解码PT2262的程序》的更多文章