LoginSignup
24
11
Qiita×Findy記事投稿キャンペーン 「自分のエンジニアとしてのキャリアを振り返ろう!」

Raspberry Pi 5 の ペリフェラル速度をユーザー視点で調べてみた

Last updated at Posted at 2024-02-15

この記事は?

「ラズパイ5、GPIO が遅いって話があったけどどうなの?」 を、ユーザー視点で GPIO / I2C / SPI / UART を使って試してみたポストのまとめです。
主にラズパイ 5 と 4 の比較です。

(素人なので、調べ方や結果が正しいかわかりませんが、あくまで発売間もない現時点での 1ユーザーの体験 を記しておきます。)

どうなの?

なんかラズパイ5 の CPU (BCM2712) は RP1 とかいうチップと PCIe Gen2 x4 でつながっていて、その RP1 が GPIO 担当らしい?

うん、よくわからん

よし、とりあえず使ってみよう

概略

Raspberry Pi 5 (bookworm 64bit) (以下、Pi5)
Raspberry Pi 4 (bullseye 64bit) (以下、Pi4)

① GPIO 繰り返し Python コード
Pi5: 400 kHz (GPIO 出力 800 kHz ?) 〇
Pi4: 95 kHz (GPIO 出力 190 kHz ?)

② I2C baudrate 設定
Pi5: 100 kHz - 1.0 MHz
Pi4: 100 kHz - 3.4 MHz 〇

③ SPI Clock データ化けせず受信できる最大実行速度
Pi5: 67 MHz 〇
Pi4: 50 MHz

④ PWM 設定可能周波数
Pi5: 34 nsec period -> オシロ上で 15.36 MHz ?
Pi4: 10 nsec period -> オシロ上で35.76 MHz ? 〇

⑤ UART 通信速度 (PySerial)
Pi5 / Pi4: ともに 2.5 Mbps 程? 〇



ライトユーザーの自分からすると、ラズパイ5 で十分な速度が用意されているようでした。

良かった~!

結果まとめ

① GPIO

※ ラズパイ4 で使っていた pigpio ライブラリが現段階ではラズパイ5 で非対応?これだけ残念。
libgpiod や gpiozero といったライブラリを使えば良いみたいです。

参考:
https://x.com/devemin/status/1757384812644757789?s=20

② I2C

③ SPI

④ PWM

※ gpiozero ライブラリで簡単に PWM できました。

⑤ UART

気になるところ

個人的感想

オマケ

以上です。

ありがとうございました!

24
11
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
24
11