JAJSQX1 December 2025 ADS112C14 , ADS122C14
PRODUCTION DATA
ADS1x2C14 は、変換データまたはレジスタ データをコントローラに送信して送信エラーを検出する際、8 ビットの巡回冗長検査 (CRC) コードを出力できます。I2C CRC をイネーブルするには、I2C_CRC_EN ビットを使用します。図 7-19、図 7-20および図 7-22に示すように、デバイスは、それぞれ変換データまたはレジスタ データの後に CRC バイトを追加します。
CRC コードの計算に使用されるバイト数は、フレームで送信されるデータ バイトの数によって異なります。CRC 計算に含まれるデータを、表 7-11に示します。
| アクション | Nデバイスの分解能 | ステータス ヘッダが有効です | CRC でカバーされるデータ |
|---|---|---|---|
| 変換データの読み取り | 16 ビット | なし | 16 ビットの変換データ + 8 ビットのゼロ パディング |
| あり | 16 ビットの STATUS ヘッダ + 16 ビットの変換データ + 8 ビットのゼロパディング | ||
| 24 ビット | なし | 24 ビットの変換データ | |
| あり | 16 ビット ステータス ヘッダ + 24 ビットの変換データ | ||
| レジスタ データ読み取り | 16 ビットまたは 24 ビット | 該当なし | 8 ビットのレジスタデータ |
CRC コードの計算は、可変長の引数と CRC 多項式とのビット単位の排他的論理和 (XOR) 演算によって得られる 8 ビットの剰余です。CRC は、CRC-8-ATM (HEC) 多項式に基づいています:X8 + X2 + X1 + 1 に基づいています。この多項式には、9 つの係数として100000111.CRC 計算は、SDI および SDO/DRDY が High または Low に固着した場合にエラーを検出するため、すべて 1 に初期化されます。
CRC 計算を視覚的に示したものを、図 7-24に示します。CRC の値は、次の手順で計算します:
ここでダウンロードできる C のサンプル コードには、潜在的な CRC 実装が含まれています。
デバイスに書き込まれるレジスタ データは CRC 保護されていません。デバイスへの書き込み時に送信エラーを検出するには、レジスタに書き込まれた後にレジスタ データを読み戻します。