====== IbounceOff() ====== ''IbounceOff()''は入力がONからOFFに変わるときだけ時間フィルタを適用します。 {{:ja-jp_commands:reference:ibounceoff.svg?900|IbounceOff コマンドの動作フロー}} ''bool IbounceOff(uint8_t pin, uint32_t debounceTime)'' ===== コマンド ===== ^ コマンド ^ 引数 ^ 戻り値 ^ 動作 ^ | ''IbounceOff(pin, debounceTime)'' | ''uint8_t pin'' — 入力ピン番号\\ ''uint32_t debounceTime'' — 安定状態確認時間(ms) | ''bool'' | 入力がONからOFFに変わるときだけ時間フィルタを適用します。 | ===== 使用例 ===== const uint8_t START_INPUT = 0; const uint8_t STOP_INPUT = 1; const uint8_t RUN_OUTPUT = 32; void setup() { Serial.begin(115200); } void loop() { const bool start = IbounceOn(START_INPUT, 100); // 入力がOFFからONに変わるときだけ時間フィルタを適用します。 const bool stop = IbounceOff(STOP_INPUT, 100); // 入力がONからOFFに変わるときだけ時間フィルタを適用します。 const bool run = start && !stop; digitalWrite(RUN_OUTPUT, run ? HIGH : LOW); static bool previousRun = false; if (run != previousRun) { previousRun = run; Serial.println(run ? F("motor RUN") : F("motor STOP")); } } ===== 注意事項 ===== ''Ibounce''系の関数は状態を保持するため、''loop()''で継続的に呼び出してください。使用する製品の実際のピンまたは論理チャネルを指定してください。 ===== 同じカテゴリの内蔵コマンド ===== * [[:ja-jp_commands:reference:idigitalread|IdigitalRead() 詳細説明を見る]] * [[:ja-jp_commands:ibounce|Ibounce() 詳細説明を見る]] * [[:ja-jp_commands:reference:ibounceon|IbounceOn() 詳細説明を見る]] [[:ja-jp_commands:builtin|← 内蔵コマンド一覧]]