/**********************************************************************
红外遥控锁全部程序
***********************************************************************/
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
uchar code table1[]={0x08,0x10,0x20,0x40}; //正转
uchar code table2[]={0x40,0x20,0x10,0x08}; //反转
sbit hw_cs=P3^3; //定义红外线接收器的输出引脚,INT1口
sbit beep=P2^0; //蜂鸣器使能端
sbit led0=P0^0;
sbit led1=P0^1;
sbit led2=P0^2;
uchar hw_data[33]={0};
uchar hw_code[4]={0};
uchar hw_temp[4]={0};
uchar mima[5]={0}; //定义密码接收数组
uchar mima_check1[5]={1,1,1,1,1}; //存放修改的密码
uchar mima_check2[5]={0,0,0,0,0}; //存放修改的密码
uchar mima_check[]={0x46,0x16,0x0c,0x18,0x5e};
uchar p;
uchar startflag;
uchar hw_jsok;
uchar hw_time;
uchar mode_flag; //定义模式标志位,复位
uchar direction_key; //旋转标志位
uchar mima_st; //接收密码状态
uchar check; //密码校验结果标志
uchar _check;
uchar direction; //电机旋转方向标志位
uchar worning; //告警计数标识位
uchar tms; //密码修改数组控制标志位
uchar mc_flag=1; //密码修改标志位
void init(); //定时器0和外部中断1初始化
void delay(uchar xms); //
void beep_fun(); //蜂鸣器
void hw_data_pro();
void mima_fun(); //密码接收函数
void mima_check_fun(); //密码校验函数
void mima_check_fun2();
void motor(); //电机转动90度,正反方向(标志位来决定方向)
- 1
- 2
前往页