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

QQ登錄

只需一步,快速開始

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

單片機(jī)用無線串口多機(jī)通信為什么數(shù)據(jù)會(huì)丟失?有什么發(fā)的方法嗎?

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:819053 發(fā)表于 2022-4-1 16:12 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
我做了一個(gè)多機(jī)通信,采用無線串口透?jìng)鞣绞剑鳈C(jī)與從機(jī)通信時(shí),從機(jī)偶爾返回的數(shù)據(jù)會(huì)丟失, 誰能告訴我用什么方法,才能保證每次通信都能正常。例:
//==主機(jī)發(fā)送001SLAVE! ,從機(jī)收能比對(duì)成功就返回從機(jī)號(hào)001DH!

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

使用道具 舉報(bào)

沙發(fā)
ID:123289 發(fā)表于 2022-4-2 09:40 | 只看該作者
分兩種形式:
1、硬件問題,如信號(hào)被移動(dòng)障礙物遮擋:需要你用協(xié)議彌補(bǔ),在如何知道丟失,如何補(bǔ)發(fā)補(bǔ)收上下功夫。
2、軟件丟失,需要你合理架構(gòu)你的程序,要點(diǎn)如下:
所有中斷級(jí)別高于串行中斷的服務(wù)程序(包括同級(jí)的串口中斷本身)要盡可能的短(運(yùn)行時(shí)間),因?yàn)檫@些程序運(yùn)行時(shí),串口中斷不會(huì)被響應(yīng),當(dāng)運(yùn)行時(shí)間超過一個(gè)字節(jié)的串行發(fā)送時(shí)間時(shí),數(shù)據(jù)就會(huì)被后來的數(shù)據(jù)沖掉了(丟失)。
這就需要你對(duì)中斷有極強(qiáng)的理解,并考驗(yàn)?zāi)阃ūP合理安排處理所有中斷服務(wù)程序的能力。能不在中斷中處理的東東,請(qǐng)統(tǒng)統(tǒng)放到中斷外面去處理!
回復(fù)

使用道具 舉報(bào)

板凳
ID:827243 發(fā)表于 2022-4-2 12:53 | 只看該作者
要保證通訊可靠無誤,只能從軟件下手,編程實(shí)現(xiàn)超時(shí),重傳,校驗(yàn)機(jī)制以保證通訊可靠。
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

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