2019/06/25(火曜日) 晴れ
ESP8266-WROOM-02を単独で動作させてLEDを点滅させたり
スイッチのオン、オフを検出して動作を切り替えたりする実験はできるようになった。
でもこのESP8266-WROOM-02はWiFi(無線)で接続できるのが
売りになっている。
何とかWiFiで接続できるようにしてみたいものだ。

このマイコンを動作させるプログラムは " Arduino IDE"という
システムで開発?する。(オイらが作るプログラムが”開発”に当たるかは甚だ疑問だが)
このシステムにはたくさんのサンプル・プログラムが用意してあってその中にも
WiFiで接続されるウェブ・サーバーのプログラムがある。
それを使って実験してみたが
このサーバーから出てくる画面はただ一行、小さな文字で「 hello from esp8266! 」と
表示されるだけのものだった。
一応オイらの目標はブラウザに表示される画面に、オンやオフのスイッチボタンがあって
それを押すとESP8266が目的の動作をするというぐらいにはしたい。
そこでいろいろなサイトを検索して参考にするプログラムを探した。
すると「(こじ研)小嶋研究室 」さんがアップしている記事が目についた。
説明が丁寧で分かりやすい。
この小嶋さんは何だか大学の教授でたぶん博士の肩書をお持ちだと思われる。
それなのにまったく上から目線は感じられない説明になっている。
そして記事に、
「先ずこのプログラムをコピーして動作させてみてください。」
と書いてある。
早速そのとおりにしてみた。
プログラムのソースコードをArduinoIDEにコピーしてコンパイルし、
ESP8226に書き込みしてRUNさせた。
これでESP8226はウェブサーバーになっているはずだ。
ブラウザから「192.186.・・・」とIPアドレスを打ち込んでサーバーに接続した。
もちろん接続はWiFiだ。
すると・・・・おーっ、画面がでてきた!


アクセスした人数を数えるようになっているんだ・・・
更にサンプルプログラムを探すと、LEDをオン、オフ、スイッチボタンで操作するものが見つかった。
「これだ!!!」
と喜んでコピーしてプログラム書き込み、RUNさせた。
そして期待を込めてIPアドレスを投入・・・・・
あれ、応答がない・・・・ そのうちタイムアウトのメッセージが出てきた。
何度もやってみたがうまくいかない。
それじゃー、うまく動くものと組み合わせてやってみよう・・・と素人考えでプログラムを組み替えてみた。
最初はエラーばかり。
あれこれ組み替えては修正を繰り返してやっと画面が出てきた。

プログラムの動きについてはよくわからない。
ただ、ブラウザから接続されたときに走るルーチンにLEDをオン、オフさせるコードを
追加してRUNさせてみた。

ボタンを押すと、LEDの点灯状況が変わる。
ボタンから外れた場所では反応しない。
これを手掛かりにすればプログラムの動きが勉強できるかもしれない。
そんな実験の様子を動画でご覧ください。
プログラムのコマンドは少しわかった。
でも組み込み関数とかライブラリ機能を一体化したものは全然わからない。
何が何だかわからないがこういう時はこれを使う・・・と覚えなくてはならない。
記憶力が鈍った〝おおよそ八十歳"には無理なことだろう。
若かりし頃に戻りたい・・・・あぁ、タイムマシンがあればなぁ!?