STM32L476RG CRC32

ペリフェラル

巡回冗長検査計算ユニット(CRC) は AHB1 ペリフェラル

HAL_CRC_Init の時の InputDataFormatについて

  • 32bitの値の配列を処理する場合は CRC_INPUTDATA_FORMAT_WORDS
  • 16bitの値の配列を処理する場合は CRC_INPUTDATA_FORMAT_HALFWORDS
  • 8bitの値の配列を処理する場合は CRC_INPUTDATA_FORMAT_BYTES

CRC計算デフォルトパラメータ

  • 係数 は 0x04c11db7
  • 初期値 は 0xffffffff

計算させる関数

  • 引数で指定したデータだけを対象に計算する場合 HAL_CRC_Calculate を使う
  • 前回の続きとして処理する場合は HAL_CRC_Accumulate を使う

HAL_CRC_Calculate や HAL_CRC_Accumulate の引数で渡すbufferLength の考え方

  • InputDataFormat が CRC_INPUTDATA_FORMAT_WORDS の場合は 32bit変数の数
  • InputDataFormat が CRC_INPUTDATA_FORMAT_HALFWORDS の場合は 16bit変数の数
  • InputDataFormat が CRC_INPUTDATA_FORMAT_BYTES の場合は 8bit変数の数 = バイト数

コメントを残す

メールアドレスが公開されることはありません。