久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 7247|回復: 5
收起左側(cè)

還是關(guān)于指紋模塊AS608和51單片機的串口通信握手失敗問題 求指導

[復制鏈接]
ID:521054 發(fā)表于 2019-5-1 15:11 | 顯示全部樓層 |閱讀模式
串口初始化后   還是握手失敗
附上一些主要程序
  1. void Uart_Init(void)
  2. {
  3.     SCON=0x50;   //UART方式1:8位UART;   REN=1:允許接收
  4.     PCON=0x00;   //SMOD=0:波特率不加倍
  5.     TMOD=0x20;   //T1方式2,用于UART波特率
  6.     TH1=0xFD;
  7.     TL1=0xFD;   //UART波特率設(shè)置:FDFD,9600;FFFF,57600
  8.     TR1=1;         //允許T1計數(shù)
  9.     EA=1;
  10. }


  11. void Uart_Send_Byte(unsigned char c)//UART Send a byte
  12. {
  13.         SBUF = c;
  14.         while(!TI);                //發(fā)送完為1
  15.         TI = 0;
  16. }

  17. unsigned char Uart_Receive_Byte()//UART Receive a byteg
  18. {        
  19.         unsigned char dat;
  20.         while(!RI);         //接收完為1
  21.         RI = 0;
  22.         dat = SBUF;
  23.         return (dat);
  24. }//這些是串口初始化的程序



  25. void Device_Check(void)//握手
  26. {
  27.                 unsigned char i=0;
  28.                 FPM10A_RECEICE_BUFFER[9]=1;                                           //串口數(shù)組第九位可判斷是否通信正常
  29.                 LCD1602_Display(0xc0,"Loading",0,7);                   //設(shè)備加載中界面                                                           
  30.                 for(i=0;i<8;i++)                                                           //進度條式更新,看起來美觀
  31.                 {
  32.                         LCD1602_WriteDAT(42);                               //42對應ASIC碼的 *
  33.                         Delay_Ms(200);                                                           //控制進度條速度
  34.                 }                                                                        
  35.                 LCD1602_Display(0xc0,"Docking  failure",0,16);      //液晶先顯示對接失敗,如果指紋模塊插對的話會將其覆蓋        
  36.                 FPM10A_Cmd_Check();                                                                        //單片機向指紋模塊發(fā)送校對命令
  37.                 FPM10A_Receive_Data(12);                                                        //將串口接收到的數(shù)據(jù)轉(zhuǎn)存
  38.                  if(FPM10A_RECEICE_BUFFER[9] == 0)                                        //判斷數(shù)據(jù)低第9位是否接收到0
  39.                 {
  40.                         LCD1602_Display(0xc0,"Docking  success",0,16);        //符合成功條件則顯示對接成功
  41.                 }
  42. }


  43. //發(fā)送包頭
  44. void FPM10A_Cmd_Send_Pack_Head(void)
  45. {
  46.         int i;        
  47.         for(i=0;i<6;i++) //包頭
  48.    {
  49.      Uart_Send_Byte(FPM10A_Pack_Head[i]);   
  50.     }               
  51. }
  52. //發(fā)送指令
  53. void FPM10A_Cmd_Check(void)
  54. {
  55.         int i=0;
  56.         FPM10A_Cmd_Send_Pack_Head(); //發(fā)送通信協(xié)議包頭
  57.         for(i=0;i<10;i++)
  58.          {               
  59.                 Uart_Send_Byte(FPM10A_Get_Device[i]);
  60.           }
  61. }
  62. //接收反饋數(shù)據(jù)緩沖
  63. void FPM10A_Receive_Data(unsigned char ucLength)
  64. {
  65.   unsigned char i;

  66.   for (i=0;i<ucLength;i++)
  67.      FPM10A_RECEICE_BUFFER[i] = Uart_Receive_Byte();

  68. }



  69. code unsigned char FPM10A_Get_Device[10] ={0x01,0x00,0x07,0x13,0x00,0x00,0x00,0x00,0x00,0x1b};//口令驗證
  70. code unsigned char FPM10A_Pack_Head[6] = {0xEF,0x01,0xFF,0xFF,0xFF,0xFF};  //協(xié)議包頭
復制代碼



串口調(diào)試助手上接收到的數(shù)據(jù) T(JBI]FKTGIC_ZW)MQ$_3.png
接收到了的確是包頭和口令驗證里面的數(shù)據(jù)  但是最前面有一個00  不知道是為什么 然后程序就一直不能握手成功  lcd1602就顯示的對接失敗

求求大神指點啊   拜托了
回復

使用道具 舉報

ID:354697 發(fā)表于 2019-5-7 13:06 | 顯示全部樓層
同樣的問題,同樣的程序。我還沒解決,樓主解決了嗎
回復

使用道具 舉報

ID:528677 發(fā)表于 2019-5-7 14:44 來自觸屏版 | 顯示全部樓層
李拴 發(fā)表于 2019-5-7 13:06
同樣的問題,同樣的程序。我還沒解決,樓主解決了嗎

把指紋模塊連上位機,改下波特率為9600。并且51單片機晶振必須為11.0592,不然串口通信誤差太大 。
回復

使用道具 舉報

ID:354697 發(fā)表于 2019-5-7 19:25 | 顯示全部樓層
1qdeuuu000 發(fā)表于 2019-5-7 14:44
把指紋模塊連上位機,改下波特率為9600。并且51單片機晶振必須為11.0592,不然串口通信誤差太大 。

謝謝,不過我已經(jīng)這樣做了,上位機上修改了波特率9600,晶振也是11.0592,程序裝初值為0xfd,這樣單片機波特率也是9600,可還是無法通訊
回復

使用道具 舉報

ID:601213 發(fā)表于 2019-8-17 23:47 | 顯示全部樓層
李拴 發(fā)表于 2019-5-7 19:25
謝謝,不過我已經(jīng)這樣做了,上位機上修改了波特率9600,晶振也是11.0592,程序裝初值為0xfd,這樣單片機 ...

兄臺  通訊問題解決了嗎  最近在學這個也碰到了同樣的問題
回復

使用道具 舉報

ID:718485 發(fā)表于 2020-5-3 17:43 來自觸屏版 | 顯示全部樓層
請問樓主解決這個問題了嗎
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产女人与拘做受视频 | 欧美一级在线观看 | 在线视频一区二区 | 日韩综合 | 秋霞av国产精品一区 | 一区二区三区精品视频 | 日韩免费视频 | 久久久www成人免费精品张筱雨 | 欧美成人精品一区二区男人看 | 中文字幕免费观看 | 成人av在线播放 | 日韩成人精品在线观看 | 欧美久 | 亚洲最大的成人网 | 狠狠的干 | 亚洲一区二区久久 | 天天插天天操 | 日本高清不卡视频 | 一区二区在线不卡 | 一区二区三区高清在线观看 | 欧美成人一级视频 | 男女视频在线观看 | 亚洲精品一二三区 | 丝袜一区二区三区 | 国产激情在线播放 | 免费国产一区二区 | 黄色网一级片 | 日本一区二区三区免费观看 | 手机在线不卡av | 一区中文字幕 | 亚洲国产精品久久 | 亚洲一区日韩 | 亚洲最大av| 奇米av| 日本视频中文字幕 | 国产一区91精品张津瑜 | 国产精品久久久久国产a级 欧美日本韩国一区二区 | 九九伊人sl水蜜桃色推荐 | 欧美成视频 | 一区二区中文字幕 | 国产一区二区精品在线观看 |