無線模塊經(jīng)常有人在校驗(yàn)過程中會失敗,又是什么原因呢?造成校驗(yàn)失敗的大部分原因都是因?yàn)槲覀冊谛r?yàn)過程中數(shù)據(jù)發(fā)生了丟失和錯誤,說得簡單點(diǎn),校驗(yàn)的過程是收發(fā)兩端共同完成的過程,發(fā)送一個數(shù)據(jù)包到串口,然后由發(fā)送端將數(shù)據(jù)包發(fā)送到接收端的指定位置,接收端再到指定的位置檢驗(yàn)字節(jié),同時,再將接收到的數(shù)據(jù)按規(guī)定方式計(jì)算出接收端校驗(yàn)字節(jié),如果接收端校驗(yàn)字節(jié)與接收到的發(fā)送端校驗(yàn)字節(jié)相等,則說明數(shù)據(jù)包是有效的,否則就應(yīng)該放棄該數(shù)據(jù)包。這也就是我們平時校驗(yàn)過程中出現(xiàn)失敗的主要原因。
無線模塊校驗(yàn)的方法最常用的是奇偶校驗(yàn)和循環(huán)冗余碼校驗(yàn)兩次,在串行數(shù)據(jù)傳輸過程中,由于干擾可能引起的信息錯誤,出現(xiàn)“誤碼”,我們在傳輸過程中發(fā)現(xiàn)的錯誤叫做檢碼,發(fā)出錯誤后,進(jìn)行修正叫檢錯。除去這兩種常用的校驗(yàn)方法,還有異或校驗(yàn)、sum等等,其中以奇偶校驗(yàn)方法最為簡單粗暴,但是這種方式有一個缺點(diǎn),它只能發(fā)現(xiàn)錯誤,不能糾正錯誤,所以一旦發(fā)現(xiàn)誤碼的時候,不能進(jìn)行檢錯,只能將數(shù)據(jù)包重新發(fā)送。而循環(huán)冗余碼校驗(yàn)方法則有很好的自動糾錯功能,但也相對的比奇偶校驗(yàn)方法復(fù)雜的多。所以我們進(jìn)行校驗(yàn)的時候,選擇什么算法還是要看自己怎么去抉擇。
-
無線模塊
+關(guān)注
關(guān)注
12文章
646瀏覽量
49330
發(fā)布評論請先 登錄
ads1256進(jìn)入初始化函數(shù)后,DRDY引腳一直是高電平,是怎么回事呢?
LDC1101EVM GUI不能識別串口是怎么回事呢?
【AI技術(shù)支持】ESP32-WROVER-IE-N16R8模組上電啟動失敗問題處理

視頻引擎初始化失敗怎么回事
vca822發(fā)熱是怎么回事???如何解決?
ensp啟動失敗,錯誤代碼40怎么回事
PCBA加工中錫膏容易變干是怎么回事?

服務(wù)器錯誤是怎么回事?常見錯誤原因及解決方法匯總
INA233空載時,讀得MFR_READ_VSHUNT的值很大,是怎么回事呢?

評論