GPIO入力へのボタンの配線で見たほとんどの例では、ボタンは閉じられたときにピンとグランド間で回路が完成し、ピンに低い入力を生成するように配線されています。プルアップ抵抗を使用して、入力値をデフォルトで高に設定します。Piのコードは、ボタンを押すとローを検出できます。
私はボタンを+ 3.3vに接続しているので、信号はより理にかなっており、コードをより論理的に保つように信号が高くなっていますが、ほとんどの人がグラウンドへの接続を好む理由があるに違いありません。利点は何ですか?
GPIO入力へのボタンの配線で見たほとんどの例では、ボタンは閉じられたときにピンとグランド間で回路が完成し、ピンに低い入力を生成するように配線されています。プルアップ抵抗を使用して、入力値をデフォルトで高に設定します。Piのコードは、ボタンを押すとローを検出できます。
私はボタンを+ 3.3vに接続しているので、信号はより理にかなっており、コードをより論理的に保つように信号が高くなっていますが、ほとんどの人がグラウンドへの接続を好む理由があるに違いありません。利点は何ですか?
回答:
GNDへのボタンとロジックの配線が好ましい(そしてインターネット全体にコピーされる)主な理由の1つは、電力の最適化のためです。
複雑な回路またはバッテリーに依存する回路では、この電力は非常に貴重です。
その他の理由には、EMF生成が低いことが含まれます。ワイヤレスデバイスでロジックをHighにすると、非常に敏感なRF受信機で不要なクロストークが発生します。このようなトランシーバーには、ノイズをフィルター処理するために使用されるGNDプレーンがあり、これはすべてのロジックが引き込まれる場所です。次に、プロセッサはGNDプレーンを使用してスイッチングノイズをフィルタリングします。
0v = 0watts
使用法ですが、ピンを上に引くと>0watts
、マイクロ、ミリ、ナノのいずれの種類も関係ありません。言及されているように、バッテリー電力ではすべてのナノワットが役立ちます。しかし、すでにここで答えたように... USBでは何の意味もありません。私は間違っていますか?
電気技術者が通常、抵抗を使用して入力を高くし、スイッチを使用してそれらを接地したのは、複雑な歴史的理由があります。
ただし、これらの理由は、Raspberry Piの趣味での使用には特に関係しません。理にかなったものを使用してください。
商用製品を製造している場合、または設計を少し改善したい場合は、次の実用的な理由から、接地スイッチ付きのプルアップを選択します。
厳密にはプルアップ抵抗は必要ありません。BMCGPIOには、入力としてプログラムされたときにアクティブになる内部プルアップ抵抗がありますが、害はありません。
GPIOピンを3V3またはGNDに直接接続することは適切ではありません。GPIOは双方向であり、入力としてプログラムされている場合、これは問題を引き起こしません。一方、出力としてプログラムされている場合、過剰な電流が流れます。
良い(安全な)設計では、プッシュボタンと直列に直列抵抗(1kΩ)を使用して電流を制限します。Adam Davisの理由により、プッシュボタンをグランドに接続し、GPIOピンの近くに保護抵抗器を配置することをお勧めします。