====== TCNTSETUP() ====== ''TCNTSETUP()''はタイマの外部クロック入力と32ビット拡張モードを設定します。 {{:ja-jp_commands:reference:tcntsetup.svg?900|TCNTSETUP コマンドの動作フロー}} ''void TCNTSETUP(uint8_t timerNumber, bool on32bit = false)'' ===== コマンド ===== ^ コマンド ^ 引数 ^ 戻り値 ^ 動作 ^ | ''TCNTSETUP(timerNumber, on32bit)'' | ''uint8_t timerNumber'' — 製品が対応する外部クロックタイマ番号\\ ''bool on32bit = false'' — ''false'':ハードウェア16ビットカウンタのみ使用。''true'':オーバーフロー割り込みで上位16ビットのオーバーフロー回数を累積 | ''void'' | タイマの外部クロック入力と32ビット拡張モードを設定します。 | ===== 使用例 ===== const uint8_t COUNTER_TIMER = 1; void setup() { Serial.begin(115200); TCNTSETUP(COUNTER_TIMER, true); // タイマ外部クロック入力と32ビット拡張モードを設定します。 } void loop() { static uint16_t previousOverflow = 0; const uint16_t overflowCount = TCNTOUT(COUNTER_TIMER); // 32ビット拡張モードの上位オーバーフロー累積値を返します。 if (overflowCount != previousOverflow) { previousOverflow = overflowCount; Serial.println(overflowCount); } } ===== 注意事項 ===== * タイマ外部クロック方式はMPINO-8A8RとMPINO-16A8R8Tだけが対応しています。 * 対応製品でもTCNT端子とタイマ番号を製品資料で確認してください。 * ''TCNTOUT()''を単純な16ビット現在カウンタ読み取り関数として解釈しないでください。 * 他の製品の割り込みISRでは、カウント増加以外の処理を行わないでください。 ===== 同じカテゴリの内蔵コマンド ===== * [[:ja-jp_commands:reference:tcntout|TCNTOUT() 詳細説明を見る]] [[:ja-jp_commands:builtin|← 内蔵コマンド一覧]]