*******处理函数 *****/ void Manage_function(void) { if(flag_cun == 1) { STMFLASH_Read(FLASH_SAVE_ADDR+14,&f_id_num,1); //读出指纹总数 f_id = f_id_num+1; if(FPM10A_Add_Fingerprint(f_id) != 0) //添加指纹成功 { STMFLASH_Write(FLASH_SAVE_ADDR+14,&f_id,1); if(flag_door1_use == 0) { falg_num1 = f_id; flag_door1_use = 1; DOOR = 1; flag_timer_begin_1s = 1; Delay_ms(1000); DOOR = 0; flag_cun = 0; } else if(flag_door2_use == 0) { falg_num2 = f_id; flag_timer_begin_1s = 1; flag_door2_use = 1; DOOR2 = 1; Delay_ms(1000); DOOR2 = 0; flag_cun = 0; } else if(flag_door3_use == 0) { falg_num3 = f_id; flag_timer_begin_1s = 1; flag_door3_use = 1; DOOR3 = 1; Delay_ms(1000); DOOR3 = 0; flag_cun = 0; } } } if(flag_qu == 1) { f_id = FPM10A_Find_Fingerprint(); //搜索指纹 if(f_id != 0) //搜索成功,开门 { if(FPM10A_Delete_One_Fingerprint(f_id) != 0) //删除成功 { if(falg_num1 == f_id) { DOOR = 1; Delay_ms(1000); DOOR = 0; flag_door1_use = 0; flag_qu = 0; } else if(falg_num2 == f_id) { DOOR2 = 1; Delay_ms(1000); DOOR2 = 0; flag_door2_use = 0; flag_qu = 0; } else if(falg_num3 == f_id) { DOOR3 = 1; Delay_ms(1000); DOOR3 = 0; flag_door3_use = 0; flag_qu = 0; } } } } if(flag_door1_use == 1 && FK1 == 0) { LED1 = 0; flag_timer_begin_1s = 0; } else { LED1 = 1; } if(flag_door2_use == 1 && FK2 == 0) { LED2 = 0; flag_timer_begin_1s = 0; } else { LED2 = 1; } if(flag_door3_use == 1 && FK3 == 0) { LED3 = 0; flag_timer_begin_1s = 0; } else { LED3 = 1; } if(flag_1s == 1) { flag_1s = 0; flag_timer_begin_1s = 0; UsartPrintf(USART1,"请关闭柜门"); flag_timer_begin_1s = 1; } }
|