高级会员

- 积分
- 898
- 金钱
- 898
- 注册时间
- 2012-6-29
- 在线时间
- 37 小时
|
1金钱
我想使用两个as608指纹模块,做数据共享问题, 用户在一个模块录入指纹信息, 特征值通过stm32上传平台再下发给另一个模块,但是下发的时候没响应
//刷指纹
void press_FR(void)
{
SearchResult seach;
u8 ensure;
char str[20];
vu16 j=0;
ensure = PS_GetImage();
if(ensure == 0x00) //获取图像成功
{
ensure = PS_GenChar(CharBuffer1);
if(ensure == 0x00) //生成特征成功
{
ensure = PS_HighSpeedSearch(CharBuffer1, 0, 99, &seach);
if(ensure == 0x00) //搜索成功
{
Finger1.Finger_action=0x03;
Finger1.ID=seach.pageID;
Finger1.num=0x00;
return_data_andriod();
// printf("\r\n指纹验证成功");
// sprintf(str, " 指纹编号为:%d得分:%d", seach.pageID, seach.mathscore);
// printf("\r\n %s \r\n",(u8*)str);
Finger1.Finger_action=0;
PS_UpChar(CharBuffer1);//特征值上传 测试有数据上传
delay_ms(2000);
for(j=0;j<USART3_RX_STA1;j++) //将上传的特征值放到另外一个串口打印出来
{ while((USART1->SR & 0X40) == 0);
USART1->DR = USART3_RX_BUF[j];
}
delay_ms(100);
Short_RX_STA=USART3_RX_STA1-12;
for(j=0;j<Short_RX_STA;j++)
{ Short_BUF[j] = USART3_RX_BUF[j+12];}
delay_ms(200);
PS_DownChar(1); //特征值下发给模块, 没反应, 连应答都没收到
delay_ms(1000);
for(j=0;j<USART3_RX_STA1;j++)
{ while((USART1->SR & 0X40) == 0);
USART1->DR = USART3_RX_BUF[j];}
// printf("\r\n 特征值下发 \r\n");
delay_ms(1500);
}
else
{
Finger1.Finger_action=0x03;
Finger1.ID=0;
Finger1.num=0xEF;
return_data_andriod();
printf("\r\n 指纹验证失败 \r\n");
Finger1.Finger_action=0;
delay_ms(1500);
}
}
else
{};
}
}
////////////////////////////////////下载特征值模板
//一个指纹特征值846个字节
///////////////////////////////////
u8 PS_DownChar(u8 BufferID)
{
u16 temp,i;
// u8 ensure;
// u8 *data;
SendHead();
SendAddr();
SendFlag(0x01);//命令包标识
SendLength(0x04);
Sendcmd(0x09);//上传特征值模板
MYUSART_SendData(BufferID);
temp = 0x01 + 0x04 + 0x09 + BufferID;
SendCheck(temp);
USART3_RX_STA = 0;
USART3_RX_STA1=0;
// data = JudgeStr(500);
// if(data)
// ensure = data[9];
// else
// ensure = 0xff;
// return ensure;
// for(i=0;i<Short_RX_STA;i++)
// {
// MYUSART_SendData(Short_BUF[i]);
// }
}
////////////////////////////////////上传特征值模板
//一个指纹特征值846个字节
///////////////////////////////////
u8 PS_UpChar(u8 BufferID)
{
u16 temp;
// u8 ensure;
// u8 *data;
SendHead();
SendAddr();
SendFlag(0x01);//命令包标识
SendLength(0x04);
Sendcmd(0x08);//上传特征值模板
MYUSART_SendData(BufferID);
temp = 0x01 + 0x04 + 0x08 + BufferID;
SendCheck(temp);
USART3_RX_STA = 0;
USART3_RX_STA1=0;
// data = JudgeStr(500);
// if(data)
// ensure = data[9];
// else
// ensure = 0xff;
// return ensure;
}
|
|