ZHCSYH1 June 2025 AFE10004-EP
ADVANCE INFORMATION
如果在嘈雜的環境中使用該器件,則可以通過錯誤檢查來檢查該器件和主機處理器之間 SPI 數據通信的完整性。通過設置 CRCEN 位可啟用此功能。
錯誤檢查方案基于 CRC-8-ATM (HEC) 多項式:x8 + x2 + x + 1(即 100000111)。啟用錯誤檢查后,串行接口訪問周期寬度為 32 位。將正常的 24 位 SPI 數據發送到器件之前,主機處理器會在該數據后附加一個 8 位 CRC 多項式。表 6-16 顯示了 SPI 錯誤檢查串行接口訪問周期。在所有串行接口讀回操作中,CRC 多項式作為 32 位周期的一部分在 SDO 引腳上輸出。
| 位 | 字段 | 說明 |
|---|---|---|
| 31 | R/W | 將通信標識為目標寄存器的讀取或寫入命令。 R/W = 0 設置寫入操作。 R/W = 1 設置讀取操作。 |
| 30:24 | A[6:0] | 寄存器地址。指定在讀取或寫入操作期間要訪問的寄存器。 |
| 23:8 | DI[15:0] | 數據周期位。 如果是寫入命令,則數據周期位是要寫入地址為 A[6:0] 的寄存器的值。 如果是讀取命令,則數據周期位為“不用考慮”值。 |
| 7:0 | CRC | 8 位 CRC 多項式。 |
該器件對 32 位訪問周期進行解碼,以計算 CS 上升沿上的 CRC 余數。如果不存在錯誤,則 CRC 余數為零,器件接受數據。未通過 CRC 校驗的寫入操作會導致器件忽略數據。
在寫入命令之后,應發送第二個訪問周期,以確定設備狀態,包括 SDO 引腳上的 CRC 檢查結果(SPICRC 位)。表 6-17 顯示了 SPI 寫入操作錯誤檢查周期。設置后,應向狀態寄存器中的 SPICRC 位寫入 1 以清除該位。
| 位 | 字段 | 說明 |
|---|---|---|
| 31:24 | STATUS[7:0] | 狀態寄存器的低八位。 |
| 23:8 | DO[15:0] | 來自上一訪問周期的回波數據。 |
| 7:0 | CRC | 計算出的位 31:8 的 CRC 值。 |
要在 SDO 引腳上獲取請求的數據,請采用第二個訪問周期執行讀取操作。與寫入操作一樣,器件狀態位 SDO 引腳上的輸出;另請參閱 表 6-18。
| 位 | 字段 | 說明 |
|---|---|---|
| 31:24 | STATUS[7:0] | 狀態寄存器的低八位。 |
| 23:8 | DO[15:0] | 上一訪問周期中請求的回讀數據。 |
| 7:0 | CRC | 計算出的位 31:8 的 CRC 值。 |