新手入门
- 积分
- 3
- 金钱
- 3
- 注册时间
- 2026-1-28
- 在线时间
- 0 小时
|
本帖最后由 FCxl 于 2026-1-28 16:30 编辑
在使用stm32f103c8t6最小系统板开发AS608指纹模块的过程中发现模块存储指纹特征到flash中的时候模块应答包反馈写flash出错是什么问题,而且整个系统板就只连接了指纹模块和USB转TTL,指纹模块接在串口1上,USB转TTL接在串口2上
指纹添加函数:
void Finger_add()
{
Finger_id=0;//重置指纹id
Finger_getimage();//单片机向指纹模块发送获取图像命令
Finger_buffer(12);//接收应答包
HAL_UART_Transmit(&huart2, (uint8_t *)Finger_receivebufferdata, 12, 200);//发送应答包到电脑
if(Finger_receivebufferdata[9]==0x00)//判断接收到的确认码,等于0指纹获取成功
{
HAL_Delay(100);
Finger_tobuffer1();//转换特征码并保存到Buffer1中
Finger_buffer(12);
HAL_UART_Transmit(&huart2, (uint8_t *)Finger_receivebufferdata, 12, 200);
HAL_Delay(1000);
Finger_getimage();//单片机向指纹模块发送获取图像命令
Finger_buffer(12);
HAL_UART_Transmit(&huart2, (uint8_t *)Finger_receivebufferdata, 12, 200);
if(Finger_receivebufferdata[9]==0x00)//判断接收到的确认码,等于0指纹获取成功
{
HAL_Delay(200);
Finger_tobuffer2();//将图像转换成特征码存放在Buffer2中
Finger_buffer(12);
HAL_UART_Transmit(&huart2, (uint8_t *)Finger_receivebufferdata, 12, 200);
Finger_regmodel();//合并指纹模版
Finger_buffer(12);
HAL_UART_Transmit(&huart2, (uint8_t *)Finger_receivebufferdata, 12, 200);
Finger_save(Finger_id);//保存指纹
Finger_buffer(12);
HAL_UART_Transmit(&huart2, (uint8_t *)Finger_receivebufferdata, 12, 200);
HAL_Delay(1000);
Finger_id=Finger_id+1;//指纹id+1
}
}
}
模块应答包:

|
|