[C] 纯文本查看 复制代码
#include "IOinit.h"
#include "delay.h"
#include "as608.h"
#include "daiziku12864bingko.h"
char local_date=0;  //全局变量,当前箭头位置
void main()
{
                        io_init();
                        delay_ms(10);
                        finger_id=0;
//                        LCD1602_Init();   
                        daiziku12864bingko_init();                        //初始化液晶
//                        LCD1602_Display(0x80,"Fingerprint Test",0,16);         //液晶开机显示界面
                        display_characters(1,2,"正在开机");
                        Uart_Init();                        //初始化串口
                        Key_Init();                                //初始化按键
                        delay_ms(200);          //延时500MS,等待指纹模块复位
                        Device_Check();                           //校对指纹模块是否接入正确,液晶做出相应的提示
                        delay_ms(1000);                        //对接成功界面停留一定时间
                        display_characters(1,5,"    ");                                                             
                        while(1)
        {
                        /**************进入主功能界面****************/
//                        LCD1602_Display(0x80,"  search finger ",0,16);         //第一排显示搜索指纹
//                        LCD1602_Display(0xc0,"  Add     delete",0,16);         //添加和删除指纹
                        display_characters(1,1,"识别指纹");
                        display_characters(2,1,"添加指纹");
                        display_characters(3,1,"删除指纹");
                        if(local_date==0)
                {
                        display_characters(1,0,"**");
                        display_characters(2,0,"  ");
                        display_characters(3,0,"  ");
                        
                }
                        else if(local_date==1)
                {
                        display_characters(2,0,"**");
                        display_characters(1,0,"  ");
                        display_characters(3,0,"  ");
                }
                        else if(local_date==2)
                {
                        display_characters(3,0,"**");
                        display_characters(2,0,"  ");
                        display_characters(1,0,"  ");
                }                        
                        //确认键
                        if(KEY_OK == 0)
                {
                        delay_ms(5);
                        if(KEY_OK == 0)
                        {         
                        while(KEY_OK == 0);//等待松开按键                                                                
                        switch(local_date)
                                {
                        case 0:  //搜索指纹        
                        flag=1;     
                        display_characters(2,6,"搜索");
                        display_characters(3,6,"指纹");
                        AS608_Find_Fingerprint();                                                                                                                                                                                                
                        break;        
                        case 1:         //添加指纹
                        flag=1;        //flag=1,若指纹库为空,则可以直接添加指纹    
                        display_characters(2,6,"添加");
                        display_characters(3,6,"指纹");                        
                        if(AS608_number_of_fingers())
                                        {
                        flag=0;//flag置0由两重作用:
                        //1、指纹库中已有指纹,则需要搜索匹配成功,由AS608_Find_Fingerprint()将flag置1,才能添加指纹
                        //2、flag=0,则在搜索指纹成功后不执行开锁操作
                        AS608_Find_Fingerprint();
                                        }
                        if(flag)
                {
                        AS608_Add_Fingerprint();
                }
                        break;                                         
                        case 2:        //清空指纹
                        flag=0;        //1、在搜索指纹成功后不执行开锁操作;2、若搜索不成功,不执行清空操作
                        display_characters(2,6,"清空");
                        display_characters(3,6,"指纹");
                        AS608_Find_Fingerprint();//搜索匹配成功后,函数内部将flag置1,才能清空指纹库
                        if(flag)
                        {
                        AS608_Delete_All_Fingerprint();
                        }
                        break;
                                }
                        display_characters(2,5,"      ");
                        display_characters(3,5,"      ");
                        display_characters(4,0,"                ");
                        }
        }
                        //切换键
                        if(KEY_DOWN == 0)
        {
                        delay_ms(5);
                        if(KEY_DOWN == 0)
                {
                        while(KEY_DOWN == 0); //等待松开按键                                
                        if(local_date<=2)
                        {
                        local_date++;
                        if(local_date==3) local_date=0;                                                
                        }                
                }
        }                                                
                        delay_ms(100); //延时判断100MS检测一次                
        }
}