/*****************************键盘码的顺序**********************************/
/* 0xee,0xde,0xbe,0x7e 0-3 */
/* 0xed,0xdd,0xbd,0x7d 4-7 */
/* 0xeb,0xdb,0xbb,0x7b 8-b */
/* 0xe7,0xd7,0xb7,0x77 c-f */
/* 密码输入0-d;e,f 作为保留,f暂时用作确认 */
/* 连线:P0接键盘, P2接数码管(p2.7接H) */
/*************************************************************************/
#include
#define uchar unsigned char
#define uint unsigned int
sbit P30=P3^0;
uint a;
uint fre;//控制频率
uint flag;
uint time=0; //控制中断时间
uchar count=0;//控制多少秒
uint t;
uint ff=0; //判断是否验证成功
uint fff=3;//判断用户输入次数
uint kaiguan=0;//判断电机是否开关的
/***********************步进电机****************************/
void delay(unsigned int t);
unsigned char code RUN[8]={0xf1,0xf3,0xf2,0xf6,0xf4,0xfc,0xf8,0xf9}; //步进电机相序表
//步进电机驱动
void motor_ffw()
{
if(kaiguan==1)
{
unsigned char i;
for (i=0; i<8; i++) //一个周期转3.75*8=30度
{
P1 = RUN[i]&0x1f; //取数据
delay(15); //调节转速
}
}
}
/***********************************************************/
//八段管显示码
code unsigned char LEDMAP[]={
~0x3f, ~0x06, ~0x5b, ~0x4f, ~0x66, ~0x6d, ~0x7d, ~0x07,
~0x7f, ~0x6f, ~0x77, ~0x7c, ~0x39, ~0x5e, ~0x79, ~0x71