初歩の電子工作とデジカメの日記

電子工作備忘録とデジカメで撮影した写真のブログです。

ESP8266 ボードでLCDディスプレイ 8桁2行 を制御する

2016-09-18 11:12:33 | ESP8266
ESP8266ボードをArduino化しての「Lチカ」動作確認が完了したので次に「LCDディスプレイ」を使っての動作確認をします。


使用部品1:
ESP8266ボード
スイッチサイエンスの「ESPr developer」に足の長いピンソケットとピンラベルシートを取り付けています

使用部品2:
I2C接続小型LCDモジュール(8 x 2行)キット
秋月電子通商で購入


自分はキットを購入し、ハンダ付け作業をしたのだが持ち前の不器用さで時間を取られた。完成品もあるのでそちらのほうが良いかも。


回路図はソフト「Bsch 3v」で作成した。I2C接続なので使用するピンが少なく、配線は楽になる。


ブレッドボード上に部品を配置、ジャンパ線で結線してハードウエアは完了

スケッチ(プログラム)はexabugsさん投稿のこちらの記事に掲載のものをそのまま利用させて頂きました。
Arduino IDEにコピー&ペーストして、ESP8266ボードに書き込んでソフトウエアも完了


動作確認作業の開始
Arduino IDEのシリアルモニターを立ち上げる。設定は"CR+LF" "115200bps"
シリアルモニターの入力欄に"ESP8266"の文字と数字を入力→[送信]ボタンを押下する


8桁2行のLCD画面に"ESP8266"が表示された


続けてシリアルモニターの入力欄に"Hello !"の文字と記号を入力→[送信]ボタンを押下する


8桁2行のLCD画面の2行目に"Hello !"が表示された





ESP8266ボードをArduino化する

2016-09-15 11:05:44 | ESP8266
ESP8266ボードをArduino化する詳しい方法はググれば先人の方々が教えてくれていますので、それらの記事を参考にしてください。ここでは簡単に手順を書くに留めます。

  1. PCにはarduino.ccからリリースされている最新のArduino IDEをインストールする
  2. Arduino IDEにESP-WROOM-02のボードを追加する
  3. 通常のArduino同様の手順でプログラムを書き込む


Arduino IDEでは画像のように「ツール」タブの項目を赤下線の部分を変更した
シリアルポートのCOM番号15は自分の場合です。あ、それと「upload speed」も115200に変えてます



ESP8266ボードArduino化最初はお決まりのLチカを動作確認します
IO13にLEDを接続し、330Ωの抵抗を経由してGNDに落としています


スケッチはArduinoのLチカのスケッチと全く同じです

void setup() {
// initialize digital pin 13 as an output.
pinMode(13, OUTPUT);

}

void loop() {
digitalWrite(13, HIGH); // turn the LED on (HIGH is the voltage level)
delay(400); // wait for a second
digitalWrite(13, LOW); // turn the LED off by making the voltage LOW
delay(400); // wait for a second

}


使用したスイッチサイエンスのESPr Developerは、とても楽チンなボードです
1. 3.3V対応USBシリアル変換IC FT231XSが本体に搭載済みなのでボードをA→MicroBタイプのUSBケーブルでPCと接続すればArduino IDEを利用できる
2. 5V→3.3V 変換電源レギュレーター XC6222B(最大出力電流700mA)も本体に搭載済みなので電圧変換も何も設定なしで実行される
3. 最初に書いたように「Arduino IDE」の[ツール]のボード設定の内容にある[Reset Method]を[nodemcu]に変えておけばスケッチの書き込み、動作実行時に切替えるための数回ボタンを押す煩わしさがなくなる

ブレッドボードへの取り付け用のピンはピンヘッダではなく、Arduino用?の足の長いピンソケット10P x 2本を使っています。これによりジャンパ線をボード本体に直接接続できます。またボード本体のピンのシルク印刷の文字は小さく、読みづらいのでシールを貼っています。


espr blink

Arduino → ESP8266 とは?

2016-09-13 11:00:21 | ESP8266
8ビットマイコン「Arduino」は無線通信の機能を持っていないので[Arduino]から無線でデータを送るとか、無線で[Arduino]のプログラムを実行、制御するためには別途無線通信ができるデバイスを用意、設定する必要があった。[Ethernetシールド]、[XBee-WiFi]等だ。ただ設定が面倒なのと、価格がちょっと高いと感じて二の足を踏んでいたが、いろいろ調べているうちに[ESP8266]を知ることになった。


[ESP8266]は WiFi チップで、モジュールも [ESP-01] から [ESP-14] そして [ESP-WROOM02] と種類が多いが、モジュールそのままではピンの間隔が狭い(1.5mmピッチ)のでユニバーサル基板やブレッドボードでは扱いにくい。
そこで日本の技適を通している [ESP-WROOM02] モジュールのピン間隔を2.5mmに引き出した変換基板が各社から販売されている。





ESP-WROOM02モジュール 15 x 12 mm
購入品1:
ESP8266ブレークアウトボード(変換基板)=マイクロテクニカ製
購入品:2
ESP8266ブレークアウトボード(変換基板)=スィッチサイエンス製A
購入品:3
ESP8266ブレークアウトボード(変換基板)=秋月電商製
購入品:4
ESP8266ブレークアウトボード(変換基板)=スィッチサイエンス製B
購入品:5
ESP8266ブレークアウトボード(変換基板)=スィッチサイエンス製C


いつの間にか [ ESP8266ブレークアウトボード ] (この記事ではこれ以後 [ESP8266ボード ] と呼ぶことにします)は5機種も買っていましたが、最終的にはスイッチサイエンス製のBを使っています
5機種も買ってしまった理由はなるべく使いやすいもの、を求めてが一番ですが購入後最初にボードの動作確認のためATコマンド入力をするのですが、そこでATコマンド入力ミスをして先へ進めなくなり動作確認が中途半端にストップしてしまったことも理由の1つです。
そんな事情もあり次回はこのボードでのATコマンド入力による動作確認を諦め、ボードをArduino化してArduinoのスケッチの動作確認をします。