日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 嵌入式 > 嵌入式教程
[導(dǎo)讀]CRC標(biāo)準(zhǔn)簡介及計算過程

標(biāo)準(zhǔn)

  根據(jù)應(yīng)用環(huán)境與習(xí)慣的不同,CRC又可分為以下幾種標(biāo)準(zhǔn):

 ?、貱RC-12碼;

 ?、贑RC-16碼;

 ?、跜RC-CCITT碼;

 ?、蹸RC-32碼。

  CRC-12碼通常用來傳送6-bit字符串。

  CRC-16及CRC-CCITT碼則是用來傳送8-bit字符串,其中CRC-16為美國采用,而CRC-CCITT為歐洲國家所采用。

  CRC-32碼大都被采用在一種稱為Point-to-Point的同步傳輸中。

  生成過程

  下面以最常用的CRC-16為例來說明其生成過程。

  CRC-16碼由兩個字節(jié)構(gòu)成,在開始時CRC寄存器的每一位都預(yù)置為1,然后把CRC寄存器與8-bit的數(shù)據(jù)進(jìn)行異或(異或:二進(jìn)制運算 相同為0,不同為1;0^0=0;0^1=1;1^0=1;1^1=0),

  之后對CRC寄存器從高到低進(jìn)行移位,在最高位(MSB)的位置補(bǔ)零,而最低位(LSB,移位后已經(jīng)被移出CRC寄存器)如果為1,則把寄存器與預(yù)定義的多項式碼進(jìn)行異或,否則如果LSB為零,則無需進(jìn)行異或。重復(fù)上述的由高至低的移位8次,第一個8-bit數(shù)據(jù)處理完畢,用此時CRC寄存器的值與下一個8-bit數(shù)據(jù)異或并進(jìn)行如前一個數(shù)據(jù)似的8次移位。所有的字符處理完成后CRC寄存器內(nèi)的值即為最終的CRC值。

  計算過程

  1.設(shè)置CRC寄存器,并給其賦值FFFF(hex)。

  2.將數(shù)據(jù)的第一個8-bit字符與16位CRC寄存器的低8位進(jìn)行異或,并把結(jié)果存入CRC寄存器。

  3.CRC寄存器向右移一位,MSB補(bǔ)零,移出并檢查LSB。

  4.如果LSB為0,重復(fù)第三步;若LSB為1,CRC寄存器與多項式碼相異或。

  5.重復(fù)第3與第4步直到8次移位全部完成。此時一個8-bit數(shù)據(jù)處理完畢。

  6.重復(fù)第2至第5步直到所有數(shù)據(jù)全部處理完成。

  7.最終CRC寄存器的內(nèi)容即為CRC值。

  常用的CRC循環(huán)冗余校驗標(biāo)準(zhǔn)多項式如下:

  CRC(12位) =X12+X11+X3+X2+X+1

  CRC(16位) = X16+X15+X2+1

  CRC(CCITT) = X16+X12 +X5+1

  CRC(32位) = X32+X26+X23+X16+X12+X11+X10+ X8+X7+X5+X4+X2+X+1

  以CRC(16位)多項式為例,其對應(yīng)校驗二進(jìn)制位列為1 1000 0000 0000 0101。

  注意:這兒列出的標(biāo)準(zhǔn)校驗多項式都含有(X+1)的多項式因子;各多項式的系數(shù)均為二進(jìn)制數(shù),所涉及的四則運算仍遵循對二取模的運算規(guī)則。

  (注:對二取模的四則運算指參與運算的兩個二進(jìn)制數(shù)各位之間凡涉及加減運算時均進(jìn)行XOR異或運算,即:1 XOR 1=0,0 XOR 0=0,1 XOR 0=1,0 XOR 1=1,即相同為0,不同為1)

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

在工業(yè)控制系統(tǒng)中,Modbus RTU協(xié)議的CRC校驗如同通信網(wǎng)絡(luò)的"免疫系統(tǒng)",某石化廠DCS系統(tǒng)曾因CRC計算錯誤導(dǎo)致0.3%的數(shù)據(jù)包丟失,引發(fā)連鎖控制故障。本文將深入解析CRC-16/MODBUS算法原理,對比軟件...

關(guān)鍵字: Modbus RTU CRC 算法

控制寄存器(Control Register)是中央處理器(CPU)中用于管理系統(tǒng)級操作的特殊寄存器,它為操作系統(tǒng)和硬件提供對處理器行為的精細(xì)控制。本文從計算機(jī)體系結(jié)構(gòu)角度系統(tǒng)闡述控制寄存器的設(shè)計原理、功能分類、操作機(jī)制...

關(guān)鍵字: 寄存器 處理器

在嵌入式系統(tǒng)開發(fā)中,硬件抽象層(Hardware Abstraction Layer,HAL)起著至關(guān)重要的作用。它為上層軟件提供了統(tǒng)一的硬件訪問接口,隱藏了底層硬件的細(xì)節(jié),使得軟件具有更好的可移植性和可維護(hù)性。C++作...

關(guān)鍵字: 嵌入式C++ HAL 寄存器 封裝

采用51單片機(jī)最小開發(fā)板,由8位自制獨立按鍵控制。單片機(jī)芯片為STC89C52RC,晶振為@12.000 mhz。8X8LED點陣屏模塊由MAX7219驅(qū)動,MAX7219包含一個自動掃描電路。你只需要把要顯示的數(shù)據(jù)發(fā)送...

關(guān)鍵字: 51單片機(jī) MAX7219 寄存器

電源管理集成電路(PMIC)有益于簡化最終應(yīng)用并縮小其尺寸,也因此備受青睞。然而,當(dāng)默認(rèn)啟動時序和輸出電壓與應(yīng)用要求不符時,就需要定制上電設(shè)置。大多數(shù)情況下,電路沒有可以存儲這些設(shè)置的非易失性存儲器(NVM)。對此,低功...

關(guān)鍵字: 電源管理 集成電路 寄存器

我從Digilent公司拿出了我的Arty Z7板,并在Vivado/Vitis 2021.2中創(chuàng)建了一個項目來讓它工作,你可以在我的上一個項目帖子中閱讀,我在QDSP-6061的5位數(shù)上顯示滾動文本,上面寫著“Hell...

關(guān)鍵字: 寄存器 AXI4 QDSP-6061 RTL模塊

在單片機(jī)系統(tǒng)的設(shè)計中,復(fù)位電路是確保單片機(jī)正常工作的關(guān)鍵組成部分。它能夠在系統(tǒng)啟動時將單片機(jī)的內(nèi)部寄存器和狀態(tài)設(shè)置為初始值,保證單片機(jī)從一個確定的狀態(tài)開始運行。與門芯片作為一種常見的數(shù)字邏輯芯片,有時會被應(yīng)用于單片機(jī)復(fù)位...

關(guān)鍵字: 復(fù)位電路 寄存器 單片機(jī)

在數(shù)字通信領(lǐng)域,二進(jìn)制通信協(xié)議扮演著至關(guān)重要的角色。它們不僅決定了數(shù)據(jù)如何在不同系統(tǒng)或設(shè)備間高效、準(zhǔn)確地傳輸,還直接影響到通信的實時性、可靠性和資源利用率。本文將深入探討二進(jìn)制通信協(xié)議的序列化與解析過程,并通過實例代碼展...

關(guān)鍵字: 二進(jìn)制 通信協(xié)議 序列化

在數(shù)字電路設(shè)計中,計數(shù)器是一種基礎(chǔ)的數(shù)字電路組件,用于記錄并顯示脈沖信號的數(shù)量或頻率。4進(jìn)制計數(shù)器,即模4計數(shù)器,是一種特殊的計數(shù)器,其計數(shù)范圍從0到3,共4個狀態(tài)。本文將深入探討如何結(jié)合D觸發(fā)器與寄存器來實現(xiàn)一個4進(jìn)制...

關(guān)鍵字: D觸發(fā)器 寄存器 計數(shù)器

上海2024年11月26日 /美通社/ -- 2024年11月22日,由上海璞咣教育科技有限公司主辦的"宇宙新生時空藝術(shù)展"在長三角文博會上璀璨開幕,吸引了無數(shù)目光。本次展覽以AI人工智能發(fā)展背景下的...

關(guān)鍵字: 人工智能 BSP 二進(jìn)制 影像
關(guān)閉