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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

請教關(guān)于單片機(jī)串口程序調(diào)試的問題

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:963748 發(fā)表于 2021-11-12 11:05 | 只看該作者 |只看大圖 回帖獎勵 |倒序?yàn)g覽 |閱讀模式
程序小白請教大佬,串口發(fā)送指令只執(zhí)行一次功能,后面發(fā)送的指令串口助手能正常發(fā)送接收,但功能沒出來,程序怎么修改?
主要是我想發(fā)送不同長度的指令,指令長度一樣的話程序是沒問題的

51hei截圖_20211112105611.png (16.36 KB, 下載次數(shù): 28)

部分程序

部分程序

51hei截圖_20211112105659.png (8.82 KB, 下載次數(shù): 32)

部分程序

部分程序
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:624769 發(fā)表于 2021-11-12 14:30 | 只看該作者
首先需要確認(rèn),你的 i 是全局變量,
然后,
你即使 sflag == FALSE 也要 i=0
不然,只要有一個(gè)錯(cuò)誤指令,后面你的指令位置都不會從0開始,永遠(yuǎn)指令都是錯(cuò)誤的。

通常有兩個(gè)方案,
1)按照波特率的 105倍計(jì)時(shí),超過后,判斷超時(shí)(表示所有指令都已經(jīng)接受完畢),開始驗(yàn)證指令,驗(yàn)證完畢后,不管指令對不對,都把 i=0 準(zhǔn)備接受下一個(gè)指令。

2)利用 dat[j] = dat[j+1]; 進(jìn)行移位,多次反復(fù)比較指令,那么就不在乎 i 有沒有歸零了。
回復(fù)

使用道具 舉報(bào)

板凳
ID:963748 發(fā)表于 2021-11-12 14:56 | 只看該作者
188610329 發(fā)表于 2021-11-12 14:30
首先需要確認(rèn),你的 i 是全局變量,
然后,
你即使 sflag == FALSE 也要 i=0

利用 dat[j] = dat[j+1]; 具體怎么實(shí)現(xiàn)的呢?
回復(fù)

使用道具 舉報(bào)

地板
ID:624769 發(fā)表于 2021-11-12 15:43 | 只看該作者
用for 循環(huán) 假定你的 dat 長度為64
for(j=0, j<63,j++)    //循環(huán)63次
{
    dat[j] = dat[j+1];
}
然后再去對比指令。
回復(fù)

使用道具 舉報(bào)

5#
ID:963748 發(fā)表于 2021-11-12 15:52 | 只看該作者
188610329 發(fā)表于 2021-11-12 15:43
用for 循環(huán) 假定你的 dat 長度為64
for(j=0, j

好的謝謝
回復(fù)

使用道具 舉報(bào)

6#
ID:401564 發(fā)表于 2021-11-12 16:53 | 只看該作者
//串口接收上位機(jī),可以用strstr函數(shù)查找,比如,上位機(jī)發(fā)送  數(shù)據(jù):255
//單片機(jī)可以先查找"數(shù)據(jù):",查找到之后再處理后面的255,這樣的代碼可以簡單明了很多
void Uart2_Isr() interrupt 8                                                                         //串口2中斷
{
        char *p,Uart_S[15];
        static unsigned char RX_Count;
        unsigned a;
        if(S2CON&0x02)
                {
                   S2CON&=~0x02;                                                                                //清除中斷發(fā)送標(biāo)示位
                   Busy=0;                                                                                                   //
                   return;
                }
        //────────────────────────────────────────────────────────────────────────────       
        if(S2CON&0x01)
                {
                   S2CON&=~0x01;                                                                                //清除中斷接收標(biāo)示位                                                 
                        Uart_S[RX_Count]=S2BUF;
                        RX_Count++;
                        p=strstr(Uart_S,"數(shù)據(jù):");                                                                //查找指令結(jié)束符"數(shù)據(jù):"
                        if(NULL!=p)                                                                                   //如果沒有查找到"數(shù)據(jù):",指針返回值為空
                                 {  
                                 //指針返回值不為空,就表示串口接收到"數(shù)據(jù):",處理.........
                                }               
                }
        //──────────────────────────────────────────────────────────────────────────────
}
回復(fù)

使用道具 舉報(bào)

7#
ID:963748 發(fā)表于 2021-11-13 09:11 | 只看該作者
Y_G_G 發(fā)表于 2021-11-12 16:53
//串口接收上位機(jī),可以用strstr函數(shù)查找,比如,上位機(jī)發(fā)送  數(shù)據(jù):255
//單片機(jī)可以先查找"數(shù)據(jù):",查找到之 ...

學(xué)習(xí)了謝謝
回復(fù)

使用道具 舉報(bào)

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 在线免费观看成人 | 无码一区二区三区视频 | 精品二区 | 国产999精品久久久 精品三级在线观看 | 亚洲精品中文字幕在线 | 日本欧美大片 | 亚洲婷婷六月天 | 欧美精品久久久久 | 亚洲精品乱码久久久久久按摩观 | 久久久久综合 | 久久久久久久久99 | 一区二区三区 在线 | 国产精品不卡 | 日韩视频 中文字幕 | 精品亚洲一区二区三区 | xxxxx黄色片| 亚洲精品国产一区 | 国内精品免费久久久久软件老师 | 国产一区二区三区在线 | www.99久久.com| 亚洲视频一区在线观看 | 亚洲精品成人在线 | 亚洲一区二区中文字幕在线观看 | av中文字幕在线观看 | 国产精品国产成人国产三级 | 国产成人精品一区二三区在线观看 | 精品国产精品三级精品av网址 | 久草在线在线精品观看 | 久久久久久国产精品免费 | 国产有码| 国产精品久久久乱弄 | 天天干b | 亚洲 欧美 精品 | 九九精品视频在线 | 国产99久久 | 亚洲成人一区 | 亚洲色图综合 | 国产露脸国语对白在线 | 一区二区精品 | 欧美一区二区三区视频 | 99久久99|