オラ、ドラゴンレーダーを作るぞ(8)

*** 8.1 Arduino Duemilanoveの3.3V化

例によってワタシ、ハードウェアワカリマセン状態に変わりはないので、3.3V化改造に書かれている手順の通りに進めました。

すごく分かりやすく書かれているのですが、あちらこちらで理解できない説明があるんですよね・・・
自分なりに読み解いて、こんな感じでつなげてみました。

!注意!まだこの組み立てで動いていません!良い子は真似しないでください!
!注意!まだこの組み立てで動いていません!良い子は真似しないでください!


あと、表面のパターンカットも自信ないのですが、ググってみたところカッターナイフやマイナスのドライバーで傷をつけるということなので、そのようにしてみました。

分かりにくいけど、パターンカットした後。違うところまで傷ついているような・・・
分かりにくいけど、パターンカットした後。違うところまで傷ついているような・・・


あと、ピンヘッダそのものは購入していたのですが、2つのピンヘッダをつなげるコードを買っていない!
っていうか、このコードなんていう名前なの?(T T)
ピンソケットが両側にくっついているような感じなんだけど・・・

そういえば、LCDのピンソケットで半分にぶった切った残りがあるから、それをジャンパワイヤの先にくっつけちゃえ。
我ながらいい思い付きだと思ったのですが、ピンソケットをニッパーできるのはかなり無理があり、どんどん駄目パーツが増えていく・・・

ピンソケットの亡骸。ほんとごめんなさい。
ピンソケットの亡骸。ほんとごめんなさい。


とにもかくにも、やっと3.3V化が完了したぞ~。

パターンカットが一番びびりました。後戻りできないから・・・
パターンカットが一番びびりました。後戻りできないから・・・


*** 8.2 配線してみたけど・・・

Arduino Forum › Software › Development › Arduino control the 2.4″ TFT LCDを参考に、ArduinoとLCDをつなげていきます。
が、購入したLCDと微妙に違うので、なんか番号が違うんだよなあ。。

とりあえずこんな感じでつなげてみました。

|Arduino Duemilanove側|WBX280V009-PCB(ILI9325)側|
|デジタル0|DB10|
|デジタル1|DB11|
|デジタル2|DB12|
|デジタル3|DB13|
|デジタル4|DB14|
|デジタル5|DB15|
|デジタル6|DB16|
|デジタル7|DB17|
|デジタル8|RS|
|デジタル9|WR|
|デジタル10|CS|
|デジタル11|RESET|
|GND|DB0~7をブレッドボード経由で|

そして、USBでPCにつなげて、itdb02のサンプルコードを流し込む!!
一発で動くといいなあ~♪
(そんなに甘くはない・・・)

これがサンプルコードのスケッチ。

#include <ITDB02.h>
 
ITDB02 lcd(0,1,2,3,4,5,6,7,8,9,10,11);
 
void setup()
{
  lcd.Initial();
  lcd.CleanLCD();
}
 
void loop()
{
  lcd.Setcolor(0x00,0xffff);
  lcd.Dispshowstr(80,300,"iteadstudio.com");
}

どきどきしながら「アップロード」ボタンを押す!
ってこんな無造作にアップしていいものなのかもよく分からない!

いつものようにTXとRXのLCDがテケテケと点滅し、そして・・・あれ、TXだけが延々点滅しているぞ・・・
よく分からないけど、いったんUSBを外し、うーんどうしよう。

*** 8.3 問題の切り分け

いっぺんにLCDの8bit化とArduinoの3.3V化をやったので、原因箇所とおぼしきものはすごく多い。
とりあえず大まかに切り分けるとこんなところでしょうか。

  • LCDの8bit化のチップ抵抗付け替えをミスった
  • Arduinoの3.3V化の手順に誤りがある(配線方法の間違い)
  • Arduinoの3.3V化の作業に誤りがあった(ハンダ付けがへた)
  • ArduinoとLCDの配線に誤りがある
  • LCDが壊れている。または自分が壊した。
  • Arduinoを壊した。

一番嫌なのは、Arduinoそのものが壊れたのではないかということです。
いったん配線を外して、一番シンプルな、LEDをデジタル13ピンとGNDにつけて点滅させるプログラムが動くかどうかを試してみました。

と、アップロードしようとすると今度はArduino IDEにエラーメッセージが。
こんな感じのエラーが出ます。

avrdude: stk500_getsync(): not in sync: resp=0x30
avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x51

あ~・・・どんどん悪くなっていく~・・・
どうもコードの接触不良とか配線ミスが原因らしいのですが、なんといってもさっきパターンカットとかしたばっかりだしなあ(大汗)

3.3Vのほうについていた電源切り替えのピンソケットを5Vに変えて再トライしたところ、今度は動いたっっ!!!
LEDが点滅してくれました。良かった~。Arduinoそのものはまだ死んでいないようです。

5Vに差し込んだり3.3Vに差し込んだりしても、いずれも問題ないようなので、改めて3.3VにつなげてLCD用のサンプルコードをアップロードします。
今度はTXとRXが数秒点滅した後止まって・・・LCDを期待の目で見つめるのですが・・・うんともすんとも言わないなあ。
まったく無反応です。

う~ん・・・やっぱり配線が悪いのかなあ。
また後日チャレンジすることにします。

現状の組み立て。動いてないこともあり非常にしょぼく見える。
現状の組み立て。動いてないこともあり非常にしょぼく見える。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です