ヘッダをスキップし本文へ
ヘッダ画像

はじめに

IoTのステーションに数多くの機能をもたせるときには、ESP8266単体では制御しきれなくなります。 能力的な問題であったり、IOピンの数であったり、アナログのコントロールであったりと言った場合です。

その場合には、ESp8266にarduino nanoなどを接続して、arduinoをコントロールし処理を行います。

ESP8266とarduinoを接続

ESp8266とarduinoとはシリアルインターフェイスで接続させます。 通常のシリアルインターフェイスを使ってもいいですが、デバッグのことを考え温存しておきます。 その代わりに、ソフトウェアシリアルを使うことにします。

一方、arduino側では、ESp8266からのシリアル通信を待ち合わせる必要がありますので、 そのライブラリを用意しました。

回路

ESP8266にarduinoを接続

ESp8266のGPIO12をarduinoのRXに、ESP8266のGPIO13をarduinoのTXに接続します。 その他の接続についてはここでは割愛します。

シリアル接続

サンプルスケッチ

ソフトウェアシリアルを使ってのサンプルのスケッチを掲載します。
softserial.ino

解説

ソース説明
#define SSR_TX送信用のピンを指定しています。
#define SSR_RX受信用のピンを指定しています。
#includeライブラリをインクリュードします。
SoftwearSerialオブジェクトをコンストラクトしています。
SSR.begin()初期化
SSR.println...()メッセージをarduinoに送信します。
スケッチの解説

UARTライブラリ

インストール

git clone https://github.com/m0kimura/KaUart.git
上記フォルダ構成をgithubからインストールします。

初めての方はESP8266no入門講座をお読み下さい。

ソース

KaUartライブラリはこのような処理になります。

KaUart.cpp

解説

ソース説明
#include "KaUart.h"ライブラリ定義を呼び出します。
Serial.begin()シリアルを初期化
Serial.abailable()読み込みできるデータがあるかを調べる
Serial.reasStringUntil()「nl」まで読み込み
if(x==47)「/」のときは出力側インデックスをアップ
スケッチの解説

呼び出しの例

KaUart.cpp