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

標(biāo)題: as608與51單片機(jī)通信失敗原因,求大神 [打印本頁(yè)]

作者: Leeyoung    時(shí)間: 2019-4-16 23:21
標(biāo)題: as608與51單片機(jī)通信失敗原因,求大神
    這兩天在學(xué)習(xí)as608指紋模塊,商家送的例程正在研究學(xué)習(xí)。發(fā)現(xiàn)模塊通過(guò)串口與電腦上位機(jī)可以正常使用,增刪查指紋。但是與51單片機(jī)一直卡在單片機(jī)發(fā)送校對(duì)命令,不能成功接收返回的數(shù)據(jù)包。想了很久弄不明白什么問(wèn)題,在這里請(qǐng)教大神。(個(gè)人考慮還是中斷不能成功進(jìn)入導(dǎo)致的)
附上部分代碼:
  1. void FPM10A_Cmd_Send_Pack_Head(void)
  2. {
  3.         int i;        
  4.         for(i=0;i<6;i++) //包頭
  5.    {
  6.      Uart_Send_Byte(FPM10A_Pack_Head[i]);   
  7.     }               
  8. }
  9. //發(fā)送指令
  10. void FPM10A_Cmd_Check(void)
  11. {
  12.         int i=0;
  13.         FPM10A_Cmd_Send_Pack_Head(); //發(fā)送通信協(xié)議包頭
  14.         for(i=0;i<10;i++)
  15.          {               
  16.                 Uart_Send_Byte(FPM10A_Get_Device[i]);
  17.           }
  18. }
  19. //接收反饋數(shù)據(jù)緩沖
  20. void FPM10A_Receive_Data(unsigned char ucLength)
  21. {
  22.   unsigned char i;

  23.   for (i=0;i<ucLength;i++)
  24.      FPM10A_RECEICE_BUFFER[i] = Uart_Receive_Byte();

  25. }



  26. void Device_Check(void)
  27. {
  28.                 unsigned char i=0,j,k,m;
  29.                 FPM10A_RECEICE_BUFFER[9]=1;                                           //串口數(shù)組第九位可判斷是否通信正常
  30.                 LCD1602_Display(0xc0,"Loading",0,7);                   //設(shè)備加載中界面                                                           
  31.                 for(i=0;i<8;i++)                                                           //進(jìn)度條式更新,看起來(lái)美觀
  32.                 {
  33.                         lcd_wdat(42);                               //42對(duì)應(yīng)ASIC碼的 *
  34.                         delay(200);                                                           //控制進(jìn)度條速度
  35.                 }                                                                        
  36. //                LCD1602_Display(0xc0,"Docking  failure",0,16);      //液晶先顯示對(duì)接失敗,如果指紋模塊插對(duì)的話會(huì)將其覆蓋        


  37.                 FPM10A_Cmd_Check();                                                                        //單片機(jī)向指紋模塊發(fā)送校對(duì)命令
  38.                 [b]FPM10A_Receive_Data(12);[/b]                                                        //將串口接收到的數(shù)據(jù)轉(zhuǎn)存,不能成功接收數(shù)據(jù)
  39.                 LCD1602_Display(0xc0,"Docking  failure",0,16);

  40.                 if(FPM10A_RECEICE_BUFFER[9] == 13)                                        //判斷數(shù)據(jù)低第9位是否接收到0
  41.                 {
  42.                         LCD1602_Display(0xc0,"Docking  success",0,16);        //符合成功條件則顯示對(duì)接成功
  43.                 }                    
  44. }
復(fù)制代碼


另附上中斷程序:
  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. }
復(fù)制代碼

實(shí)在想不明白了,求大神指教一二。


作者: wulin    時(shí)間: 2019-4-17 06:21
本帖最后由 wulin 于 2019-4-17 10:14 編輯

void Uart_Init(void)
{
    SCON=0x50;   //UART方式1:8位UART;   REN=1:允許接收
    PCON&=0x7F;   //SMOD=0:波特率不加倍
    TMOD=0x20;   //T1方式2,用于UART波特率
    TH1=0xFD;
    TL1=0xFD;   //UART波特率設(shè)置:FDFD,9600;FFFF,57600
    TR1=1;         //允許T1計(jì)數(shù)
        ET1 = 0;                //禁止定時(shí)器1中斷
    EA=1;
}
作者: caodaxia    時(shí)間: 2019-4-17 09:53
想要響應(yīng)串口中斷,先在初始化里加上串口中斷使能:ES    = 1;                  //打開(kāi)串口中斷
作者: Leeyoung    時(shí)間: 2019-4-17 22:47
caodaxia 發(fā)表于 2019-4-17 09:53
想要響應(yīng)串口中斷,先在初始化里加上串口中斷使能:ES    = 1;                  //打開(kāi)串口中斷

加上這個(gè)以后整個(gè)程序就直接亂掉了,直接進(jìn)到后面的部分了,握手還是沒(méi)有成功,上位機(jī)測(cè)試也沒(méi)有返回包
作者: Leeyoung    時(shí)間: 2019-4-17 22:48
wulin 發(fā)表于 2019-4-17 06:21
void Uart_Init(void)
{
    SCON=0x50;   //UART方式1:8位UART;   REN=1:允許接收

這樣改啥意思啊,沒(méi)看懂這樣改的原因
作者: Masrer    時(shí)間: 2019-4-26 20:33
樓主  請(qǐng)問(wèn)你的問(wèn)題解決了么?我也遇到了相同的問(wèn)題
作者: 李拴    時(shí)間: 2019-5-13 13:11
樓主解決了么,我也一直卡在這。
作者: az2152869    時(shí)間: 2019-5-17 01:54
1.檢查晶振是否為11.0592M,12M晶振在使用9600波特率時(shí)會(huì)有誤差,導(dǎo)致數(shù)據(jù)發(fā)送錯(cuò)誤,11.0592M晶振在波特率為9600到57600之間發(fā)送的數(shù)據(jù)都是準(zhǔn)確的。可以使用串口助手進(jìn)行調(diào)試,發(fā)送一個(gè)字節(jié)看發(fā)送的數(shù)據(jù)是否正確。
2.把AS608的波特率設(shè)置為9600,我也不知道為什么,我i這樣設(shè)置后就可以通信了。
作者: wojiaolisen.123    時(shí)間: 2019-6-21 20:37
Masrer 發(fā)表于 2019-4-26 20:33
樓主  請(qǐng)問(wèn)你的問(wèn)題解決了么?我也遇到了相同的問(wèn)題

兄弟你這個(gè)問(wèn)題解決了嗎,卡在這半天了

作者: 103實(shí)驗(yàn)室    時(shí)間: 2019-11-6 16:56
解決了嗎?求指教

作者: ssruos    時(shí)間: 2019-11-16 19:31
樓主,這個(gè)問(wèn)題你解決了嗎?我也遇到了

作者: 超級(jí)無(wú)敵磊果果    時(shí)間: 2019-12-4 21:26
我知道你的問(wèn)題可能出在哪里!!!!我也是指紋模塊同樣的問(wèn)題,折磨了我兩天,剛剛終于發(fā)現(xiàn)問(wèn)題了,
作者: 超級(jí)無(wú)敵磊果果    時(shí)間: 2019-12-4 21:34
我知道你的問(wèn)題出現(xiàn)在哪里!!!!
我也是玩指紋模塊,同樣的問(wèn)題,折磨了我兩天了,就在剛剛解決了,剛好之前查百度看到有人在這里問(wèn),過(guò)來(lái)分享下。
具體情況是這樣的:使用上位機(jī)可以錄指紋,驗(yàn)證指紋啥的,但是跑源碼就總是彈出錯(cuò)誤,提示返回碼錯(cuò)誤,用串口助手有時(shí)候有消息返回,有時(shí)候沒(méi)有,后來(lái)終于發(fā)現(xiàn)問(wèn)題所在了,問(wèn)題就在于使用上位機(jī)成功的那個(gè)波特率是自動(dòng)檢測(cè)的,但是你程序里面的波特率是寫死了的,所以上位機(jī)不論哪個(gè)波特率都可以檢測(cè)到,但是程序就是不行,所以必須波特率對(duì)應(yīng)才行;修改方法,使用上位機(jī)查看出指紋模塊波特率,之后修改代碼里面的波特率;方法二在上位機(jī)上修改指紋模塊波特率為程序中的波特率,對(duì)應(yīng)上就行了
作者: 大魔王小張    時(shí)間: 2020-3-7 10:02
一定要注意晶振 不然可能會(huì)出現(xiàn)缺位或者無(wú)法響應(yīng)  設(shè)置波特率為9600傳輸正常
作者: hello_syl    時(shí)間: 2020-3-21 19:27
az2152869 發(fā)表于 2019-5-17 01:54
1.檢查晶振是否為11.0592M,12M晶振在使用9600波特率時(shí)會(huì)有誤差,導(dǎo)致數(shù)據(jù)發(fā)送錯(cuò)誤,11.0592M晶振在波特率 ...

設(shè)置成9600后直接就顯示模塊接入失敗了········
作者: hello_syl    時(shí)間: 2020-3-22 16:32
大魔王小張 發(fā)表于 2020-3-7 10:02
一定要注意晶振 不然可能會(huì)出現(xiàn)缺位或者無(wú)法響應(yīng)  設(shè)置波特率為9600傳輸正常

在普中單核的51開(kāi)發(fā)板上,設(shè)置9600在最開(kāi)始的時(shí)候校對(duì)模塊接入都直接顯示失敗了······按正常的56700,可以通信,但是指紋就是掃不出來(lái)。
作者: 戈戈登    時(shí)間: 2020-3-30 21:35
樓主問(wèn)題解決了嗎,我也遇到這個(gè)問(wèn)題了,上位機(jī)測(cè)試沒(méi)問(wèn)題,波特率也設(shè)置了9600,但是就是無(wú)法與單片機(jī)通信
作者: sduking    時(shí)間: 2020-3-30 22:43
1、確認(rèn)單片機(jī)的晶振和你選用的波特率匹配,
2、注意通信協(xié)議中的奇偶校驗(yàn)位,停止位,校驗(yàn)和
作者: suifengyu    時(shí)間: 2020-3-30 23:17
戈戈登 發(fā)表于 2020-3-30 21:35
樓主問(wèn)題解決了嗎,我也遇到這個(gè)問(wèn)題了,上位機(jī)測(cè)試沒(méi)問(wèn)題,波特率也設(shè)置了9600,但是就是無(wú)法與單片機(jī)通信

我的也是這樣
作者: HAYA    時(shí)間: 2020-5-3 21:39
請(qǐng)問(wèn)樓主這個(gè)問(wèn)題解決了么?上位機(jī)測(cè)試、串口助手調(diào)試都正常,波特率也設(shè)置成9600,依然不能與單片機(jī)進(jìn)行通信
作者: 清風(fēng)無(wú)慮    時(shí)間: 2020-12-4 10:37
HAYA 發(fā)表于 2020-5-3 21:39
請(qǐng)問(wèn)樓主這個(gè)問(wèn)題解決了么?上位機(jī)測(cè)試、串口助手調(diào)試都正常,波特率也設(shè)置成9600,依然不能與單片機(jī)進(jìn)行通 ...

我也遇到了這個(gè)問(wèn)題,請(qǐng)問(wèn)你解決了嗎

作者: y434776771    時(shí)間: 2020-12-4 10:41
超級(jí)無(wú)敵磊果果 發(fā)表于 2019-12-4 21:34
我知道你的問(wèn)題出現(xiàn)在哪里!!!!
我也是玩指紋模塊,同樣的問(wèn)題,折磨了我兩天了,就在剛剛解決了,剛好 ...

獎(jiǎng)勵(lì)40 個(gè)了 哦
作者: c51yangjunxi    時(shí)間: 2021-5-7 00:07
hello_syl 發(fā)表于 2020-3-22 16:32
在普中單核的51開(kāi)發(fā)板上,設(shè)置9600在最開(kāi)始的時(shí)候校對(duì)模塊接入都直接顯示失敗了······按正常的5670 ...

請(qǐng)問(wèn)您的問(wèn)題解決了嗎?我指紋一直識(shí)別不出。和你的情況一樣

作者: 清風(fēng)慕雨    時(shí)間: 2022-12-27 19:23
2022年了   這個(gè)問(wèn)題我來(lái)回答    這百分百是你指紋模塊的波特率不是9600導(dǎo)致的  用上位機(jī)設(shè)置一下波特率就行了
作者: 鄭偉雄    時(shí)間: 2023-3-13 16:33
清風(fēng)慕雨 發(fā)表于 2022-12-27 19:23
2022年了   這個(gè)問(wèn)題我來(lái)回答    這百分百是你指紋模塊的波特率不是9600導(dǎo)致的  用上位機(jī)設(shè)置一下波特率就 ...

2023年,要怎么設(shè)置波特率
作者: wym2023    時(shí)間: 2023-3-18 15:24
鄭偉雄 發(fā)表于 2023-3-13 16:33
2023年,要怎么設(shè)置波特率

我也是一樣的問(wèn)題,請(qǐng)問(wèn)解決了嗎?

作者: wym2023    時(shí)間: 2023-3-18 15:40
az2152869 發(fā)表于 2019-5-17 01:54
1.檢查晶振是否為11.0592M,12M晶振在使用9600波特率時(shí)會(huì)有誤差,導(dǎo)致數(shù)據(jù)發(fā)送錯(cuò)誤,11.0592M晶振在波特率 ...

AS608的默認(rèn)的波特率是57600,請(qǐng)問(wèn)怎么更改模塊的波特率?謝謝指點(diǎn)!
作者: HANHANHAN1111    時(shí)間: 2023-4-25 12:46
請(qǐng)問(wèn)您解決了嗎,我也出現(xiàn)這種問(wèn)題了一直無(wú)法實(shí)現(xiàn)通信。




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 中文字幕黄色大片 | 亚洲福利 | 日本精品久久久一区二区三区 | 精品久久久久久久久久 | 不卡视频在线 | 天堂一区二区三区 | 2021天天干夜夜爽 | 国产精品视频免费观看 | 黄色网址在线免费观看 | www.干| 欧美在线视频一区 | 欧美色性| 日韩精品在线一区 | 蜜桃视频在线观看免费视频网站www | 日韩精品一区二区三区 | 亚洲一区电影 | www.日日操 | 国产高清在线 | 亚洲一区二区三区免费在线 | 欧美日韩亚洲二区 | 亚洲三区在线观看 | 最新超碰| 日韩精品一区二区三区中文字幕 | 国产精品欧美一区二区 | 亚洲一区二区中文字幕 | 成人在线免费观看 | 精品综合 | 成人在线电影在线观看 | 欧美日韩精品在线免费观看 | 亚洲男人的天堂网站 | 男人的天堂中文字幕 | 国产黄色免费网站 | 青青草社区 | 欧美精品在线播放 | 中文字幕精品视频 | 日韩男人天堂 | 日日日视频 | 老外黄色一级片 | 久久精品一级 | 一区二区小视频 | 国产精品视频导航 |