Raspberry Pi GPIO Pinout
Complete Raspberry Pi 40-pin GPIO reference.
| Interface | BCM Pins | Physical |
|---|---|---|
| UART | BCM 14 (TX), BCM 15 (RX) | Phys 8, 10 |
| I2C1 | BCM 2 (SDA), BCM 3 (SCL) | Phys 3, 5 |
| SPI0 | BCM 10 (MOSI), 9 (MISO), 11 (SCLK), 8 (CE0), 7 (CE1) | Phys 19,21,23,24,26 |
| SPI1 | BCM 20 (MOSI), 19 (MISO), 21 (SCLK), 18/17/16 (CE) | Phys 38,35,40,12,11,36 |
| PWM | BCM 12 (PWM0), BCM 13 (PWM1), BCM 18 (alt) | Phys 32,33,12 |
| 1-Wire | BCM 4 (default) | Phys 7 |
Raspberry Pi GPIO ピン配置 — BCM番号、物理ピン、代替機能
Raspberry Piの40ピンGPIOヘッダーは、デジタルI/O、PWM、SPI、I2C、UART、電源レールへのアクセスを提供しますが、どの物理ピンがどのBCM番号に対応するかを覚えるのは、経験豊富なPiユーザーでも常に調べる必要があります。このインタラクティブなリファレンスでは、機能の素早い検索に適したグリッドビューと、ボード上の実際のピン配置を再現した物理ヘッダービューを切り替えることができ、ピンを数えることなく自信を持ってセンサーや周辺機器を接続できます。
Raspberry PiのGPIOには2つの番号体系があります。物理(BOARD)番号は、ボード上の40ピンヘッダーを左上から右下に向かって1〜40と数えます。BCM番号はBroadcomチップの内部GPIO番号に従っており、連番ではありません。多くのソフトウェアライブラリ(RPi.GPIO、gpiozero、pigpio)はデフォルトでBCM番号を使用します。Pythonでは、GPIO.setmode(GPIO.BCM)でBCM番号を、GPIO.setmode(GPIO.BOARD)で物理位置を使用します。このリファレンスでは両方を表示しているため、どちらのモードでも迷わず使用できます。
I2C(GPIO 2 = SDA、GPIO 3 = SCL)は、2本のワイヤーでセンサーやディスプレイを接続します。一般的なデバイスにはBME280温湿度センサー、MPU6050加速度計、SSD1306 OLEDディスプレイなどがあります。SPI(GPIO 10 = MOSI、GPIO 9 = MISO、GPIO 11 = SCLK、GPIO 8/7 = CE0/CE1)は、SDカード、高速ADC、LoRAラジオモジュールなど高速周辺機器に使用されます。UART(GPIO 14 = TXD、GPIO 15 = RXD)は、GPSモジュール、Arduinoボード、GSMモデムとのシリアル通信に使用されます。ハードウェアPWMはGPIO 12、13、18、19で利用でき、ソフトウェアPWMは任意のGPIOで可能ですがジッターが発生します。
すべてのRaspberry PiのGPIOピンは3.3V論理レベルで動作し、5Vには対応していません。5Vの信号をGPIO入力に直接接続するとPiが損傷します。5V ArduinoからのシグナルをRaspberry Piに入力するには、ロジックレベルコンバーターまたは電圧分圧器(抵抗2本)を使用してください。各GPIOピンは最大16mAのソースまたはシンク電流を扱えますが、継続使用時の推奨最大電流はピンあたり8mAです。全GPIOピンの合計電流消費量は50mAを超えないようにしてください。LEDを駆動する場合は、必ず電流制限抵抗を使用してください(3.3Vで標準の赤色LEDには330Ω)。
40ピンGPIOヘッダーのレイアウトは、Raspberry Pi 2、3、4、5、Zero/Zero 2 Wで共通です。オリジナルのModel BとAは26ピンヘッダーを持ちます(最初の26ピンは同じです)。このリファレンスはすべての現代のPiボードで使用される40ピン標準を対象としています。Pi 5では低レベルのGPIO実装に変更があり(新しいRP1サウスブリッジチップを使用)、タイミングに敏感なコードは調整が必要な場合がありますが、ピンの割り当ては同じままです。
よくある質問
- What is BCM numbering?
- BCM (Broadcom SoC channel) numbering refers to the GPIO pin numbers on the Broadcom BCM2835/2836/2837 chip, used in Python RPi.GPIO and pigpio. Physical pin numbering counts pin positions on the header starting from pin 1 (near SD card).
- Are Raspberry Pi GPIO pins 5V tolerant?
- No. All Raspberry Pi GPIO pins operate at 3.3V logic and are NOT 5V tolerant. Connecting a 5V signal directly to a GPIO pin can permanently damage the BCM chip. Use a level shifter when interfacing with 5V devices.
- How many GPIO pins does the Raspberry Pi have?
- The 40-pin header has 26 usable GPIO pins (BCM numbering). The rest are 5V power (2 pins), 3.3V power (2 pins), and ground (8 pins).
関連ツール
- Resistor Color Code Calculator
Decode resistor color bands. Supports 4-band and 5-band.
- Ohm's Law Calculator
Calculate voltage, current, resistance, or power using Ohm's Law.
- Voltage Divider Calculator
Calculate output voltage for a resistor voltage divider.
- 555 Timer Calculator
Calculate frequency, duty cycle, and timing for 555 timer circuits.
- CRC Calculator
Calculate CRC checksums — CRC-8, CRC-16, CRC-32, and custom polynomials.