⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rx.c

📁 家电自动控制系统
💻 C
📖 第 1 页 / 共 5 页
字号:
 // Header: IR_Control
 // File Name: rx.c
 // Author:Denggengxin
 // Date:  2004-12-03
#include <reg52.h>     	//采用12MHz晶振		   
#include <intrins.h>                                                                       	
#include <absacc.h>   
#include "disp.c"           
#define uchar unsigned char 
#define uint unsigned int
#define SIZE_OF_MENU 30


void delay500us(uchar time);			
void Disp_Time(void) ;		//显示 时间
void Get_Key_Time(void);	//读按键
void Disp_Time_Set(void);
void Disp_Time_Add(void);
void Disp_Time_Dec(void);
void Disp_Time_Right(void);
void Disp_Time_Left(void);
void Disp_Time_Set_Menu(void);
void Disp_Timer_Set_Menu(void);
void Fixture_State(void);
void Fixture_State_1(void);
void Fixture_State_2(void);
void Fixture_State_3(void);			  
void Fixture_State_4(void);
void Fixture_State_5(void);
void Fixture_State_6(void);
void Fixture_State_7(void);
void Fixture_State_8(void);
void Fixture_State_9(void);
void Fixture_State_10(void);
void Fixture_State_11(void);
void Fixture_State_12(void);
void Fixture_State_13(void);
void Fixture_State_14(void);
void Fixture_State_15(void);
void Fixture_State_16(void);
void Fixture_State_17(void);
void Fixture_State_18(void);
void Fixture_State_19(void);
void Fixture_State_20(void);
void Fixture_State_21(void);
void Fixture_State_22(void);
void Fixture_State_23(void);
void Fixture_State_24(void);
void State_Now_1(void);
void State_Now_2(void);
void State_Now_3(void);
void State_Now_4(void);
void State_Now_5(void);
void State_Now_6(void);
void State_Now_7(void);
void State_Now_8(void);
void State_Now_9(void);
void State_Now_10(void);
void State_Now_11(void);
void State_Now_12(void);
void State_Now_13(void);
void State_Now_14(void);
void State_Now_15(void);
void State_Now_16(void);
void State_Now_17(void);
void State_Now_18(void);
void State_Now_19(void);
void State_Now_20(void);
void State_Now_21(void);
void State_Now_22(void);
void State_Now_23(void);
void State_Now_24(void);
void Fre_Men(void);
void Fixture_State_On(void);
void Fixture_State_Off(void);
void See_Fixture_State(void);
void Fixture_On_Dec(void);
void Fixture_On_Add(void);
void Fixture_On_Right(void);
void Fixture_On_Left(void);
void Fixture_On_Menu(void);
void Find_Fixture_Time(void);
void Oper_Fixture(void);
void Oper_Fixture_Off(void);
void Oper_Fixture_On(void);
void Oper_Fixture_Menu_On(void);
void Oper_Fixture_Menu_Off(void);
void Disp_Now_State(void);
void Turn_on_Fixture(void);
void _Fixture_Off(void);
void All_Fixture_Off(void);
void demand_One_Fixture(void) ;
void demand_Fixture(void); 
void Alread_On_Fixture(void);
void Rcognise_Key(void);
void Fre_Add(void);              
void Fre_Dec(void);               
void azz(void);



sbit count_pin=P3^3;   //遥控接收口
sbit State_1=P0^0;	   //设备号
sbit State_2=P0^1;
sbit State_3=P0^2;
sbit State_4=P0^3;
sbit State_5=P0^4;
sbit State_6=P0^5;
sbit State_7=P0^6;
sbit State_8=P0^7;
sbit State_9=P1^0;
sbit State_10=P1^1;
sbit State_11=P1^2;
sbit State_12=P1^3;
sbit State_13=P1^4;
sbit State_14=P1^5;
sbit State_15=P1^6;
sbit State_16=P1^7;
sbit State_17=P2^0;
sbit State_18=P2^1;
sbit State_19=P2^2;
sbit State_20=P2^3;
sbit State_21=P2^4;
sbit State_22=P2^5;
sbit State_23=P2^6;
sbit State_24=P2^7;
sbit Set_Pin=P3^2;	   //按键SET脚
sbit Add_Pin=P3^4;	   //按键加
sbit Dec_Pin=P3^5;			   //减
sbit Cursor_right=P3^6;		   //右
sbit Cursor_left=P3^7;		   //左


void (*Key_Func_Ptr)();

typedef struct{
uchar month;
uchar Day_data;
uchar week;
}Year;

typedef struct
{uchar High_Byte;
 uchar Low_Byte;
}Chinese_Char;

typedef struct{
uchar KeyStateIndex;
uchar Key_Time_Set;
uchar Key_Time_Add;
uchar Key_Time_Dec;
uchar Time_Cursor_Right;
uchar Time_Cursor_Left;
void (*Operate)();
}Key_Struct;

Key_Struct code Time_Set_Menu[]=
{ 
 {0,0,3,0,1,65,(*Disp_Time_Set_Menu)},       //时间设置
 {1,0,16,1,2,0,(*Disp_Timer_Set_Menu)},     //设备开关时间设置
 {2,0,90,2,65,1,(*Fixture_State)},          //设备状态
 
  
 {3,0,4,5,6,7,(*Disp_Time_Set)},      //时间设置的展开
 {4,0,4,5,6,7,(*Disp_Time_Add)},
 {5,0,4,5,6,7,(*Disp_Time_Dec)},
 {6,0,4,5,6,7,(*Disp_Time_Right)},
 {7,0,4,5,6,7,(*Disp_Time_Left)},      

 {8,0,24,8,9,11,(*Fixture_State_1)}, //设备状态的展
 {9,0,25,9,10,8,(*Fixture_State_2)},    
 {10,0,26,10,11,9,(*Fixture_State_3)},
 {11,0,27,11,12,10,(*Fixture_State_4)},
 {12,0,28,12,13,43,(*Fixture_State_5)},    
 {13,0,29,13,14,12,(*Fixture_State_6)},
 {14,0,30,14,15,13,(*Fixture_State_7)},
 {15,0,31,15,43,47,(*Fixture_State_8)}, 
 
 {16,0,32,16,17,19,(*Fixture_State_1)}, //设备开关时间的第一层展开
 {17,0,32,17,18,16,(*Fixture_State_2)},    
 {18,0,32,18,19,17,(*Fixture_State_3)},
 {19,0,32,19,20,10,(*Fixture_State_4)},
 {20,0,32,20,21,16,(*Fixture_State_5)},    
 {21,0,32,21,22,20,(*Fixture_State_6)},
 {22,0,32,22,23,21,(*Fixture_State_7)},
 {23,0,32,23,35,22,(*Fixture_State_8)},  
 
 
 {24,8,24,24,24,24,(*State_Now_1)},  //设备状态的第二层展开
 {25,8,25,25,25,25,(*State_Now_2)},
 {26,8,26,26,26,26,(*State_Now_3)},
 {27,8,27,27,27,27,(*State_Now_4)},
 {28,12,28,28,28,28,(*State_Now_5)},
 {29,12,29,29,29,29,(*State_Now_6)},
 {30,12,30,30,30,30,(*State_Now_7)},
 {31,12,31,31,31,31,(*State_Now_8)},

 {32,16,59,32,33,34,(*Fixture_State_On)}, //设备开关时间的第三层展开
 {33,16,59,33,34,32,(*Fixture_State_Off)},    
 {34,16,64,34,32,33,(*See_Fixture_State)},

 {35,0,32,35,36,38,(*Fixture_State_9)}, //设备开关时间的第一层展开
 {36,0,32,36,37,35,(*Fixture_State_10)},    
 {37,0,32,37,38,36,(*Fixture_State_11)},
 {38,0,32,38,39,37,(*Fixture_State_12)},
 {39,0,32,39,40,35,(*Fixture_State_13)},    
 {40,0,32,40,41,39,(*Fixture_State_14)},
 {41,0,32,41,42,40,(*Fixture_State_15)},
 {42,0,32,42,92,41,(*Fixture_State_16)},  

 {43,0,51,43,44,12,(*Fixture_State_9)}, //设备状态的展开
 {44,0,52,44,45,43,(*Fixture_State_10)},    
 {45,0,53,45,46,44,(*Fixture_State_11)},
 {46,0,54,46,47,45,(*Fixture_State_12)},
 {47,0,55,47,48,100,(*Fixture_State_13)},    
 {48,0,56,48,49,47,(*Fixture_State_14)},
 {49,0,57,49,50,48,(*Fixture_State_15)},
 {50,0,58,50,100,49,(*Fixture_State_16)},  

 {51,43,51,51,51,51,(*State_Now_9)},  //设备状态的第三层展开
 {52,43,52,52,52,52,(*State_Now_10)},
 {53,43,53,53,53,53,(*State_Now_11)},
 {54,43,54,54,54,54,(*State_Now_12)},
 {55,47,55,55,55,55,(*State_Now_13)},
 {56,47,56,56,56,56,(*State_Now_14)},
 {57,47,57,57,57,57,(*State_Now_15)},
 {58,47,58,58,58,58,(*State_Now_16)},
 
 {59,32,60,61,62,63,(*Fixture_On_Menu)},        //设备开关时间的第四层展开
 {60,32,60,61,62,63,(*Fixture_On_Add)},
 {61,32,60,61,62,63,(*Fixture_On_Dec)},
 {62,32,60,61,62,63,(*Fixture_On_Right)},
 {63,32,60,61,62,63,(*Fixture_On_Left)},

 {64,32,64,64,64,64,(*Find_Fixture_Time)},
 {65,0,86,65,0,2,(*Oper_Fixture)},          //打开关闭某设备

 {66,0,82,66,67,70,(*Fixture_State_1)}, //打开关闭某设备的第三层展开
 {67,0,82,17,68,66,(*Fixture_State_2)},    
 {68,0,82,18,69,67,(*Fixture_State_3)},
 {69,0,82,19,70,68,(*Fixture_State_4)},
 {70,0,82,20,71,74,(*Fixture_State_5)},    
 {71,0,82,21,72,70,(*Fixture_State_6)},
 {72,0,82,22,73,71,(*Fixture_State_7)},
 {73,0,82,23,74,72,(*Fixture_State_8)},  
 {74,0,82,43,75,78,(*Fixture_State_9)}, 
 {75,0,82,44,76,74,(*Fixture_State_10)},    
 {76,0,82,45,77,75,(*Fixture_State_11)},
 {77,0,82,46,78,76,(*Fixture_State_12)},
 {78,0,82,47,79,116,(*Fixture_State_13)},    
 {79,0,82,48,80,78,(*Fixture_State_14)},
 {80,0,82,49,81,79,(*Fixture_State_15)},
 {81,0,82,50,116,80,(*Fixture_State_16)},  

 {82,66,85,82,83,82,(*Oper_Fixture_Menu_On)},   //打开关闭某设备的第四层展开
 {83,66,84,83,82,83,(*Oper_Fixture_Menu_Off)},  


 {84,82,84,84,84,84,(*Oper_Fixture_Off)},     //打开关闭某设备的第五层展开
 {85,82,85,85,85,85,(*Oper_Fixture_On)}, 
 
  {86,0,88,86,87,124,(*All_Fixture_Off)},  //打开关闭某设备的第二层展开
  {87,0,66,87,124,86,(*Turn_on_Fixture)},
  {88,86,88,88,88,88,(*_Fixture_Off)},
 
  {89,0,8,89,90,89,(*demand_One_Fixture)},  //设备状态的第二层展开
  {90,0,91,90,89,90,(*demand_Fixture)},
  {91,90,91,91,91,91,(*Alread_On_Fixture)},

 {92,0,32,92,93,13,(*Fixture_State_17)}, //设备开关时间的第一层展开
 {93,0,32,93,94,92,(*Fixture_State_18)},    
 {94,0,32,94,95,93,(*Fixture_State_19)},
 {95,0,32,95,96,94,(*Fixture_State_20)},
 {96,0,32,96,97,92,(*Fixture_State_21)},    
 {97,0,32,97,98,96,(*Fixture_State_22)},
 {98,0,32,98,99,97,(*Fixture_State_23)},
 {99,0,32,99,16,98,(*Fixture_State_24)},  

  
 {100,0,108,100,101,104,(*Fixture_State_17)}, 	 //设备状态的第一层展开
 {101,0,109,101,102,100,(*Fixture_State_18)},    
 {102,0,110,102,103,101,(*Fixture_State_19)},
 {103,0,111,103,104,102,(*Fixture_State_20)},
 {104,0,112,104,105,100,(*Fixture_State_21)},    
 {105,0,113,105,106,104,(*Fixture_State_22)},
 {106,0,114,106,107,105,(*Fixture_State_23)},
 {107,0,115,107,8,106,(*Fixture_State_24)},  

 {108,100,108,108,108,108,(*State_Now_17)},  //设备状态的第三层展开
 {109,100,109,109,109,109,(*State_Now_18)},
 {110,100,110,110,110,110,(*State_Now_19)},
 {111,100,111,111,111,111,(*State_Now_20)},
 {112,104,112,112,112,112,(*State_Now_21)},
 {113,104,113,113,113,113,(*State_Now_22)},
 {114,104,114,114,114,114,(*State_Now_23)},
 {115,104,115,115,115,115,(*State_Now_24)},

 {116,0,82,116,117,120,(*Fixture_State_17)}, //打开关闭设的第三层展开
 {117,0,82,117,118,116,(*Fixture_State_18)},   //*CHANGE FROM 119 TO 66 
 {118,0,82,118,119,117,(*Fixture_State_19)},
 {119,0,82,119,120,118,(*Fixture_State_20)},
 {120,0,82,120,121,116,(*Fixture_State_21)},    
 {121,0,82,121,122,120,(*Fixture_State_22)},
 {122,0,82,122,123,121,(*Fixture_State_23)},
 {123,0,82,123,66,122,(*Fixture_State_24)},  

 {124,0,125,124,86,87,(*Fre_Men)},

 {125,124,150,125,126,129,(*Fixture_State_1)}, //	  开关信号输出				
 {126,124,150,126,127,125,(*Fixture_State_2)},    								 
 {127,124,150,127,128,126,(*Fixture_State_3)},
 {128,124,150,128,129,127,(*Fixture_State_4)},
 {129,124,150,129,130,133,(*Fixture_State_5)},    
 {130,124,150,130,131,129,(*Fixture_State_6)},
 {131,124,150,131,132,130,(*Fixture_State_7)},
 {132,124,150,132,133,131,(*Fixture_State_8)},  
 {133,124,150,133,134,137,(*Fixture_State_9)}, 
 {134,124,150,134,135,133,(*Fixture_State_10)},    
 {135,124,150,135,136,134,(*Fixture_State_11)},
 {136,124,150,136,137,135,(*Fixture_State_12)},
 {137,124,150,137,138,141,(*Fixture_State_13)},    
 {138,124,150,138,139,137,(*Fixture_State_14)},
 {139,124,150,139,140,138,(*Fixture_State_15)},
 {140,124,150,140,141,139,(*Fixture_State_16)},  
 {141,124,150,141,142,145,(*Fixture_State_17)}, 
 {142,124,150,142,143,141,(*Fixture_State_18)},    
 {143,124,150,143,144,142,(*Fixture_State_19)},
 {144,124,150,144,145,143,(*Fixture_State_20)},
 {145,124,150,145,146,125,(*Fixture_State_21)},    
 {146,124,150,146,147,145,(*Fixture_State_22)},
 {147,124,150,147,148,146,(*Fixture_State_23)},
 {148,124,150,148,125,147,(*Fixture_State_24)},  

 {149,125,150,149,149,149,(*Fre_Dec)},
 {150,125,150,149,150,150,(*Fre_Add)},  

 };

uchar code Data_1[]={0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x2d,0x2e,};//数字1-9
uchar code All_Code_Data[]={0xb0,0xb1,0xb2,0xb3,0xb4,0xb5,0xb6,0xb7,0xb8,0xb9};    //数字1-9
uchar code monthday[]={31,28,31,30,31,30,31,31,30,31,30,31};
code Chinese_Char Week_c[]={{0xc8,0xd5},{0xd2,0xbb},{0xb6,0xfe},{0xc8,0xfd},

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -