Hardware DesignJLCPCB ReadyComplete BOM

RP2040ミニマル回路設計:カスタム基板を自作する(2025年版)

RP2040の最小回路設計の完全ガイド。電源、水晶発振子、QSPIフラッシュ、USB-C、ブートモード、デカップリング、JLCPCBの部品番号付きPCBレイアウトを解説。

By Schemalyzer Team35 min read
RP2040最小回路設計 - 完全ハードウェア設計ガイド

はじめに

RP2040はRaspberry Pi初のシリコンチップであり、カスタムハードウェアプロジェクトで 非常に人気があります。Raspberry Pi Picoボードはプロトタイピングに最適ですが、 多くのプロジェクトではカスタムフォームファクター、異なるI/O構成、または 量産向けのコスト最適化設計が必要です。

このガイドでは、RP2040ベースの回路基板をゼロから設計するために必要なすべてを 提供します。必要最小限の回路、各設計決定の説明、そしてJLCPCB対応の 部品番号を含め、スキーマティックから組み立て済みボードまで素早く進めます。

前提条件:このガイドは、PCB設計ツール(EasyEDA、KiCad、 またはAltium)の基本的な知識と、デカップリングや信号ルーティングなどの 基本的な電子工学の概念を前提としています。

なぜRP2040で設計するのか?

利点

  • +デュアルARM Cortex-M0+コア @ 133MHz
  • +264KB SRAM(ほとんどのCortex-M0チップより多い)
  • +プログラマブルI/O(PIO)ステートマシン
  • +USB経由のUF2ドラッグ&ドロッププログラミング
  • +低コスト(量産時約$0.70-1.00)
  • +Raspberry Piからの優れたドキュメント

考慮事項

  • !内蔵フラッシュなし - 外部QSPIが必要
  • !QFN-56パッケージは慎重なはんだ付けが必要
  • !USBブートローダーのみ(UARTブートなし)
  • !チップ下の単一GNDパッド - はんだ付けが重要
  • !12ビットADC(DACなし、4チャンネル)

最小回路要件

電源と数個のコンデンサだけで動作する多くのマイクロコントローラーとは異なり、 RP2040には機能的なシステムのための特定の要件があります:

必須コンポーネント

必須

  • 1x RP2040マイクロコントローラー
  • 1x 外部QSPIフラッシュ(2MB-16MB)
  • 1x 12MHzクリスタル + 2つの負荷コンデンサ
  • 1x 3.3V電圧レギュレーター
  • 11x 100nFデカップリングコンデンサ
  • 2x 1µFコンデンサ(VREG入出力)

USBプログラミング用

  • 1x USBコネクタ(Type-C推奨)
  • 2x 27Ω USBシリーズ抵抗
  • 2x 5.1kΩ CC抵抗(USB-C)
  • 1x BOOTSELボタン
  • 1x 1kΩ BOOTSEL抵抗
  • 1x ESD保護(推奨)

システムブロック図

各サブシステムに入る前に、すべての部品がどのように接続されるかを示します:

RP2040最小回路ブロック図 - 電源、USB、フラッシュ、クリスタル接続を表示

電源設計

電源アーキテクチャの概要

RP2040は動作に2つの電圧レールが必要です:

  • IOVDD(3.3V) - すべてのI/O、USB PHY、ペリフェラルに電力供給
  • DVDD(1.1V) - デジタルコア(ARMコア、SRAM)に電力供給

RP2040には3.3V電源から1.1Vを生成する内部リニアレギュレーターが含まれています。 これにより外部電源設計が簡素化されます - 3.3Vのみを供給すればよいのです。

内部1.1Vレギュレーター

内部レギュレーターには以下が必要です:

  • VREG_VIN - 1µFコンデンサ付きで3.3Vに接続
  • VREG_VOUT - 1µFコンデンサ付きですべてのDVDDピンに接続

バッテリーアプリケーション:内蔵LDOはコアがスリープ時は 効率的ですが、高負荷のバッテリーアプリケーションでは、より良い効率のために 外部スイッチング1.1V電源を検討してください。

外部3.3V電源オプション

USB電源設計では、5V USBを3.3Vに変換する必要があります:

レギュレータータイプ電流JLCPCB備考
XC6206P332MRLDO200mAC5446推奨 - 基本部品
AP2112K-3.3LDO600mAC51118人気の選択(SparkFun、Adafruit)
ME6211C33LDO500mAC82942低ドロップアウト(500mA時100mV)

AMS1117は避けてください:人気があるにもかかわらず、AMS1117は 高い静止電流(約5mA)、大きなコンデンサが必要、低負荷時の性能が悪いです。 代わりにXC6206またはAP2112Kを使用してください。

デカップリングコンデンサ

適切なデカップリングはRP2040の安定性に重要です。チップには複数の電源ピンがあり、 それぞれに独自のコンデンサが必要です:

ピン数量目的
IOVDD(ピン1,10,22,33,42,49)6x100nFI/O電源デカップリング
DVDD(ピン23, 50)2x100nFコア電源デカップリング
USB_VDD(ピン48)1x100nFUSB PHY電源
ADC_AVDD(ピン43)1x100nFADCリファレンス
VREG_VIN(ピン44)1x1µFレギュレーター入力
VREG_VOUT(ピン45)1x1µFレギュレーター出力

レイアウト重要:RP2040のグランド接続は、チップ中央の大きなパッドの 1つだけです。すべてのデカップリングコンデンサは、コンデンサ→電源ピン→チップ内部→ 中央GNDパッド→コンデンサへの最短ループを持つ必要があります。 コンデンサの直下にビアを使用してグランドプレーンに接続してください。

水晶発振器

RP2040には内部発振器がありますが、正確なUSBタイミングと安定した動作には 外部12MHzクリスタルが必要です。

クリスタルの選択

クリスタルは以下の仕様を満たす必要があります:

  • 周波数:12.000 MHz
  • 負荷容量:通常10-20pF
  • ESR:100Ω未満推奨
  • 周波数許容差:±30ppm以上

推奨クリスタル

JLCPCB部品: C9002

12MHz、3225パッケージ(3.2mm × 2.5mm)、20pF負荷容量、±10ppm。 これはJLCPCB基本部品であり、組み立てコストを低く抑えられます。

負荷コンデンサの計算

負荷コンデンサ(CL1とCL2)は、クリスタルの指定負荷容量とPCB浮遊容量に 基づいて計算する必要があります:

負荷コンデンサの公式
C_load = (CL1 × CL2) / (CL1 + CL2) + C_stray

等しいコンデンサの場合(CL1 = CL2 = C):
C = 2 × (C_load - C_stray)

20pF負荷容量と3pF浮遊容量の例:
C = 2 × (20pF - 3pF) = 34pF

最も近い標準値:33pFまたは27pF

一般的な負荷コンデンサ値

クリスタルCL負荷コンデンサ(各)JLCPCB部品
10pF15pFC1644
12pF18pFC1645
20pF33pFC1663

クリスタルレイアウトガイドライン

  • クリスタルをXIN/XOUTピン(ピン20/21)にできるだけ近く配置
  • 負荷コンデンサをクリスタルパッドの直近に配置
  • XIN/XOUTトレースを高速信号(特にQSPI)から離す
  • ノイズ耐性のためにクリスタル周囲にグランドガードリングを検討
  • クリスタルをQSPIフラッシュとはチップの反対側に配置

QSPIフラッシュメモリ

RP2040には内蔵フラッシュメモリがなく、すべてのプログラムコードは外部QSPI フラッシュチップから実行されます。これは慎重に選択して接続する必要がある 重要なコンポーネントです。

フラッシュチップの選択

RP2040ブートローダーはWinbond W25Qシリーズフラッシュに 最適化されています。他のチップも動作する可能性がありますが、Winbondが最も安全な選択です:

部品番号サイズパッケージJLCPCB備考
W25Q16JVSNIQ2MBSOIC-8C131024最小推奨
W25Q32JVSSIQ4MBSOIC-8C179171大規模プロジェクト向け
W25Q128JVSIQ16MBSOIC-8C97521最大サポート

警告:Macronixや他の一部のフラッシュチップはドロップイン 代替品として機能しません。互換性が保証されたWinbond W25Qシリーズを使用してください。

フラッシュ接続

フラッシュピンRP2040ピン機能
1 (/CS)QSPI_SS(ピン57)チップセレクト
2 (DO/IO1)QSPI_SD1(ピン53)データアウト / IO1
3 (/WP/IO2)QSPI_SD2(ピン54)ライトプロテクト / IO2
4 (GND)GNDグランド
5 (DI/IO0)QSPI_SD0(ピン52)データイン / IO0
6 (CLK)QSPI_SCLK(ピン56)クロック
7 (/HOLD/IO3)QSPI_SD3(ピン55)ホールド / IO3
8 (VCC)3.3V電源(100nFコンデンサ付き)

QSPI_SSプルアップ:QSPI_SSから3.3Vへの10kΩプルアップ抵抗を追加します。 これにより、電源投入時にフラッシュチップセレクトがHighに保たれ、フラッシュが 未定義状態に入ることを防ぎます。

フラッシュレイアウトガイドライン

  • フラッシュをRP2040 QSPIピンにできるだけ近く配置
  • 最大トレース長:20mm(短いほど良い)
  • 推奨トレース幅:0.15mm(6 mil)
  • クロックトレースをすべてのQSPI信号の中で最も長く保つ
  • フラッシュVCCピンに直接100nFデカップリングコンデンサを追加
  • フラッシュとトレースの下に堅固なグランドプレーンを維持

USBインターフェース

USBはRP2040の主要なプログラミングインターフェースであり、便利なUF2 ドラッグ&ドロップファームウェアアップロードを可能にします。

USB-Cコネクタ設計

最新の設計では、リバーシブル性と耐久性からMicro-USBよりUSB-Cが推奨されます。 主要な接続:

USB-Cピン接続先備考
VBUS (A4, B4, A9, B9)5V入力電圧レギュレーターへ
D+ (A6, B6)RP2040 USB_DP(27Ω経由)A6とB6を結合
D- (A7, B7)RP2040 USB_DM(27Ω経由)A7とB7を結合
CC1 (A5)5.1kΩでGNDへデバイス検出
CC2 (B5)5.1kΩでGNDへデバイス検出
GND (A1, A12, B1, B12)グランドすべてのGNDピンを接続

重要:CC1とCC2の両方に別々の5.1kΩ抵抗が必要です。 CC1とCC2を一緒に接続しないでください - これはUSB-C仕様に違反し、 検出問題を引き起こします。(これはRaspberry Pi 4Bの発売時のバグでした。)

ESD保護

厳密には必須ではありませんが、ユーザーが取り扱う製品では USB回線のESD保護を強く推奨します:

推奨ESD保護

USBLC6-2SC6:D+/D-ライン用TVSダイオードアレイ

JLCPCB部品:C7519

±15kV接触放電と±8kV空気放電から保護。 低容量(0.5pF typ)で信号整合性を維持。

USBトレースレイアウト

USBはインピーダンス制御が必要な差動信号です:

  • 目標インピーダンス:90Ω差動
  • トレース幅:0.8mm(1.6mmボード厚の場合)
  • トレース間隔:D+とD-間0.15mm
  • 27Ωシリーズ抵抗:RP2040ピンの近くに配置
  • 長さマッチング:D+とD-を等長に保つ

ブートモード回路

RP2040は電源投入時にBOOTSEL状態をチェックするROMベースのブートローダーを使用します。 ブートシーケンスを理解することは、信頼性の高いプログラミングインターフェースを 設計するために不可欠です。

BOOTSELボタン設計

BOOTSEL機能はQSPI_SSピンを使用します。リセット中にQSPI_SSがLowに保持されると、 RP2040はファームウェアアップロード用のUSBマスストレージモードに入ります:

BOOTSEL回路
QSPI_SS(ピン57)
    |
    +--- 10kΩプルアップで3.3Vへ(オプションだが推奨)
    |
    +--- 1kΩシリーズ抵抗 --- BOOTSELボタン --- GND

ブートシーケンス:
1. BOOTSELボタンを押し続ける
2. 電源を入れる(またはBOOTSELを押しながらRESETを押す)
3. RP2040がQSPI_SS Lowを検出 → USBブートモードに入る
4. ボタンを離す
5. UF2ファイルをUSBドライブにドラッグ

なぜ1kΩ抵抗?シリーズ抵抗は通常動作中にQSPI_SSピンが 出力として駆動されているときの電流を制限します。これがないと、 動作中にボタンを押すと出力をグランドにショートさせてしまいます。

リセット回路

RUNピン(ピン26)はRP2040のリセット入力です(アクティブLow):

リセット回路
RUN(ピン26)
    |
    +--- 10kΩプルアップで3.3Vへ
    |
    +--- 100nFコンデンサでGNDへ(デバウンス/フィルター)
    |
    +--- RESETボタン --- GND

一般的な使用法:
1. 電源投入:RUNがHighにプル、チップ起動
2. RESETを押す:RUNがLowにプル、チップリセット
3. 離す:RUNがHighに戻り、チップ再起動
4. BOOTSELモード:BOOTSELを押しながらRESETを押す

GPIOブレイクアウト

RP2040は柔軟なペリフェラルマッピングを持つ30個のGPIOピンを提供します。 最小設計では、どのGPIOを引き出すか検討してください:

GPIOピン一般的な機能
GPIO0-12, 3UART0 TX/RX, I2C0, SPI0
GPIO2-54-7SPI0, I2C1, PWM
GPIO6-98-11SPI0, I2C0/1, PWM
GPIO10-1312-15SPI1, I2C0/1, PWM
GPIO14-1716-19SPI1, I2C0/1, PWM
GPIO18-2124-27SPI0, I2C0/1, PWM
GPIO22-2529-32PWM, PIO, LED(PicoではGPIO25)
GPIO26-2934-37ADC0-3, PWM

ヒント:GPIO0/GPIO1をUARTデバッグ用に予約してください。 これらはデフォルトのUART0ピンであり、開発中のシリアル出力に非常に便利です。

PCBレイアウトガイドライン

レイヤースタックアップ

公式最小設計は2層基板を使用しますが、より良い性能と容易なルーティングのために 4層を推奨します:

2層(低コスト)

  • レイヤー1:信号 + 部品
  • レイヤー2:グランドプレーン + 電源ルーティング
  • 課題:RP2040下の電源分配
  • 残りのスペースに1.1Vと3.3Vをルーティング

4層(推奨)

  • レイヤー1:信号 + 部品
  • レイヤー2:堅固なGNDプレーン
  • レイヤー3:3.3V電源プレーン
  • レイヤー4:信号 + 1.1Vルーティング
  • より良いデカップリングとEMI性能

グランドプレーン戦略

RP2040の中央グランドパッドは、チップ全体の唯一のグランド接続です。 これにより、グランドプレーン設計が重要になります:

  • 熱的および電気的接続のために、グランドパッド下に最低9個のビアを使用
  • RP2040直下に堅固なグランドプレーンを作成
  • すべてのデカップリングコンデンサのグランドをビアでこのプレーンに接続
  • QSPIトレース下に連続したグランドを維持
  • 周囲にグランドスティッチングビアを使用

重要な信号ルーティング

信号グループ最大長トレース幅備考
QSPI(フラッシュ)20mm0.15mmCLKを最長に、下に堅固なGND
USB D+/D-50mm0.8mm差動ペア、0.15mm間隔
クリスタルXIN/XOUT5mm0.2mmQSPIから離す
電源(3.3V、1.1V)-0.3mm+デカップリングコンデンサまで短く

部品表

JLCPCB基本部品

JLCPCB基本部品を使用すると、組み立て料金を最小化できます (拡張部品タイプごとに$3)。可能な限り基本部品を使用:

完全なBOM

参照パッケージJLCPCB部品タイプ
コアコンポーネント
U1RP2040QFN-56C2040拡張
U2W25Q16JVSNIQSOIC-8C131024拡張
U3XC6206P332MRSOT-23C5446基本
Y112MHz3225C9002基本
コンデンサ
C1-C10100nF0402C1525基本
C11-C121µF0402C52923基本
C13-C1427pF0402C1557基本
抵抗
R1-R227Ω0402C25100基本
R3-R45.1kΩ0402C25905基本
R5-R610kΩ0402C25744基本
R71kΩ0402C11702基本
コネクタ & ボタン
J1USB-C16ピンC2765186拡張
SW1-SW2ボタン3x6mmC318884基本

推定コスト:部品あたり約$2-3(5枚最小)、 組み立て料金約$5 + 拡張部品タイプごとに約$3。

避けるべき一般的な間違い

1. グランドパッド接続不良

中央パッドは唯一のグランド接続です。十分なビア接続で適切にはんだ付け されていないと、何も機能しません。適切な接続を確保するために リフローはんだ付けまたはホットエアリワークを使用してください。

2. 間違ったフラッシュチップ

Winbond以外のフラッシュチップを使用すると、ブート失敗の原因になることが よくあります。W25Qシリーズを使用してください。別のチップを使用する場合は、 まったく同じコマンドセットと電源投入タイミングをサポートしていることを確認してください。

3. QSPI_SSプルアップの欠如

電源投入時、QSPI_SSは一時的にフロートする可能性があります。プルアップがないと、 フラッシュチップが未定義状態に入り、ブート失敗の原因となります。

4. CC1/CC2の接続(USB-C)

各CCピンには独自の5.1kΩ抵抗が必要です。一緒に接続するとUSB-C仕様に違反し、 断続的な検出問題を引き起こします。

5. RP2040からクリスタルが遠すぎる

長いトレースは浮遊容量を追加し、有効負荷容量を変更します。 これはUSBタイミングを壊す周波数エラーを引き起こします。

テストとデバッグ

組み立て後、以下のテストシーケンスに従ってください:

  1. 目視検査:特にRP2040とUSBコネクタのはんだブリッジを確認します。 QFN-56パッケージはブリッジしやすいです。
  2. 電源確認(USB未接続):USB接続前に3.3Vと1.1Vレールを測定します。 安定して正しい電圧であることを確認してください。
  3. BOOTSELテスト:BOOTSELを押しながらUSBを接続します。 コンピューターに「RPI-RP2」という新しいUSBドライブが表示されるはずです。
  4. フラッシュテスト:UF2ファイル(Pico点滅例など)をドライブにドラッグします。 消えてコードが実行されるはずです。
  5. UARTテスト:USB-UARTアダプターをGPIO0/GPIO1に接続し、 シリアル出力が機能することを確認します。

ボードがBOOTSELモードで停止?これは通常、フラッシュチップが 応答していないことを意味します - フラッシュ接続、電源、チップ選択を確認してください。 ブートローダーは、フラッシュから有効なコードを読み取れない場合、または リセット中にBOOTSELが押されている場合にのみUSBモードに入ります。

結論

カスタムRP2040ボードの設計には、電源、フラッシュメモリ、クリスタル、 USB回路の細部への注意が必要です。しかし、Raspberry Piからの優れた ドキュメントとオープンソース設計の成長するコミュニティにより、 基本的なPCB設計経験を持つ誰にとっても達成可能なプロジェクトです。

覚えておくべき重要なポイント:

  • 互換性が保証されたWinbond W25Qシリーズフラッシュを使用
  • 中央グランドパッド接続に特別な注意を払う
  • QSPIトレースを短く、クリスタルをチップの近くに保つ
  • デカップリングコンデンサを省略しない
  • 簡単なプログラミングのためにBOOTSELとRESETボタンを含める

Raspberry Piの公式KiCad最小設計ファイルを出発点としてダウンロードし、 インスピレーションのために他のオープンソースRP2040プロジェクトを 参照することをためらわないでください。

ソース & 参考文献

Related Articles

Review Your RP2040 Schematic

Designed your RP2040 circuit? Upload your EasyEDA schematic to Schemalyzer for instant analysis and catch potential issues before ordering PCBs.

Try Schemalyzer Free