ja-jp_commands:reference:fifo
差分
このページの2つのバージョン間の差分を表示します。
| 両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン | ||
| ja-jp_commands:reference:fifo [2026/09/07 23:35] – 바깥 편집 127.0.0.1 | ja-jp_commands:reference:fifo [2026/09/12 23:27] (現在) – 바깥 편집 127.0.0.1 | ||
|---|---|---|---|
| 行 14: | 行 14: | ||
| ===== 使用例 ===== | ===== 使用例 ===== | ||
| + | |||
| + | シリアルモニタから'' | ||
| <code cpp> | <code cpp> | ||
| - | uint16_t | + | uint16_t |
| - | uint16_t | + | uint16_t |
| - | uint16_t sequence | + | |
| void setup() { | void setup() { | ||
| Serial.begin(115200); | Serial.begin(115200); | ||
| + | Serial.println(F(" | ||
| } | } | ||
| void loop() { | void loop() { | ||
| - | | + | |
| - | const bool release | + | const char key = Serial.read(); |
| - | const bool reset = IdigitalRead(2, 5); // 入力を連続して複数回読み、すべて一致した場合のみ状態を更新します。HIGHとLOWが混在する場合は前の安定状態を保持します。 | + | const bool store = key == ' |
| + | const bool take = key == ' | ||
| + | const bool reset = key == ' | ||
| + | if (!store && !take && !reset) return; | ||
| - | | + | const bool ok = FIFO(0, store, |
| - | | + | |
| - | | + | |
| - | if (release && fifoOk && filoOk) { | + | if (reset) { |
| - | Serial.print(F("oldest=")); Serial.print(fifoValue); | + | nextValue = 10; |
| - | Serial.print(F(" | + | Serial.println(F("buffer cleared")); |
| + | } else if (!ok) { | ||
| + | | ||
| + | } else if (store) { | ||
| + | Serial.print(F(" | ||
| + | Serial.println(nextValue); | ||
| + | nextValue += 10; | ||
| + | } else { | ||
| + | Serial.print(F(" | ||
| + | | ||
| } | } | ||
| } | } | ||
| </ | </ | ||
| + | |||
| + | 満杯のバッファへの保存、空のバッファからの取り出しは失敗します。 | ||
| ===== 注意事項 ===== | ===== 注意事項 ===== | ||
| '' | '' | ||
| + | |||
| + | ===== 同じカテゴリの内蔵コマンド ===== | ||
| + | |||
| + | * [[: | ||
| [[: | [[: | ||
ja-jp_commands/reference/fifo.1788791736.txt.gz · 最終更新: by 127.0.0.1
