标题: 请问这个单片机指纹模块AS608程序怎么显示不出来? [打印本页]

作者: 风之痕于梦想    时间: 2022-2-27 16:18
标题: 请问这个单片机指纹模块AS608程序怎么显示不出来?
下面这段代码的ID显示不出来

typedef struct  
{
    uint pageID;//指纹ID
    uint mathscore;//匹配得分
}SearchResult;

//高速搜索PS_HighSpeedSearch
//功能:以 CharBuffer1或CharBuffer2中的特征文件高速搜索整个或部分指纹库。
//          若搜索到,则返回页码,该指令对于的确存在于指纹库中 ,且登录时质量
//          很好的指纹,会很快给出搜索结果。
//参数:  BufferID, StartPage(起始页),PageNum(页数)
//说明:  模块返回确认字+页码(相配指纹模板)
uchar PS_HighSpeedSearch(uchar BufferID,uint StartPage,uint PageNum,SearchResult *p)
{
    uint temp;
  uint  ensure;
    uchar  *rdata;
    SendHead();
    SendAddr();
    SendFlag(0x01);//命令包标识
    SendLength(0x08);
    Sendcmd(0x1b);
    UART2_SendData(BufferID);
    UART2_SendData(StartPage>>8);
    UART2_SendData(StartPage);
    UART2_SendData(PageNum>>8);
    UART2_SendData(PageNum);
    temp = 0x01+0x08+0x1b+BufferID
    +(StartPage>>8)+(uchar)StartPage
    +(PageNum>>8)+(uchar)PageNum;
    SendCheck(temp);
    rdata=JudgeStr(2000);
     if(rdata)
    {
        ensure=rdata[9];
        p->pageID     =   (uint)(rdata[10]<<8) +rdata[11];
        p->mathscore=        (uint)(rdata[12]<<8) +rdata[13];
    }
    else
        ensure=0xff;
    return ensure;
}


SysPara AS608Para;//指纹模块AS608参数
//刷指纹
void press_FR(void)
{
    SearchResult seach;
    uchar ensure;
//    char str[20];
    while(key_num!=1)
    {
        key_num=KEY_Scan(0);
        ensure=PS_GetImage();
        if(ensure==0x00)//获取图像成功
        {   
            ensure=PS_GenChar(CharBuffer1);
            if(ensure==0x00) //生成特征成功
            {            
                ensure=PS_HighSpeedSearch(CharBuffer1,0,99,&seach);
                if(ensure==0x00)//搜索成功
                {               
                OLED_ShowString(0,2,"  ",16);
        OLED_ShowCHinese(16,2,0);//指纹验证成功
              OLED_ShowCHinese(32,2,1);
              OLED_ShowCHinese(48,2,13);
                OLED_ShowCHinese(64,2,14);
        OLED_ShowCHinese(80,2,26);
              OLED_ShowCHinese(96,2,27);   
        OLED_ShowString(112,2,"  ",16);               

        OLED_ShowString(0,4,"Your ID is",16);
        OLED_ShowString(88,4,(u8*)seach.pageID+0x30,16);   这里的ID这样写在OLED12864上面没有任何显示,是哪里错了吗?
                Delay_Ms(3000);
                }   
            }
            else
                {};
  
        }
    }   
            OLED_Clear();
            Start_Menu();
}

作者: 风之痕于梦想    时间: 2022-2-27 16:18
OLED_ShowString(88,4,(u8*)seach.pageID+0x30,16);   这里的ID这样写在OLED12864上面没有任何显示,是哪里错




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1