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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 7114|回復(fù): 5
打印 上一主題 下一主題
收起左側(cè)

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

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
串口初始化后   還是握手失敗
附上一些主要程序
  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計(jì)數(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++)                                                           //進(jìn)度條式更新,看起來(lái)美觀
  31.                 {
  32.                         LCD1602_WriteDAT(42);                               //42對(duì)應(yīng)ASIC碼的 *
  33.                         Delay_Ms(200);                                                           //控制進(jìn)度條速度
  34.                 }                                                                        
  35.                 LCD1602_Display(0xc0,"Docking  failure",0,16);      //液晶先顯示對(duì)接失敗,如果指紋模塊插對(duì)的話會(huì)將其覆蓋        
  36.                 FPM10A_Cmd_Check();                                                                        //單片機(jī)向指紋模塊發(fā)送校對(duì)命令
  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);        //符合成功條件則顯示對(duì)接成功
  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};//口令驗(yàn)證
  70. code unsigned char FPM10A_Pack_Head[6] = {0xEF,0x01,0xFF,0xFF,0xFF,0xFF};  //協(xié)議包頭
復(fù)制代碼



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

求求大神指點(diǎn)啊   拜托了
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:354697 發(fā)表于 2019-5-7 13:06 | 只看該作者
同樣的問題,同樣的程序。我還沒解決,樓主解決了嗎
回復(fù)

使用道具 舉報(bào)

板凳
ID:528677 發(fā)表于 2019-5-7 14:44 來(lái)自手機(jī) | 只看該作者
李拴 發(fā)表于 2019-5-7 13:06
同樣的問題,同樣的程序。我還沒解決,樓主解決了嗎

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

使用道具 舉報(bào)

地板
ID:354697 發(fā)表于 2019-5-7 19:25 | 只看該作者
1qdeuuu000 發(fā)表于 2019-5-7 14:44
把指紋模塊連上位機(jī),改下波特率為9600。并且51單片機(jī)晶振必須為11.0592,不然串口通信誤差太大 。

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

使用道具 舉報(bào)

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

兄臺(tái)  通訊問題解決了嗎  最近在學(xué)這個(gè)也碰到了同樣的問題
回復(fù)

使用道具 舉報(bào)

6#
ID:718485 發(fā)表于 2020-5-3 17:43 來(lái)自手機(jī) | 只看該作者
請(qǐng)問樓主解決這個(gè)問題了嗎
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 天天操人人干 | 日韩精品一区二区三区免费观看 | 日韩精品在线观看一区二区三区 | 国产精品性做久久久久久 | 亚洲日韩中文字幕一区 | 久久视频精品 | 欧美一a| a级片网站 | 亚洲精品久久久9婷婷中文字幕 | av一区二区三区四区 | 亚洲精品女人久久久 | 欧美日韩电影一区二区 | 日韩欧美不卡 | 亚洲精品乱码久久久久久黑人 | 午夜影视免费片在线观看 | 欧美一区成人 | 国产japanhdxxxx麻豆 | 久久久高清 | 女女百合av大片一区二区三区九县 | 亚洲精品乱码久久久久久黑人 | 97精品超碰一区二区三区 | 日韩欧美中文在线 | 欧美日韩精品久久久免费观看 | aaaaaaa片毛片免费观看 | 日韩中文字幕在线播放 | 国产精品美女视频 | 蜜臀久久99精品久久久久野外 | 瑞克和莫蒂第五季在线观看 | 亚洲免费成人 | 一级在线毛片 | 欧美视频在线播放 | 久久国产精品视频 | 日韩精品一区二区三区四区视频 | 91视频观看 | 国产免费xxx | 91精品国产综合久久久久久丝袜 | 在线国产一区二区 | 91视频88av | 欧美成人免费在线 | 亚洲成av人片在线观看无码 | www日本高清 |