denshikobo’s blog

PICプログラミングやPCの操作で感じた日々の由無し事を綴ります

Arduino(互換機)を動かしてみた

10月始めに注文したArduino互換機が届いたので、早速動かしてみました。

 

全くの初心者なので、『Arduinoの始め方』などのサイトを参考に先ずはHello World!から。続いてLチカ・・・えっ、ポートとGND間に直接LEDを接続するって?

 

 言い訳めいた説明が後に続いていますが、いくら何でもやり過ぎです。せめて、こういう(↓)部品の使用を勧めて欲しいものです。

akizukidenshi.comーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

と言うか・・・

後で気づいたんだけど、オン・ボードのLEDがDIGITAL13の出力で点滅する。

つまりUNO Rev.3(互換機)は、お試しのLチカに外付けのLEDは必要無い。

たから、折角手に入れたArduinoを大事にしたいなら、間違ってもLEDをコネクタに直に指してはいけません。

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

 ぶつくさ文句を垂れながら、抵抗とLEDの直列回路を組んでLチカを確認しました。次にLCD-Keypadシールドを動かすことにしたのですが、ダウン・ロードしたサンプル・スケッチがビルド・エラーで動きません。orz

”ヘッダ・ファイルが見つからない”というのですが、はて?

includeディレクトリってどうやって指定すれば良いんだ?

(これ↑は誤り。ライブラリ登録という方法をまだ知らなかった)

 

LCDKeypadのサンプルは諦めて、標準で入っていたLiquidCrystalライブラリで動かすことにしました。こちらのサンプル・スケッチは問題なくビルドできました。しかし、マイコンに書き込んでもLCDは何も表示しません。

 

ArduinoとLCDKeypadシールド両方併せても1200円しない格安互換機を買ったのがいけなかったのか?(<==少し後悔している)

 

気を取り直してLチカ・プログラムでデジタル出力機能を1pinずつ確かめました。Arduinoの出力は良さそうです。ところがLCDKeypadのpinで確認すると、何か接続が変です。

 

Liquidcrystalのサンプル・スケッチ

const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;

LiquidCrystal lcd(rs, en, d4, d5, d6, d7);

 

LCDKeypad(正規品)のWeb情報

LiquidCrystal lcd(8, 9, 4, 5, 6, 7);

 

ん、pin配置が違う!

 

Liquidcrystalのサンプル・スケッチを次のように修正して

 //const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;
const int rs = 8, en = 9, d4 = 4, d5 = 5, d6 = 6, d7 = 7;

LiquidCrystal lcd(rs, en, d4, d5, d6, d7);

書き込んでみると・・・

 

ビンゴ~

ようやくLCDHello World!が表示されました。

やれやれ

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

ライブラリ登録の方法を調べて、LCDkeypadライブラリのzipファイルをインストール

したところ、LCDKeypadのdemo-sampleも動きました。

ただし、KeypadのUPとDOWNを認識しません(LEFT、RIGHT、SELECTは認識した)。LCDにADC変換結果を表示してみたのですが、UPとDOWNを押しても1023のまま変化しません。回路不良が疑われまが、この件は当面ペンディングにします。

 

結論として、安い互換機でもちゃんと動きました。