目次

IanalogFilter()

IanalogFilter()は渡された値を移動平均処理します。

IanalogFilter コマンドの動作フロー

int32_t IanalogFilter(uint8_t id, int32_t raw_value, uint8_t samples)

コマンド

コマンド 引数 戻り値 動作
IanalogFilter(id, raw_value, samples) uint8_t id — フィルタ識別番号
int32_t raw_value — 新しい入力値
uint8_t samples — 平均サンプル数
int32_t 渡された値を移動平均処理します。

使用例

void setup() {
  Serial.begin(115200);
  analogReadInit(IANALOG_SPS_128);  // アナログ入力モジュールのサンプリング速度を設定します。
}
 
void loop() {
  const int32_t raw = analogRead(A0);  // 指定チャンネルの生のアナログ値を読み取ります。
  const int32_t filtered = IanalogFilter(0, raw, 10);  // 渡された値を移動平均で処理します。
  static int32_t previous = 0;
  if (abs(filtered - previous) >= 5) {
    previous = filtered;
    Serial.println(filtered);
  }
}

注意事項

← 内蔵コマンド一覧