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

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 1919|回復(fù): 6
收起左側(cè)

怎么用單片機(jī)串口接收一串?dāng)?shù)據(jù)并處理

[復(fù)制鏈接]
ID:700956 發(fā)表于 2023-3-10 09:50 | 顯示全部樓層 |閱讀模式
收到這么一串?dāng)?shù)據(jù)16進(jìn)制,5A A5 0F 82 10 20 D0 EC D6 DD B9 DA CD FE B5 E7 D7 D3 FF FF,單片機(jī)接收處理程序該怎么寫(xiě)。需要判斷每次接收的數(shù)據(jù)一致處理嗎?
回復(fù)

使用道具 舉報(bào)

ID:94031 發(fā)表于 2023-3-10 11:06 | 顯示全部樓層
對(duì)方法來(lái)一串?dāng)?shù)據(jù),又沒(méi)有協(xié)議,就是破密電碼,難。
回復(fù)

使用道具 舉報(bào)

ID:69038 發(fā)表于 2023-3-10 11:31 | 顯示全部樓層
xuyaqi 發(fā)表于 2023-3-10 11:06
對(duì)方法來(lái)一串?dāng)?shù)據(jù),又沒(méi)有協(xié)議,就是破密電碼,難。

5A A5=》 同步頭
0F =》數(shù)據(jù)長(zhǎng)度
82 10 20 D0 EC D6 DD B9 DA CD FE B5 E7 D7 D3=》數(shù)據(jù)內(nèi)容
FF FF=》同步尾
是有協(xié)議的,很明顯就是一個(gè)非常簡(jiǎn)單的協(xié)議。
回復(fù)

使用道具 舉報(bào)

ID:69038 發(fā)表于 2023-3-10 11:40 | 顯示全部樓層
開(kāi)一個(gè)接收數(shù)據(jù)BUF,長(zhǎng)度大于20.
設(shè)2個(gè)同步標(biāo)志,頭和尾
再設(shè)一個(gè)數(shù)據(jù)長(zhǎng)度變量:
收到一個(gè)字節(jié)判斷一次,當(dāng)收到A5時(shí)判斷前一個(gè) 不是5A,如果是記入同步頭標(biāo)志,接下來(lái)收到0F記入數(shù)據(jù)長(zhǎng)度,接下來(lái)等收到連續(xù)2個(gè)FF時(shí):判斷數(shù)據(jù)長(zhǎng)度是不是一致,不則清所有標(biāo)志,重新接收,是則比對(duì)接收到的數(shù)據(jù),C中有字符串比對(duì)的指令。也可以用if((BUF[n]==XX)&&(BUF[n+1]==Xy)&& ...)來(lái)處理
回復(fù)

使用道具 舉報(bào)

ID:807182 發(fā)表于 2023-3-10 18:43 | 顯示全部樓層
沒(méi)有協(xié)議,看不懂哦,
回復(fù)

使用道具 舉報(bào)

ID:517951 發(fā)表于 2023-3-13 07:51 | 顯示全部樓層
百度搜索一下, B站里有簡(jiǎn)單的串口協(xié)議處理視頻教程. 這里是三言半語(yǔ)說(shuō)不清楚的.
回復(fù)

使用道具 舉報(bào)

ID:1038987 發(fā)表于 2023-4-9 21:00 | 顯示全部樓層
這個(gè)應(yīng)該是觸摸屏的程序,單片機(jī)要進(jìn)行串口中斷。中斷后根據(jù)你的需要處理需要一直中斷一直處理。所以通信不可以太快。比如1秒通信10次以上就要出問(wèn)題了。
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表