問題タブ [raspberry-pi-pico]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - ボタン (GPIO) MicroPython でロジックを押す
反復メニュー ロジックに関する別の質問がありましたが、問題がボタン ロジックに変化したため、元の質問が本当に解決されたので、それらを分離します。
私のコードは次のとおりです。
特に、2 つのボタンが定義されていることがわかります。
また、それらは主に、複数の選択肢があるメニューから選択するために使用されます。
ただし、ボタンを交互にしか押せないという問題が発生しています。つまり、multi_choice 関数の開始時に、button1 を押して最初のオプションを選択したり、button2 を押して次のオプションにスクロールしたりできますが、たとえば、button2 を押しても、2 回目の押下には登録されません ( 2 番目のオプションを選択するには)、次にボタン 1 を押すだけです... その場合、次にボタン 2 を押すだけです。
これは、私が見ていない論理的な問題に過ぎないと確信しています。
ボタンは、GPIO ピン 2 と 3 の通常の一時的に閉じた Cherry MX スイッチです。確実に機能しますが、このロジックには何か問題があります。
次のテストは問題なく機能するため、ボタンではありません...
これをデバッグするためにいくつかの印刷ステートメントを追加しました。ボタンが値を取得および保持していることがわかります。人為的なリセットを調整する必要があるような気がします。おそらくそれはデバウンスでできることでしょうか? いろいろ試しましたが、今のところ進展がありません。
上記のデバッグ出力の出力は次のとおりです。