GPIO

GPIOは、集積回路やコンピュータボード上の一般的なピンであり、その動作（入力ピンであるか出力ピンであるかを含む）は、実行時にユーザによって制御可能である。GPIOは"General-purpose input/output"の略で、「汎用入出力」を意味する。
マイクロプロセッサ、マイクロコントローラ、インタフェースデバイスは、外界と接続するための一つまたは複数のGPIOインタフェースを持っている。
GPIOピンにはあらかじめ定義された目的がなく、デフォルトでは使用されない。
すでに構築済みのシステムにシステムインテグレータがデジタル制御線を追加したい場合に、あらかじめチップにGPIOをつけておけば、そのための回路を追加する必要がなくなる。例えば、RealtekのALC260チップ（音声コーデック用）には8つのGPIOピンがあり、デフォルトでは使用されない。エイサーのラップトップでは、ALC260のGPIOの1つ目のピン(GPIO0)を使用して、ラップトップの内蔵スピーカと外付けヘッドフォンジャックのためのアンプをオンにしている。
使用法.
メーカーは以下のような場合にGPIOを使用する。
機能.
GPIOの機能には以下のものがある。
GPIOデバイスの種類は非常に広範囲である。時には、デバイスは非常に単純であり、入出力を切り替えられるピンのグループである。一方では、それぞれのピンが異なるロジック電圧の入出力が出来るよう柔軟に設定可能であり、ドライブ能力やプルアップ／プルダウンも設定可能である。普遍的ではないが、典型的には入出力電圧は、GPIOを持つデバイスの供給電圧に制限される。制限を越えた電圧により、デバイスが損傷を受けることがある。
個別のGPIOの読み書きや入出力の設定は、一つまたは複数の制御レジスタを読み書きすることで行う。いくつかのGPIOには5V耐性の入力ピンがある。低い供給電圧(2V)であっても、デバイスは損傷を受けることなく、5Vの入力を受け入れられる。
ポート.
しばしばGPIOはピンのグループ（典型的には8ピン）であるGPIOポートで扱われることがある。通常は個別のGPIOピンごとに入力または出力に個別に設定出来るが、GPIOポートはグループごとの入出力設定となる。