12,925
回編集
(→概要) |
|||
1行目: | 1行目: | ||
== 概要 == | == 概要 == | ||
GPIO (General Purpose Input/Output (汎用入出力)) は、マイクロコントローラやシングルボードコンピュータ等のデバイスに搭載されている汎用のピンのことである。<br> | |||
これらのピンは、ソフトウェアにより入力または出力として設定して、制御することができる。<br> | |||
<br> | |||
GPIOの主な概念は以下に示す。<br> | |||
* 入力 | |||
*: GPIOピンを入力として設定する場合、外部のデバイスやスイッチの状態を読み取ることができる。 | |||
*: 例えば、ボタンが押下されているかどうかを検出するために使用できる。 | |||
*: <br> | |||
* 出力 | |||
*: GPIOピンを出力として設定する場合、ピンの状態をHIGH (通常は3.3[V]または5[V])、または、LOW (0[V]) に設定できる。 | |||
*: これにより、LEDの点灯 / 消灯、他のデバイスの制御が可能になる。 | |||
*: <br> | |||
* プルアップ / プルダウン抵抗 | |||
*: GPIOピンは、プルアップ抵抗またはプルダウン抵抗を内部に持つことができる。 | |||
*: これらの抵抗は、ピンが明確な状態 (HIGHまたはLOW) を持つようにするために使用される。 | |||
*: <br> | |||
* 割り込み | |||
*: 一部のGPIOピンは、割り込み機能をサポートしている。 | |||
*: これにより、ピンの状態が変化した時に、CPUに割り込み信号を送ることができる。 | |||
*: これは、リアルタイムの応答が必要な場合に使用する。 | |||
* PWM | |||
*: 一部のGPIOピンは、PWM機能をサポートしている。 | |||
*: PWMはデューティ比を変化させることにより、LEDの明るさ、モータの速度を制御するために使用される。 | |||
<br> | |||
GPIOは、ボタン、スイッチ、LED、センサ、ディスプレイ、モータ等の様々な電子部品やデバイスとのインターフェースに使用されている。<br> | |||
GPIOを使用することにより、これらのデバイスとソフトウェアを連携させて、独自のプロジェクトや組み込みシステムを開発することができる。<br> | |||
<br> | |||
ただし、GPIOを使用する際は、電気的な特性や制限に注意が必要となる。<br> | |||
不適切な使用は、デバイスの損傷や誤動作につながる可能性があることに注意する。<br> | |||
<br> | |||
オンライン上にあるGPIOに関するドキュメントの多くは、ArduinoおよびRaspberry PiのようなSoCを対象にしている。<br> | オンライン上にあるGPIOに関するドキュメントの多くは、ArduinoおよびRaspberry PiのようなSoCを対象にしている。<br> | ||
PCにおいては、SoCとは異なり、GPIOのあるPCはGPIOピンをCPUに直接統合していないが、スーパーI/Oチップ (SIO) を使用している。<br> | |||
<br> | <br> | ||
Qtを使用して、PCのGPIOピンを直接制御することは一般的ではないが、OSやハードウェアに依存した方法を使用することで可能である。<br> | Qtを使用して、PCのGPIOピンを直接制御することは一般的ではないが、OSやハードウェアに依存した方法を使用することで可能である。<br> |