無線模塊經(jīng)常有人在校驗(yàn)過程中會失敗,又是什么原因呢?造成校驗(yàn)失敗的大部分原因都是因?yàn)槲覀冊谛r?yàn)過程中數(shù)據(jù)發(fā)生了丟失和錯(cuò)誤,說得簡單點(diǎn),校驗(yàn)的過程是收發(fā)兩端共同完成的過程,發(fā)送一個(gè)數(shù)據(jù)包到串口,然后由發(fā)送端將數(shù)據(jù)包發(fā)送到接收端的指定位置,接收端再到指定的位置檢驗(yàn)字節(jié),同時(shí),再將接收到的數(shù)據(jù)按規(guī)定方式計(jì)算出接收端校驗(yàn)字節(jié),如果接收端校驗(yàn)字節(jié)與接收到的發(fā)送端校驗(yàn)字節(jié)相等,則說明數(shù)據(jù)包是有效的,否則就應(yīng)該放棄該數(shù)據(jù)包。這也就是我們平時(shí)校驗(yàn)過程中出現(xiàn)失敗的主要原因。
無線模塊校驗(yàn)的方法最常用的是奇偶校驗(yàn)和循環(huán)冗余碼校驗(yàn)兩次,在串行數(shù)據(jù)傳輸過程中,由于干擾可能引起的信息錯(cuò)誤,出現(xiàn)“誤碼”,我們在傳輸過程中發(fā)現(xiàn)的錯(cuò)誤叫做檢碼,發(fā)出錯(cuò)誤后,進(jìn)行修正叫檢錯(cuò)。除去這兩種常用的校驗(yàn)方法,還有異或校驗(yàn)、sum等等,其中以奇偶校驗(yàn)方法最為簡單粗暴,但是這種方式有一個(gè)缺點(diǎn),它只能發(fā)現(xiàn)錯(cuò)誤,不能糾正錯(cuò)誤,所以一旦發(fā)現(xiàn)誤碼的時(shí)候,不能進(jìn)行檢錯(cuò),只能將數(shù)據(jù)包重新發(fā)送。而循環(huán)冗余碼校驗(yàn)方法則有很好的自動(dòng)糾錯(cuò)功能,但也相對的比奇偶校驗(yàn)方法復(fù)雜的多。所以我們進(jìn)行校驗(yàn)的時(shí)候,選擇什么算法還是要看自己怎么去抉擇。
-
無線模塊
+關(guān)注
關(guān)注
12文章
685瀏覽量
50267
發(fā)布評論請先 登錄
識別到智能模塊的U盤,但是點(diǎn)擊“下載”后無法進(jìn)行下載或提示下載失敗是什么原因?
請問RT-FOTA固件校驗(yàn)通過但是解壓縮失敗是什么原因?
gd32 env配置報(bào)錯(cuò)是什么原因呢?
電流探頭消磁失敗的原因與解決策略
線程超時(shí)函數(shù)中 assert 失敗是什么原因導(dǎo)致的?
ai_cube訓(xùn)練模型最后部署失敗是什么原因?
數(shù)據(jù)集下載失敗的原因?
網(wǎng)絡(luò)光纖出問題一般是什么原因導(dǎo)致的呢
stm32cubeIDE使用malloc失敗是什么原因?
stm32cubeIDE使用malloc失敗是什么原因?
HMC7044外參考時(shí)鐘切換失敗的原因?
EB Tresos驗(yàn)證步驟失敗是什么原因?
EB Tresos狀態(tài)顯示無法運(yùn)行生成器是什么原因導(dǎo)致的?
芯片流片失敗都有哪些原因
無線模塊校驗(yàn)失敗是什么原因呢
評論