微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 请教指纹模块的高手或前辈程序哪里出错使指纹模块无应答

请教指纹模块的高手或前辈程序哪里出错使指纹模块无应答

时间:10-02 整理:3721RD 点击:

  1. #include <reg52.h>
  2. #include <string.h>

  3. typedef unsigned char uchar;
  4. typedef unsigned int uint;
  5. //#define MAXSIZE 50

  6. sbit LED1 = P1^0;
  7. sbit LED8 = P1^1;
  8. sbit LED2 = P1^2;
  9. sbit K1 = P2^7;
  10. uchar a = 0;
  11. uint summas;
  12. uchar sum[2];
  13. uchar confcode;           //指纹模块应答确认码
  14. //uchar  arr_mem[MAXSIZE];
  15. //uchar head, tail;

  16. //FINGERPRINT通信协议定义

  17. unsigned char  FP_Pack_Head[6] = {0xEF,0x01,0xFF,0xFF,0xFF,0xFF}; //协议包头

  18. unsigned char  PF_Verify_Pwd[10] = {0x01, 0x00, 0x07, 0x13, 0X00, 0X00, 0X00, 0X00, 0x00, 0x1b};  // 验证口令, 模块才正常工作

  19. unsigned char  FP_Get_Img[6] = {0x01,0x00,0x03,0x01,0x00,0x05};         //获得指纹图像

  20. unsigned char  FP_Change_Com[8] = {0x01,0x0,0x05,0x0e,0x04,0x01,0x0,0x19}; //修改波特率 9600   
  21.    
  22. unsigned char  FP_Templete_Num[6] ={0x01,0x00,0x03,0x1D,0x00,0x21 };  //获得模版总数

  23. unsigned char  FP_Search[11]={0x01,0x0,0x08,0x04,0x01,0x0,0x0,0x03,0xA1,0x0,0xB2}; //搜索指纹搜索范围0 - 929

  24. unsigned char  FP_Search_0_9[11]={0x01,0x00,0x08,0x04,0x01,0x00,0x00,0x00,0x13,0x00,0x21};  //搜索0-9号指纹

  25. unsigned char  FP_Img_To_Buffer1[7]={0x01,0x00,0x04,0x02,0x01,0x00,0x08};        //将图像放入到BUFFER1

  26. unsigned char  FP_Img_To_Buffer2[7]={0x01,0x00,0x04,0x02,0x02,0x00,0x09};        //将图像放入到BUFFER2

  27. unsigned char  FP_Reg_Model[6]={0x01,0x0,0x03,0x05,0x0,0x09};         //将BUFFER1跟BUFFER2合成特征模版

  28. unsigned char code FP_Delet_All_Model[6]={0x01,0x0,0x03,0x0d,0x00,0x11}; //删除指纹模块里所有的模版

  29. volatile unsigned char xdata FP_Save_Finger[9]={0x01,0x00,0x06,0x06,0x01,0x00,0x0B,0x00,0x19}; //将BUFFER1中的特征码存放到指定的位置

  30. volatile unsigned char xdata FP_Delete_Model[10]={0x01,0x00,0x07,0x0C,0x0,0x0,0x0,0x1,0x0,0x0}; //删除指定的模版


  31. void UART_Init()  // 通信波特率9600
  32. {
  33.         TMOD = 0x20;
  34. //        PCON = 0x80;
  35.         TH1  = 0xfd;
  36.         TL1  = 0xfd;
  37.         TR1  = 1;
  38.         SM0  = 0;
  39.         SM1  = 1;
  40.         REN  = 1;
  41.         ES   = 1;
  42.         EA   = 1;
  43. }
  44. void UART_Send_Byte(uchar c) // 发送一个字节的数据
  45. {
  46. //        TI = 0;
  47.         SBUF = c;
  48.         while(!TI);
  49.         TI = 0;
  50. }

  51. void Delay_1ms(uint z)
  52. {
  53.         uchar x, y;
  54.         for (x = z; x > 0; x--)
  55.                 for (y = 110; y > 0; y--);       
  56. }

复制代码


FPM10A,   四根线,  VCC, GND , TXD, RXD

   我就是这样连接的, 用电脑串口助手就可以接收指纹模块的应答, 可是将TXD,RXD连接到单片机上指纹就没有反应了, 好像就是被阻断了。

   总共就四根线, 没有接错 ,  指纹模块的电源线要不要接什么元器件?  电阻或者电容?   我仔细说说:
会不会有可能外围电路多导致单片机的TXD,RXD和其他模块的TXD,RXD连接异常。   因为从现象看好像模块收不到单片机发送的数据, 用串口中断判断RI没有置1

这些都没问题, 应该是程序的问题

对着程序,检查接线

灯一体化 上电感应指纹模块


Hello!你的问题解决没,我也有出现这个问题,不知道你有解决的思路没

我也遇到这个问题了,不知小编解决了没有

小编,你问题解决没

就这些么?下到板子里能用么

小编,解决了吗?我这也出现相同的问题了,如果解决了,可以告诉我是怎么解决的吗?

小编问题解决了

怎么解决的啊?我也遇到这问题,郁闷

解决了吗?我也遇到这样的问题,求助

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top