公開日:2024/12/07
title.png

32nd Season


#32-10 SPI-TFTをPMODに繋ぐ(変換基板)

 Cmod A7ボード(FPGA)を使って、オリジナル16ビットCPUコアMoscoviumの開発を進めています。

 FPGAボードで使いたいと思って購入したSPI-TFT表示器(下図、以降単にSPI-TFT)がありました。

a183_spitft.jpg

 しかし一度、Moscoviumに接続してから使っていません。理由は、ちょっと使い難い🙅から、です。その使い勝手を向上しようと思います。

SPI-TFT表示器

 128×160ドット18ビットカラー(約26万色)で、QQVGAより少し広い、小さなTFT表示器です。詳しくは、Arduino DUEで試行した時の記事がありますので、以下記事を参照してください。

  「#18-3 SPI接続TFT表示器

 インターフェイスはSPI通信なのですが、所謂SPI通信の信号線(SS,SCK,MOSI/MISO)に加えて、データ/コマンドストローブ信号D/CX、リセット信号RESETが必要で、更にバックライトの輝度を調整しようと思うと、PWM出力が追加となります。加えて、電源(VCC,GND)も印加しないと動きません。
 何気に、接続すべき配線数が多くて使い難いのでした。下図は、以前使っていたPrimerボード(中華FPGA、Booo!)に接続した時の様子です。

a185_expr.jpg

 上図の通り、ジャンパ線の数が多いです。いざ使おう、と思っても、この配線が面倒で敬遠してしまうのです。

 例えば、下図のOLEDディスプレイなどはI2C接続なので、I2C通信信号線2本(SCl,SDA)と電源(VCC,GND)だけ接続すれば使うことができます。

a222_oledisp.jpg

 OLEDディスプレイはお手軽で良いのですが、表示範囲が狭く、白黒なのが難点です。

 表示範囲が広く、カラー描画可能なSPI-TFTも、お手軽に使える様にしておきたいところです。

PMODコネクタ

 Cmod A7ボードには、PMODと言う規格のインターフェイスコネクタがついています。
 PMODコネクタは特殊なコネクタ(※)ではなく、単なる2列×6本の2.54mmピッチピンソケットなので、普通に万能基板やピンヘッダを使って、適合するアダプタボードを工作できるのが特徴です。

Groveみたいな特殊なコネクタを採用するのはセンスなさすぎ。使い難くて大迷惑。


 以前、カメラモジュールOV7670をPMODコネクタに接続したことがありました(以下リンクおよび下図)。

  「#30-5 VGAカメラ再び」〜4回の記事:

a308_expr.jpga306_adapter.jpg

 今回も同様にアダプタボードを工作して、PMODコネクタにSPI-TFTを接続してみます。

アダプタボードの設計と工作

 SPI-TFTのインターフェイスは単列のピンヘッダになっていて、全16端子存在します(下図)。

a183_spitft_bk.jpg

 一部、使用予定の無いSDカードとの通信信号線や、何も接続されていないN.C.端子があります。シルクの信号名と機能については、こちらの表を参照してください。
 上写真の通り、ピンヘッダをブレッドボードに挿して使おうとすると、シルク面が下側になって見えなくなってしまうのも、地味に使い難い点です。16本も端子が出ているのにシルク面が見えないと、配線する時「上からN本目、1、2、3、……、N」等と、数えなくてはなりません。

 時に、以下記事にてMoscoviumへ接続して使って見た事がありました。

  「#18-5 MoscoviumとSPI-TFT

 この時、SPI-TFTとの通信にはソフトウェアSPIを使ったので、普通の汎用I/Oポート×5本と、PWM出力×1本の計6本のデジタル端子が必要でした。PMODコネクタの信号線数は最大8本なので、全ての端子をPMODコネクタに引き出すことができます。
 OV7670カメラモジュールと同様にアダプタボードを工作して、SPI-TFTをPMODコネクタに接続できる様に整備して行きたいと思います。

アダプタボードの配置配線

 こちらの5×7cm万能基板をベースに、配線のし易さを考えながら、SPI-TFTの端子とPMODコネクタを接続するプランを考えました。下図に配線図を示し、要点の解説を続けます。

a32a_adapter.png

  要点の解説:

 簡単に工作できる様、なるべく配線が交差しない事に注意を払いながら配線しました。それでも、数えてみると10数本の配線をはんだ付けする必要があります。まあ、この工作を乗り切りさえすれば、SPI-TFTの使い勝手が格段に向上するので、頑張って工作しましょう。

アダプタボード完成

 完成したアダプタボードの外観図を以下に示します。

a32a_adapter.jpg

 SPI-TFTを実装した様子は、次回実験する時にご確認いただけます。PMOD接続用ピンヘッダの取り付け位置がアダプタボードの重心からずれているので、PMODコネクタへ挿すだけでは自立できない場合、スペーサなどを設置して脚として使う事になると思います。

 時に、OV7670カメラモジュールで撮影した画像をSPI-TFTに表示すると、デジカメっぽいアプリケーションにする事も可能ですよね?でも残念ながら、Cmod A7ボードにはPMODコネクタが1個しか用意されていないため、2個のアダプタボードを同時に使用する事はできません。残念……。
 と、言っても、高々VGAサイズのV7670カメラモジュールで作るデジカメなんて、何の魅力も無いので良いですけど……。
 もっとガタイの大きなFPGAボードだとPMODコネクタを複数搭載しているボードもあるので、FPGAボード選択時の参考にしてみてください。


 アダプタボードも完成したことですし、次回はCmod A7ボード(FPGA)のMoscoviumマイコンにSPI-TFT制御用の論理回路を設計して追加し、実動作を確認して行きます。


btn_arduino.png

btn_prev.png btn_next.png

home