〜Raspberry Piを使った電子工作〜
今回接続したのは、いわゆる「秋月3000円液晶」、または「PSP液晶」と呼ばれる4.3インチのフルカラー液晶モジュール ATM0430D5です。
この液晶モジュールに、同じく秋月電子で入手できるLCDコントローラ評価ボードS1D13781F00Aを接続して使います。この組み合わせで良いところは、液晶パネルの解像度がそれなりに高い(480x272ピクセル)上に、キットのように組み立てるだけで使うことができるという点と、3.3V単一電源で動作するため、電源をRaspberry PiのI/Oコネクタから取ることができ、コンパクトなシステムに仕上げることができるという点です。
このレポートでは、LCDパネルをXのコンソール画面として使ったり、オリジナルのグラフィックスライブラリを使って、計器の表示などを行えるようにすることを目指します。
Raspberry Pi(以下RPiと略します)と液晶モジュールは次の図のようにして接続します。
RPiと液晶パネルの間には、LCDコントローラというLSIを入れます。LCDコントローラというのは、LCDパネルの制御をCPUの代わりに行うもので、CPUの負荷を軽減させることができます。また、一部の描画をハードウェアが受け持つことにより、非力なCPUでも高速な描画をすることができます。
下の写真は、Raspberry Piに、LCDコントローラ基板を介して液晶パネルに繋いだところです。
液晶パネルの上の方にある基板がLCDコントローラ基板です。この基板には、液晶パネルのバックライトを点灯させるための回路も載っています。
1)LCDコントローラと液晶パネルの接続
まず、LCDコントローラ基板(S1D13781F00A)の外観を図で示します。
この基板のJ8端子(FFCコネクタ)に液晶パネルを接続しますが、そのままではLCDコントローラとは接続されていません。J5端子とJ9端子の真ん中で基板が「パキッ」と折れるようになっており、FFCブレイクアウト基板(J9端子側)と、LCDコントローラ基板の2つに分けて使うことができるようになっています。
J5端子とJ9端子を適切に接続することで、液晶パネルがLCDコントローラと接続されます。ここでは、LCDコントローラのJ5端子(50ピン)にとJ9端子(50ピン)を繋ぎます。ストレートに繋ぐのではなく、次の表に従って繋ぐ必要があります。
※12/18修正:当初は、J5端子No.とJ9端子No.が逆に記載されていました。正しくは下表の通りです。ご指摘頂いたmin様、有難うございました。
LCDコントローラ
評価ボード
J5端子No.LCDパネル
FFC変換基板
J9端子No. 端子名 端子説明 47 1VLED- Power for LED backlight cathode 45 2VLED+ Power for LED backlight anode 1 3GND Power ground 39 4VDD Power voltage 25 5R0 RED data signal (LSB) 26 6R1 RED data signal 27 7R2 RED data signal 28 8R3 RED data signal 29 9R4 RED data signal 30 10R5 RED data signal 31 11R6 RED data signal 32 12R7 RED data signal (MSB) 17 13G0 GREEN data signal (LSB) 18 14G1 GREEN data signal 19 15G2 GREEN data signal 20 16G3 GREEN data signal 21 17G4 GREEN data signal 22 18G5 GREEN data signal 23 19G6 GREEN data signal 24 20G7 GREEN data signal (MSB) 9 21B0 BLUE data signal (LSB) 10 22B1 BLUE data signal 11 23B2 BLUE data signal 12 24B3 BLUE data signal 13 25B4 BLUE data signal 14 26B5 BLUE data signal 15 27B6 BLUE data signal 16 28B7 BLUE data signal (LSB) 2 29GND Power ground 6 30CLK Pixel clock 39 31DISP Display on/off NC 32- (接続しない) NC 33- (接続しない) 5 34DE Data enalbe (Hi-active) NC 35- (接続しない) 7 36GND Power ground NC 37-50- (接続しない) 私の場合は、下の写真のように、導線を基板の端子に直接はんだ付けしました。後でケースに入れるため、なるべくコンパクトに収めようとしたためです。。。
補足)液晶パネルとLCDコントローラ基板を繋ぐ時の注意点
液晶パネルに付いているFFCケーブルを、J8端子(FFCコネクタ)に接続する時の注意点を記載しておきます。
FFCケーブルは40ピンですが、J8端子には50ピンのFFCコネクタが付いています。秋月のキットを買うと40ピンのFFCコネクタが付いてきますので、必要に応じて換装することができますが、換装せずそのまま使う場合、次の注意点があります。
・次の図のようにFFCケーブルの1番ピンをFFCコネクタの1番ピンに合わせて接続する
J8端子の上側に「1」というマークが付いていますので、マークが付いている方にFFCケーブルを合わせて挿入します。J8端子の41番ピン〜50番ピンは空きますが、問題ありません。
ちなみに、FFCケーブルをFFCコネクタに挿入する時は、そのまま差し込むのではなく、FFCコネクタの開口部分(FFCケーブルを差し込むところ)にマイナスドライバーを静かに差し込んで捻ると「パカッ」と開きますので、そこにFFCコネクタを一番奥まで差し込んだ後、黒い部分を閉めます。(パチンと手応えがあるまで押し込みます)
2)LCDコントローラとRPiの接続
次に、LCDコントローラのJ4端子(50ピン)とRPiのP1コネクタを接続します。
次の表に従って接続します。※GND と 3V3ピンを間違えないように色分けしてあります。
LCDパネル
J4端子No. RPi
P1端子No. 端子名 1 20 GND 2 20 GND 3 17 3V3 4 17 3V3 5 (接続しない) - 6 20 GND 7 20 GND 8 20 GND 9 20 GND 10 20 GND 11 20 GND 12 20 GND 13 20 GND 14 20 GND 15 20 GND 16 20 GND 17 20 GND 18 20 GND 19 20 GND 20 20 GND 21 20 GND 22 20 GND 23 20 GND 24 17 3V3 25 17 3V3 26 17 3V3 27 24 CE1 28 23 SCLK 29 19 MOSI 30 21 MISO 31 20 GND 32 20 GND 33 20 GND 34 20 GND 35 20 GND 36 20 GND 37 20 GND 38 20 GND 39 20 GND 40 20 GND 41 20 GND 42 20 GND 43 20 GND 44 20 GND 45 20 GND 46 20 GND 47 (接続しない) - 48 (接続しない) - 49 (接続しない) - 50 (接続しない) -
GNDやVCCへ接続するピンが沢山ありますが、必ず全部接続してください。次の写真のように、GNDへ繋ぐピンをLCDコントローラ基板側で1本にまとめてしまって構いません。スズめっき導線(部品の足の切れ端でも良い)で全てのGNDをハンダ付けします。
また、VCCへ接続するピンも同様です。3)LCDコントローラ基板の設定
LCDコントローラ基板は、初期状態では液晶パネルのバックライト点灯回路が動作しないようになっていますので、設定する必要があります。
バックライト点灯回路の設定はJ3端子で行います。J3端子の機能は次の通りです。
J31-2 接続でレギュレータイネーブル 3-4 接続でレギュレータ電流を+20mA 5-6 接続でレギュレータ電流を+20mA 7-8 接続でレギュレータ電流を+20mA ATM0430D5のバックライトの消費電流は20mAです。
そのため、J3端子の1番−2番ピンをショートし、また同じように3番−4番ピンもショートします。
下の写真に設定例を示します。(クリックすると拡大します)以上でハードウェア組立編は終了です。
>> Raspberry Piを使った電子工作へ戻る
YokoMuMu's Contentsに戻る
2013/11/09作成