ちびモキット3f 購入

140211b9スイッチサイエンスでちびモキット3fを購入した。最初、新製品情報(twitter?)で見た時は、まぁ買わなくても良いか、と思ったのだが秋葉原の店舗では既に売り切れという記事を見て欲しくなり、メモリ液晶LS027B4DH01は既に持っており、例によって肥やし状態だったので買うことにした。
続きを読む… »

DE0 VGAキャプチャーボード進捗(2)

140211a4細々と開発を進めてきたVGAキャプチャーボード、DE0側の回路が出来たので実験してみたところ、なんか動いてデータを取り込んでいるようなのだが、SDRAMの帯域不足で画面表示が乱れてしまう。今後どうしようか検討中。
続きを読む… »

秋月TFTモジュールの実験

自作stm32モジュールとエプソンのS1D13781評価基板,秋月のTFT液晶モジュールを組み合わせて実験中。
stm32f4xxの内蔵メモリ192kbyteとDMAで480x272dotのTFTを表示させるのは不可能では無いかもしれないが、16bppでやっても 480×272×16÷8 ≒ 261Kbyteで容量的に無理がある。S1D13781を調べると384Kbyteのメモリを内蔵し、480×272の24bpp表示が可能らしい。SPI接続で使用できるし、digikeyで700円ぐらいみたいなので興味を持った。
SPI接続で、どれくらいの更新速度が可能なのか。どんな表示が可能なのかを実験したいということで、実験回路を組んでみた。
続きを読む… »

kumaduino + OLE

USB2本使い

小型のカラーディスプレイを使いたいという珍しい用途があって、aitendoのSPI接続OLEDをKumaduinoと接続。サンプルプログラムを少しいじって表示できるようになった。

最近、kumaduinoはもっぱらUSB2本で接続している。1本はusbaspでのプログラム書き込み。もう1本はデバッグ用のSerial接続。こうするとプログラム書き込みは高速だし、書き込みのたびにシリアルコンソールを開け直す必要も無くて快適。

e-Disp使ってみた

繋いでみた ハロー

以前購入していたe-DISPをstm32ボードに繋いでみた。TTLレベルのシリアル通信で文字コードを送るだけで普通に表示される。まだ、出してないけど日本語も表示できるらしい。

e-DISP側のヘッダーピンはL字のものがおすすめ。何も考えずにストレートのものを付けてしまったら、ケーブルが背面に飛び出て、座りが悪い。ブレッドボードに指すと使いやすい。

LCDシールド(2)

Arduino ネットワーク 時計

自作したLCDシールドをArduinoに装着、出来合いのライブラリを組み合わせてntp同期のインターネット時計を製作。

一応、ちゃんと同期するが、不満な部分がいろいろあるので、もう少しイジる予定。

LCDシールド製作

ArduinoをEtherシールドと遊んでいると表示装置が欲しくなってきたので、ユニバーサル基板(バニラシールド)とキャラクタLCDを購入し、LCDシールドを作成した。

バニラシールドには、ピンヘッダが付属するが、これでEtherシールドに取り付けると、コネクタが干渉し、ピンヘッダがちゃんと刺さらないので、基板の一部を切除。部品を取り付け、配線するが、ピンヘッダが基板の両面にあるので、配線も基板の両面で行う必要があり面倒。

配線終了後、LCDライブラリのExampleにあるプログラムを書き込み動かすが動かない。いろいろ調べ、オシロスコープのプローブでLCDのRW端子を触ると、変な字が表示されることが分かった。電圧を見ると1Vぐらい。

RW端子はGNDに落とせばいいのだが、変な色気を出して10KΩを介してGNDに落としたのが間違いだったようだ。LCD側で50KΩぐらいでプルアップされているらしい。抵抗を1KΩに変更し、表示できるようになった。

コネクタに当たらないように切断 サンプルプログラムで動作確認 4階建て

バニラシールドは、動作中裏側を触れないので、デバッグが面倒だ。普通のピンヘッダではなく、他のシールドで使われている連結フレームを使用すれば、高さの問題も配線の問題も解決できそうなので、楽ができたかもしれない。

AVR Camera TFT LCD Develope Board その後(2)

書込風景 タッチパネル付き?

回路図やプログラムを調べ、驚愕の事実を知る。カメラ→LCDのデータ転送にATmega32Lは介在していない。やっているのは、初期化とV-Sync毎にLCDにコマンドを書き込んでいるだけのようだ。カメラとLCDは8bitのデータバスで接続されている。カメラとLCDに共通のデータフォーマットがあったということなのだろう。

CPUの転送速度で、よく更新が間に合ってるな、最近のCPUは速いのねと思っていたのだが違っていたようだ。CPU経由なら、画像の反転とかすぐできると思っていたのに残念だ。将来、カメラとLCDの間にFPGAとか挟めれば面白いかもしれない。

あと、回路図+実物観察で気がついたのだが、LCDはタッチパネル付き!?

AVR Camera TFT LCD Develope Board その後

メールで送られてきたソースプログラムを見ると(たぶん)中国語のコメントだらけ。まず、このコメントを削らないといじる気にならないので、エディタで全部削除。WinAVRでコンパイルすると、目立つエラーも無くすんなりとhexファイルができた。

これをAVRSPで書き込むと、LCDに初期化中を示すメッセージを表示したところで進まない。ソースと一緒にあったhexファイルだとちゃんと起動する。でも、最初に書き込まれていたプログラムとは少し動作が違うようだ。起動時の画像は表示されないし、動作も若干もっさりしている。

自分でコンパイルしたhexファイルと動作するhexファイルを比較するとサイズが違う。コンパイルした環境が違うらしい。使えそうなコンパイル環境がないか探してみたがみつからない。

仕方がないので、ソースをいじってみることにする。とりあえず、delay.cにあった、如何にも最適化で消えそうなdelay_us関数

void delay_us(unsigned int time){     while (time--);} 

を、消えないように書き換えてみた。

void delay_us(unsigned int time){     while (time--) asm volatile("nop");} 

で、これでできたhexファイルを書き込んだら、あっさり動いた。ちゃんちゃん。

使っているのが WinAVRで、F_CPU値もちゃんと定義してあるのだから、<util/delay.h>の _delay_us()を使えばいいのにとか思う。
まだまだだな。中国人

AVR Camera TFT LCD Develope Board

怪しげな箱が届く

昨年末 陰気な男でいいですかで知ったAVR Camera TFT LCD Develope BoardをeBayで先月 衝動買い。今日 中国から届いた。2.8インチのTFT液晶とCMOSカメラ、ATMega32Lがついたボードがちゃんと動作するプログラムがついて$79というのは驚きだ。しかも送料無料。中国恐るべし。

前面のカメラ 後面のLCD 電源を入れれば写る

回路図やソースプログラム、各種資料はメールで送られてきた。

USBからは電源供給のみ、信号はつながっていない。

字を大きくした

16×8のフォント

XFree86のソースをダウンロードし、大量のbdfファイルの中から16x8dotのフォントを選択、cのソースに変換し、組み込んでカラーLCDに表示できるようにした。これぐらいのサイズだと普通に読めてちゃんと使える。

もっと大きなフォントを使いたい気持ちもあるのだが、そうなると可変幅の問題や圧縮(したい気持ち)の問題もでてくるので、当面は、これぐらいで我慢しておこう。

それよりも日本語を先に表示したいが、それは大容量ROMを手に入れるまでおあづけ。でもそういう環境になったら、英字フォントなんて圧縮しないでも入れ放題だな。

カラーLCDをSTM32ボートに

stm32ボードにカラーLCDをとりつけた。8x5dotのフォントでは、字が小さすぎる。読みづらい。

取り付けた Hello 色々

謹賀新年 2010

寅年 カラー液晶

賀正

昨晩、なんとか画像ファイルをカラー液晶に表示させることができるようになった。サイズは小さいが、128×128の分解能と65536色の表示能力はさすが。もっと活用してみたくなった。

年末(2)

年内にカラーLCDを光らせておきたいと考え、接続ボードを作成開始。CPUはArduinoを使うことにして、最近足りない気味の自作Arduinoを2枚補充。回路図作成、配線と順調に進み、サンプルプログラムを参考に初期化ルーチンを作ってみたら、あっさり光ってしまった。

自作Arduino補充 接続ボード 光った

年末

FGD1442701

まわりが早々に御用納めしてしまったもんで、仕事をする気がおきず休みモードに突入。FF13やったりCivilzationやったり、24とかTVみたりしている。

後閑さんの記事を見て同じものが欲しくなり注文したTFTカラー液晶が届いた。