99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

累加和校驗(yàn)算法的實(shí)現(xiàn)

Q4MP_gh_c472c21 ? 來源:嵌入式ARM ? 作者:嵌入式ARM ? 2021-03-04 15:57 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

前言

因?yàn)橥饨缈倳﹄娐反嬖诨蚨嗷蛏俚母蓴_,對于數(shù)字信號,很可能導(dǎo)致傳輸?shù)臄?shù)據(jù)出現(xiàn)千差萬別。

對于很多需要傳輸數(shù)據(jù)的場合,尤其是一些數(shù)據(jù)可能會影響一些硬件的動作(諸如嵌入式的一些設(shè)備、機(jī)器人等),錯誤的數(shù)據(jù)可能會帶來一些隱性風(fēng)險,想想都可怕。

由于本人是嵌入式相關(guān)領(lǐng)域的,平時玩的都是單片機(jī),當(dāng)然單片機(jī)的性能千差萬別,不過很多的性能都只能說是勉強(qiáng)夠用,畢竟成本考慮。

所以今天的校驗(yàn)算法,比較簡單,但是有效,尤其是一些性能一般的硬件。

說道今日主角:累加和校驗(yàn)算法,又名CheckSum算法。至于出處,這里就不考究了。

累加和校驗(yàn)算法的實(shí)現(xiàn)

發(fā)送方:

對要數(shù)據(jù)累加,得到一個數(shù)據(jù)和,對和求反,即得到我們的校驗(yàn)值。然后把要發(fā)的數(shù)據(jù)和這個校驗(yàn)值一起發(fā)送給接收方。

接收方:

對接收的數(shù)據(jù)(包括校驗(yàn)和)進(jìn)行累加,然后加1,如果得到0,那么說明數(shù)據(jù)沒有出現(xiàn)傳輸錯誤。

注意,此處發(fā)送方和接收方用于保存累加結(jié)果的類型一定要一致,否則加1就無法實(shí)現(xiàn)溢出從而無法得到0,校驗(yàn)就會無效。

還是舉個例子:

發(fā)送方:要發(fā)送0xA8,0x50,我們使用unsigned char(8位)來保存累加和,即為0xF8(0b11111000),取反得到校驗(yàn)和為0x07(0b00000111)。然后將這三個數(shù)據(jù)發(fā)送出去。

接收方:如果接收正確,這三個數(shù)據(jù)的累加和就是(0b11111111),此時加1,則得到的結(jié)果為0(實(shí)際得到的應(yīng)該是0b100000000,但是由于是使用unsigned char(8位)來保存累加和,所以高位被截取掉,只剩下了低八位的8個0).

由上面的例子,我們可以知道算法的目的是:使累加和和校驗(yàn)值相加得到一個二進(jìn)制下每一位都是1的結(jié)果,這個結(jié)果很明顯很好處理,這種算法實(shí)現(xiàn)起來也很簡單,下面給出C語言的代碼示例。

發(fā)送方:以下是如何得到校驗(yàn)值的代碼,結(jié)果就是我們想要的校驗(yàn)值。

接收方:輸入已包含發(fā)送發(fā)發(fā)來的校驗(yàn)值,如果函數(shù)返回的值如果是0,說明數(shù)據(jù)正確。

責(zé)任編輯:lq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 嵌入式
    +關(guān)注

    關(guān)注

    5152

    文章

    19676

    瀏覽量

    317700
  • 累加
    +關(guān)注

    關(guān)注

    0

    文章

    6

    瀏覽量

    6877
  • 校驗(yàn)算法
    +關(guān)注

    關(guān)注

    0

    文章

    5

    瀏覽量

    6679

原文標(biāo)題:累加和校驗(yàn)算法在嵌入式中的應(yīng)用~

文章出處:【微信號:gh_c472c2199c88,微信公眾號:嵌入式微處理器】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    基于FPGA實(shí)現(xiàn)FOC算法之PWM模塊設(shè)計

    哈嘍,大家好,從今天開始正式帶領(lǐng)大家從零到一,在FPGA平臺上實(shí)現(xiàn)FOC算法,整個算法的框架如下圖所示,如果大家對算法的原理不是特別清楚的話,可以先去百度上學(xué)習(xí)一下,本教程著重介紹
    的頭像 發(fā)表于 07-17 15:21 ?732次閱讀
    基于FPGA<b class='flag-5'>實(shí)現(xiàn)</b>FOC<b class='flag-5'>算法</b>之PWM模塊設(shè)計

    基于FPGA的壓縮算法加速實(shí)現(xiàn)

    本設(shè)計中,計劃實(shí)現(xiàn)對文件的壓縮及解壓,同時優(yōu)化壓縮中所涉及的信號處理和計算密集型功能,實(shí)現(xiàn)對其的加速處理。本設(shè)計的最終目標(biāo)是證明在充分并行化的硬件體系結(jié)構(gòu) FPGA 上實(shí)現(xiàn)算法時,可
    的頭像 發(fā)表于 07-10 11:09 ?819次閱讀
    基于FPGA的壓縮<b class='flag-5'>算法</b>加速<b class='flag-5'>實(shí)現(xiàn)</b>

    用TXT編輯器打開十六進(jìn)制文件,如何知道校驗(yàn)和值?

    我從客戶那邊得到了一個 pmg1-s3 十六進(jìn)制文件,我想把它和校驗(yàn)和提供給集成電路編程工廠。 1.用 TXT 編輯器打開十六進(jìn)制文件,如何知道校驗(yàn)和值? 附帶的是十六進(jìn)制文件。 2. 另一個問題是
    發(fā)表于 05-23 07:49

    相位累加器的實(shí)現(xiàn)原理

    標(biāo)題中所提到的DDS,我感覺這兩個放一起也可以,因?yàn)镈DS的核心思想就是使用的相位累加器。那么這玩意兒的作用是啥?簡單來說就是在FPGA工作主頻之下,可以生成任意頻率的周期信號出來。
    的頭像 發(fā)表于 05-16 13:56 ?366次閱讀
    相位<b class='flag-5'>累加</b>器的<b class='flag-5'>實(shí)現(xiàn)</b>原理

    基于Verilog語言實(shí)現(xiàn)CRC校驗(yàn)

    CRC即循環(huán)冗余校驗(yàn)碼:是數(shù)據(jù)通信領(lǐng)域中最常用的一種查錯校驗(yàn)碼,其特征是信息字段和校驗(yàn)字段的長度可以任意選定。循環(huán)冗余檢查(CRC)是一種數(shù)據(jù)傳輸檢錯功能,對數(shù)據(jù)進(jìn)行多項(xiàng)式計算,并將得到的結(jié)果附在幀的后面,接收設(shè)備也執(zhí)行類似的
    的頭像 發(fā)表于 03-24 10:36 ?1459次閱讀
    基于Verilog語言<b class='flag-5'>實(shí)現(xiàn)</b>CRC<b class='flag-5'>校驗(yàn)</b>

    FOC 算法實(shí)現(xiàn)永磁同步電機(jī)調(diào)整指南

    本文檔介紹了使用 FOC 算法實(shí)現(xiàn)永磁同步電機(jī) (Permanent Magnet SynchronousMotor,PMSM)調(diào)整所需的步驟和設(shè)置,該算法如 AN1078《PMSM 電機(jī)的無傳感器
    發(fā)表于 03-03 01:53

    PID控制算法的C語言實(shí)現(xiàn):PID算法原理

    在工業(yè)應(yīng)用中 PID 及其衍生算法是應(yīng)用最廣泛的算法之一,是當(dāng)之無愧的萬能算法,如果能夠熟練掌握 PID 算法的設(shè)計與實(shí)現(xiàn)過程,對于一般的研
    發(fā)表于 02-26 15:24

    【「從算法到電路—數(shù)字芯片算法的電路實(shí)現(xiàn)」閱讀體驗(yàn)】+內(nèi)容簡介

    的乘法器和除法器設(shè)計,在不同專業(yè)芯片領(lǐng)域有著廣泛應(yīng)用的數(shù)字信號發(fā)生器、復(fù)數(shù)求模求角度運(yùn)算器、普通濾波器、E△ADC中使用的抽取濾波器、基于 E△結(jié)構(gòu)實(shí)現(xiàn)的小數(shù)倍分頻器、CRC校驗(yàn)器等。每個電路均給出了算法
    發(fā)表于 11-21 17:14

    【「從算法到電路—數(shù)字芯片算法的電路實(shí)現(xiàn)」閱讀體驗(yàn)】+介紹基礎(chǔ)硬件算法模塊

    作為嵌入式開發(fā)者往往比較關(guān)注硬件和軟件的協(xié)調(diào)。本書介紹了除法器,信號發(fā)生器,濾波器,分頻器等基本算法的電路實(shí)現(xiàn),雖然都是基礎(chǔ)內(nèi)容,但是也是最常用到的基本模塊。 隨著逆全球化趨勢的出現(xiàn),過去的研發(fā)
    發(fā)表于 11-21 17:05

    【「從算法到電路—數(shù)字芯片算法的電路實(shí)現(xiàn)」閱讀體驗(yàn)】+第九章sigma delta adc閱讀與分享

    ,其實(shí)名字已經(jīng)可以說明其本質(zhì)了sigma 累加delta偏差即對偏差的累加,不就是總的偏差嗎,偏差為多了就減少點(diǎn),偏差為少了就增加多點(diǎn),不就是多退少補(bǔ)嗎,其核心的是累加所以和實(shí)現(xiàn)高精度
    發(fā)表于 11-20 13:58

    【「從算法到電路—數(shù)字芯片算法的電路實(shí)現(xiàn)」閱讀體驗(yàn)】+一本介紹基礎(chǔ)硬件算法模塊實(shí)現(xiàn)的好書

    作為嵌入式開發(fā)者往往比較關(guān)注硬件和軟件的協(xié)調(diào)。本書介紹了除法器,信號發(fā)生器,濾波器,分頻器等基本算法的電路實(shí)現(xiàn),雖然都是基礎(chǔ)內(nèi)容,但是也是最常用到的基本模塊,本書的內(nèi)容比較對本人胃口。 我們先來
    發(fā)表于 11-20 13:42

    UDP丟包的原因和解決方案

    每個 UDP 報文分為 UDP 報頭和 UDP 數(shù)據(jù)區(qū)兩部分。報頭由 4 個 16 位長(2 字節(jié))字段組成,分別說明該報文的源端口、目的端口、報文長度和校驗(yàn)值。
    的頭像 發(fā)表于 10-22 14:38 ?4580次閱讀
    UDP丟包的原因和解決方案

    名單公布!【書籍評測活動NO.46】從算法到電路 | 數(shù)字芯片算法的電路實(shí)現(xiàn)

    :elecfans123)領(lǐng)取書籍進(jìn)行評測,如在5個工作日內(nèi)未聯(lián)系,視為放棄本次試用評測資格! 《從算法到電路——數(shù)字芯片算法的電路實(shí)現(xiàn)》 是一本深入解讀基礎(chǔ)算法及其電路設(shè)計,以打通
    發(fā)表于 10-09 13:43

    C加密算法實(shí)現(xiàn)

    電子發(fā)燒友網(wǎng)站提供《C加密算法實(shí)現(xiàn).pdf》資料免費(fèi)下載
    發(fā)表于 09-20 11:10 ?1次下載
    C加密<b class='flag-5'>算法</b>的<b class='flag-5'>實(shí)現(xiàn)</b>

    【GD32 MCU 入門教程】GD32 MCU 常見外設(shè)介紹(8)SPI 模塊介紹

    串行外設(shè)接口(Serial Peripheral Interface,縮寫為 SPI) 提供了基于SPI 協(xié)議的數(shù)據(jù)發(fā)送和接收功能, 可以工作于主機(jī)或從機(jī)模式。 SPI 接口支持具有硬件 CRC 計算和校驗(yàn)的全雙工和單工模式。
    的頭像 發(fā)表于 08-17 09:36 ?1507次閱讀
    【GD32 MCU 入門教程】GD32 MCU 常見外設(shè)介紹(8)SPI 模塊介紹