NodeMCUのファームウェアをアップロードしたESP8266をホストマシンとUSB-TTLシリアル接続します。シリアル通信はCoolTermから操作します。ArduinoをESP8266への3.3Vの電源供給用です。NodeMCUを使うとESP8266単体でLuaを使ったハードウェア制御ができるようになります。
Wi-Fiの設定
最初にアクセスポイントの設定をします。NodMCUをファームウェアにしたESP8266は既存の無線LANの子機として動作させます。wifi.sta.config
にはアクセスポイントのSSIDとパスワードを指定します。DHCPからIPアドレスが取得できました。
> wifi.setmode(wifi.STATION) |
HTTPクライアント
次にNodeMCUをHTTPクライアントとして使ってみます。Node.jsのようにイベント駆動なコールバックを定義して受信したpayloadを出力します。この例ではNodeMCUのホームページのHTMLを取得します。
> conn = net.createConnection(net.TCP, false) |
Lチカ
配線図のようにLEDをESP8266のGPIO0につなぎます。USB-TTLシリアル変換モジュールのVCCが5Vなので、Arduino Unoを3.3V電源供給用に使います。
ESP8266のGPIOピンアサインを見るとGPIO0はPin 3
になります。CoolTermから以下のように実行します。Arduinoと似た感じでHIGHでLEDが点灯し、LOWで消灯します。
> pin = 3 |