No.4
外側の形や箱の作成↓
シンシンサイト
内側の基盤の作成
ボタンを押すと、LEDが光り、その光ったデータを受け取ったデバイス(パソコンやスマホ)の画面上にご飯がいるorいらないの表示をしたい!(一週間分)
まずはスイッチを押すとLEDが光る回路を作る。
5Vとスイッチの片方を繋げる。スイッチのもう片方と受信する番号のポートとLEDの+を繋げる。そしてLEDの-を基盤のGNDとつなげる。
次にそれを一週間分の七つ作成する。
ラボにあるLEDを使用した。するとボルト数が合っていなかったようで発熱し焦げた。
七つのLEDと七つのスイッチを上記の回路のように組み立てる。
そしてはんだ付けをし、まとめる。
ポート番号を七つ選ぶ(使えるやつと使えないやつがあるため)
[12][13][14][21][22][27][32]
七つのボックスをつくり、LEDが光ったらデータを0から1にするプログラミングを入れる。
全コード↓
#include
#include
//使用環境に応じて変更-----------------------------------------------------
const char* ssid = "";//繋げたいネットワーク
const char* password = "";//繋げたいネットワークのパスワード
String pkey = "";//端末ID
//-------------------------------------------------------------------
//dfLinkインスタンス化-->conn1とよぶ
dfLink conn1(pkey);
void setup() {
// put your setup code here, to run once:
Serial.begin(74880);//esp32は74880
WiFi.begin(ssid, password);
Serial.println("WiFi connecting");
while ((!(WiFi.status() == WL_CONNECTED))){
delay(300);
Serial.print(".");
}
pinMode(14, INPUT);
pinMode(32, INPUT);
Serial.println("OK");
}
void loop() {
//必要に応じて変更-->センサーなどから値を取得(例では直接変数に代入)-------
int idata=0;
float fdata=1.5;
String tdata="test";
int val[7] = {0,0,0,0,0,0,0};
val[0] = digitalRead(14);
val[1] = digitalRead(32);
val[2] = digitalRead(22);
val[3] = digitalRead(12);
val[4] = digitalRead(21);
val[5] = digitalRead(27);
val[6] = digitalRead(13);
Serial.println(String(val[0])+String(val[1])+String(val[2])+String(val[3])+String(val[4])+String(val[5])+String(val[6]));
//-----------------------------
//引数はintデータ、floatデータ、テキストデータの順番
//intデータ、floatデータはStringに変換する
String ret=conn1.send_data("","",String(val[0])+String(val[1])+String(val[2])+String(val[3])+String(val[4])+String(val[5])+String(val[6]));
//必要なデータだけ送信したい場合は下記のように、不要なデータは""と空にする
//String ret=conn1.send_data("",String(fdata),"");
//String ret=conn1.send_data(String(idata),"",tdata);
Serial.println(ret);
delay(1000);
}
実際動かしてみようと思ったが、使用したいネットワークを入れなおしていないため、保留中。