スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

組み込みAndroidポータブル #3

第3章 表示されない原因を探る

ビーグル君とお散歩を目指すプロジェクト。
LCDを買ってとりあえず繋いだは良いが、真っ白にしか表示されませんでした。

120430_Beagble_LCD.png

検討の結果、3つの間違いがあることがわかりました。

(1)電圧が異なる
LCDの駆動電圧が3.3Vに対して、BeagleBoardxMのLCDの各信号の出力信号の振幅は1.8V
LCDのスペックを見ると信号電圧に関しても電源電圧と同じスペックです。

120430_LCDspec.png
LCD(H043M48027240NC08)のデータシートより抜粋

また、タイミング特性を見るとMAX時の70%や30%を基準としてセットアップ・ホールド時間を規定しています。
電源電圧3.3Vであれば、信号電圧のMAXも3.3Vなので、70%の電圧は2.31Vとなり、1.8Vでは足りないことがわかります。


(2)波形が反転している
LCDのスペックを見ると、VSD(VSYNC Detec)とHSD(HSYNC Detect)はLow Activeになっています。

120430_SYNCspec.png
LCD(H043M48027240NC08)のデータシートより抜粋

これに対してオシロスコープで取得したHSYNCとVSYNCの波形を示します。

HSYNC
120430_HSYNC.png

VSYNC
120430_VSYNC.png

Detectがデータシートと異なりHigh Activeになっています。
他のCLKやRGB DATA、DENはデータシートと同じ論理で問題ありません。
つまり、HSYNCとVSYNCのみ波形が反転してしまっているということ。


(3)CLK周波数が異なる
LCDのスペックを見ると、CLK周波数は5~12MHzである必要があります。
120430_CLKspec.png
LCD(H043M48027240NC08)のデータシートより抜粋

これに対してオシロスコープで取得したCKLの波形を示します。
120430_CLKwave.jpg

計算すると約23MHzで、スペックを超えています。


ポイント
解決方法は以下の通り
(1)LCDの各信号について、1.8Vから3.3Vへ電圧変換する
(2)HSYNCとVSYNCに関して、波形を反転する
(3)解像度の設定を480x272にして、CLKを5~12MHzの範囲内にする

(1)と(2)は、変換基板を新たに挿入することで実現させます。(次回説明)
(3)については、microSDカードにOSを入れるときに設定変更することで実現させます。(後日説明)


続く
スポンサーサイト

組み込みAndroidポータブル #2

第2章 とりあえずLCDを接続してみる

ビーグル君とお散歩を目指すプロジェクト、いよいよ始動です。

まず、LCDを購入します。
パラレルRGB24bitのI/Fで、サイズ4.3inch 解像度480x272、電源電圧3.3VのTFT液晶をaitendoで購入しました。LCDドライバチップ内蔵で、RGB24本とHSYNC(水平同期信号)、VSYNC(垂直同期信号)、CLK(ピクセルクロック信号)、DEN(データイネーブル信号)、電源(VDDとGND)さえ与えてやれば動きます。
120429_LCD.jpg


液晶には必ずバックライトが必要です。このLCDの場合はバックライトLED内蔵ですが、電源22.4Vを外から与えてやることが必要で、昇圧回路が必要になります。
また、40pinのFPCケーブルを受ける基板も必要になります。
しかし、キャリーボードと呼ばれる、昇圧回路もFPCコネクタも搭載されている便利なボードが売られているため、こいつを利用します。キャリーボードにはピンヘッダが挿さるコネクタがありますが、これは使用せず、コネクタの足に直接線で半田付けします
120429_CarryBoard.jpg



まずは、お試しということで、BeagleBoardxMのLCDコネクタの足に直接半田付け。
CLK、HSYNC、VSYNC、DEN、GNDを付けてゆきます。
RGB24bitに関しては、お試し段階なので全部付けるのではなく、どれか一色、最上位ビット辺りを付けときゃ良いだろ。
1.27mmピッチって意外と付けるの大変
VDDに関しては、おっと、LCDの電源電圧は3.3Vなので、レギュレーターICを使ってBeagbleBoardの電源5Vから降圧が必要だった。ユニバーサル基板を小さくカットして、キャリーボードに載せました。
とりゃー! 
120429_Beagle_LCD.jpg
プローブが映っていますが、オシロで波形を取るためです。動作には関係ありません。


Android 2.2(Froyo)のプリビルドイメージを入れたmicroSDカードを挿し、いざ電源ON!
120429_LCD_White.jpg

真っ白です。
バックライトは動いていそうだ

いつまで経っても真っ白・・・
頭の中も真っ白・・・


続く


必要な部品 [ 購入先 ]
・TFT液晶モジュール(4.3) T043S48027240NC07 [aitendo]
・液晶I/F変換基板IFB-T043S [aitendo]
・三端子レギュレータ3.3V出力 [秋月電子通商]
・microSDカード(2GB以上) [電気屋]

ポイント
BeagleBoardと上記LCDを直接接続するのは間違っています。次回解説します。
Androidのイメージの作り方に関しては後日解説します。

組み込みAndroidポータブル #1

第1章 ビーグル君とお散歩したい

1年前に購入した「BeagleBoardxM」と「基礎から学ぶ 組み込みAndroid」
Chapter06でつまづき、手つかずの状態が続いていました。

(11_02_25) Beagleboard-xM

(11_02_20) 組み込みAndroid


しかし、BeagleBoardと小型LCDを接続している方々のブログや動画を見て、創作意欲が沸いてきました。

BeagleBoard-xMにPSP LCDを接続
beagleboard液晶持ち運び計画
BeagleBoard用の入出力基板を作ってみた。
ビーグル板の冒険

最近話題の35ドルPC「Raspberry Pi」などがありますが、拡張性はBeagleBoardxMの上だと思います。(価格も上ですが)
LCDの接続方法として様々ありますが、BeagleBoardxMは安価に手に入るパラレルRGBインターフェースのLCDに直接繋ぐことができます。
という訳で、BeagleBoardxMに ちっちゃくて安価なLCDを繋いでAndroidをポーティングして外でも使えるようにしたいと思います。
このブログでは組み込みAndroidポータブル(カッコ良く言うと自作Androidマシン)の完成までの軌跡を、必要な部品・要点などを含めて報告してゆきます。

目指すは公園でビーグル君とお散歩!
120428_BeagleboardxM_in_the_Park.png
※イメージ図


頑張ります!



必要な部品 [ 購入先 ]
・BeagleBoardxM [Digi-Keyなど]
購入時のポイント

・DCアダプター5V φ2.1mm [秋月電子通商など]
2A以上が推奨


03 | 2012/04 | 05
Su Mo Tu We Th Fr Sa
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 - - - - -
プロフィール

エレクトリックバカ

Author:エレクトリックバカ

ポケコンでプログラミングに目覚め、PICマイコンで電子工作に希望を抱き、来たるべきUGDの時代を夢見て眠る。
そんな うだつが上がらないサラリーメン。
先生、電子工作はおやつに入りますか?




Electric Baka

最新記事
カテゴリ
月別アーカイブ
最新コメント
最新トラックバック
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QRコード
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。