時(shí)間:2021-09-09 作者:眾山科技
導致驗證失敗的主要原因是我們在驗證過(guò)程中數據丟失和錯誤。簡(jiǎn)而言之,驗證過(guò)程是接收和發(fā)送兩端共同完成的過(guò)程。將數據包發(fā)送到串行端,然后發(fā)送端將數據包發(fā)送到接收端的指定位置,接收端再到指定位置檢查字節。同時(shí),接收到的數據按照規定的方式計算接收端的驗證字節。如果接收端的驗證字節等于接收到的發(fā)送端的驗證字節,說(shuō)明數據包有效,否則應該放棄。這也是我們平時(shí)驗證過(guò)程中失敗的主要原因。
無(wú)線(xiàn)模塊檢查方法最常用的是奇偶檢查和循環(huán)冗馀代碼檢查兩次,在串行數據傳輸過(guò)程中,由于干擾可能引起的信息錯誤,發(fā)生了錯誤代碼,我們在傳輸過(guò)程中發(fā)現的錯誤稱(chēng)為檢查代碼,發(fā)生錯誤后,進(jìn)行修正
除了這兩種常的校驗方法外,還有異或校驗、sum等,其中以奇偶校驗方法最為簡(jiǎn)單粗暴,但這種方法有一個(gè)缺點(diǎn),就是只能發(fā)現錯誤,不能糾正錯誤,所以一旦發(fā)現錯誤,就不能檢測錯誤,只能重新發(fā)送數據包。而且循環(huán)冗余碼校驗方法具有良好的自動(dòng)糾錯功能,但也比奇偶校驗方法復雜得多。
因此我們在進(jìn)行校驗時(shí),選擇哪種算法還是要看自己如何選擇。