WeMosを使ってみる
TCP-Wifi-UART Bridge
ESP8266にはSerial(UART0)のほかに、Serial1(UART1)が有ります。
UART0はGPIO1 (TX) と GPIO3 (RX) にマッピングされていますが、
Serial.swap()を使うと、GPIO15 (TX) と GPIO13 (RX) に変更することができます。
UART1は TX pin だけが GPIO2 にマッピングされていて、UART1では送信だけを行うことができます。
UART1は、Serial1.begin(baudrate) で使うことができます。
UART0を使うアプリケーションでは、シリアルモニターを使ったデバッグを行うことができません。
その様なときはUART1をデバッグに使うことができます。
ESP8266
Coreに含まれている「WiFiTelnetToSerial」ではUART1をデバッグポートとして使っていますので紹介します。
「WiFiTelnetToSerial」では、UARTの入出力をWifi経由でTCPで扱うことができます。
まず、TTL-USB変換アダプタを以下のように接続します。
TTL-USB変換アダプタをWindowsPCのUSBポートに入れて、TeraTermでCOMポートを開きます。
COMポートのボーレートは115200bpsです。
ESP8266 |
TTL-USB変換アダプター |
GPIO2 |
RX |
GND |
GND |
次にファイル→スケッチ例→ESP8266Wifi→WiFiTelnetToSerialを開いて、WeMosに書き込みます。
スケッチが起動すると、TeraTerm(COMポート)に以下が表示されます。
この表示はUART1を使っています。

TeraTermをもう1つ起動し、表示されているアドレス宛にTelnetで接続します。
Telnetで接続すると以下の表示となります。

Arduino-IDEの入力フィールド(一番上)に適当な文字を入れて「送信」ボタンを押すと
TeraTerm(Telnetポート)側に受信した文字を表示します。

TeraTerm(Telnetポート)の「端末の設定」を以下のように変更します。

TeraTerm(Telnetポート)で適当な文字を入力して[Enter]を押すと、
Arduino-IDE側に受信した文字を表示します。

UARTへの入出力をTeraTermを使って行うことができますので、
UARTしか持たないデバイスを遠隔で操作したり、モニターリングすることができます。
このようにUART0を使うアプリでは、UART1を使ってデバックやガイダンス表示を行うことができます。
次回はUDP-Wifi-UARTブリッジを紹介します。
続く....