FC2カウンター FPGAの部屋 MIPIボード用PMOD拡張ボードをテストする3(I2C、SPI のテスト方法)
FC2ブログ

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

MIPIボード用PMOD拡張ボードをテストする3(I2C、SPI のテスト方法)

MIPIボード用PMOD拡張ボードをテストする3(実機でテスト)”の続き。

フレックスターズさんのブログの”Ultra96 Linux で MIPI カメラから画像を取得する (解説編)”を全面的に参考にさせていただきます。

フレックスターズさんのブログの”Ultra96 Linux で MIPI カメラから画像を取得する (解説編)”の「3. カメラ制御」の「3.1 I2C 制御」によると、TCA9548A のI2C スイッチによって I2C が 8 個に分けられているということだった。
そのうちの 0 番ポートの I2C0 と 1 番ポートの I2C1 をPMOD に出力している。
I2C0 を使うには、PS の I2C1 コントローラから 0x75(TCA9548A のアドレス)、0x1 を送れば良いそうだ。I2C1 を使うには、 0x75、 0x2 を送る。
フレックスターズさんのブログの”Ultra96 Linux で MIPI カメラから画像を取得する (解説編)”の「3.1 I2C 制御」によると、TCA9548A の 0 番ポートの I2C0 が /dev/i2c-2 に、 1 番ポートの I2C1 が /dev/i2c-3 に割り当てられているようだ。これらを open して使えば良さそうだ。

PS の I2C1 コントローラからアクセスするためのソースコードもGitHub のultra96_design/src/linux/caminit/src/ov5640.cc::init_ov5640() もしくは ultra96_design/src/linux/caminit/src/imx219.cc::init_imx219() にあるそうだ。

もう1つの資料としては、Linux から I2C を使う方法を書いた”I2Cデバイスの扱い方”が参考になりそうだ。

次にSPI だが、低速コネクタのSPI0 の信号線をPMOD に出力している。
やはり、PS のIOU のSPI 0 が出力されているようだ。
SPI をLinux から使う方法は、なひたふさんの”ZYNQのSPIをLinuxから使う方法”が参考になりそうだ。
とりあえずSPI は後回しにしよう。
Xilinx Wiki SPI Zynq driver

I2CとSPI を使用するモジュールを買う必要があるが、秋月電子のBME280使用 温湿度・気圧センサモジュールキットだったら、I2C と SPI の両方使用できるから、これにしようか?
  1. 2019年05月28日 05:28 |
  2. Ultra96
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック URL
http://marsee101.blog.fc2.com/tb.php/4537-a8682f0d
この記事にトラックバックする(FC2ブログユーザー)