#ifndef _RF433_H_ #define _RF433_H_ #include #include #include ///* // 09 07 01 03 // // // // 0B 05 0A 0C //*/ //#define ON_OFF 0X03 //开关 //#define Mode_choose 0X01 //七彩 //#define Brightness_L 0X09 // //#define Brightness_H 0X07 //#define Time_1h 0x0B //#define Time_2h 0x05 //#define Speed_add 0x0C //#define Speed_dow 0x0A //#define ON 0XF1 //开关 //#define OFF 0XF0 //七彩 //#define Mode_add 0XF2 // //#define Mode_dow 0XF3 //#define Brightness_H 0xF4 //#define Brightness_L 0xF5 //椭圆 #define ON 0X02 //开关 #define OFF 0X04 //七彩 #define Mode_add 0X06 // #define Mode_dow 0X0E #define Brightness_H 0x08 #define Brightness_L 0x0D #define Speed_H 0x08 #define Speed_L 0x0D //扁形 #define B_Brightness_H 0x00 #define B_Brightness_L 0x0F #define B_Speed_L 0x0A //F_Speed_dow 0x0A #define B_Speed_H 0x0C // F_Speed_add 0x0C //方形 #define F_ON_OFF 0X03 //开关 #define F_Mode_choose 0X01 //七彩 #define F_Brightness_100 0X07 // #define F_Brightness_10 0X09 #define F_Time_1h 0x0B #define F_Time_2h 0x05 #define F_Speed_add 0x0C #define F_Speed_dow 0x0A //#define RF_DATA P15 //RF433接收引脚,根据具体单片机定义引脚 //#define RF433_PIN GPIO_5 //RF433接收引脚,根据具体单片机定义引脚 //#define RF_DATA P15//RF433接收引脚,根据具体单片机定义引脚 #define RF_DATA xc_gpio_read_pin(RF433_PIN) //RF433接收引脚,根据具体单片机定义引脚 #define RF433_PIN GPIO_5 //RF433接收引脚,根据具体单片机定义引脚 #define RF_dd GPIO_0 // #define frames_time 70 //该值要大于68,68指代通过逻辑分析仪抓取一帧的时间 #define LongPress_time 100 //长按时间 100ms触发一次 #define Short_time 60 // 时间 60ms触发一次 //enum //{ // SHUT_DOWN, // POWER_ON //}; enum { LOW_LEVEL, //0 HIGH_LEVEL //1 }; enum { FAIL, SUCCESS }; enum { NOMATCH, MATCHED }; struct receive_data_page//接收数据包结构 { unsigned char idh; unsigned char idl; unsigned char key_value; }; struct address { unsigned char address_l; unsigned char address_h; }; union rf433_flag { struct { unsigned char study: 1; //表示占用1位 unsigned char long_press_flag:1; unsigned char short_press_flag:1; unsigned char current_level: 1; unsigned char sync_code: 1; unsigned char decode_success_flag:1; //松手检测标志 unsigned char new_remote_flag:1; unsigned char receive_finish: 1; unsigned char raised_long_press_flag: 1; } rf_receive_flag; unsigned char flag; }; //联合体赋初值 rf_flag = {0} extern union rf433_flag rf_flag; extern struct receive_data_page Receive_data_page; extern struct address Remote_adress; extern uint8_t match_success; extern unsigned char match_time_over_flag; extern uint32_t receive_data; extern uint32_t flag_1h; extern uint8_t is_time; extern uint32_t adress; extern unsigned char receive_data_cnt; extern uint8_t res_data; extern uint8_t adress_H; extern uint8_t adress_L; extern uint8_t adress_H_array[5]; extern uint8_t adress_L_array[5]; extern uint8_t long_flag_s; void rf433_receive(); void rf433_gpio_init(); void scan_433(); void Lock_Pwm7xd(); void Delay_50us(); void Encoder_key(); #endif