sunfounderのチュートリアルはblynk legacyでないとあかん ふるいのをインストは危険
そうなので断念 チャット君に聞いて次のコードを得た
以下のスケッチは、Arduino UnoからESP-01へATコマンドを送信し、簡単なWebサーバーを立てるための基本的な枠組みです。YOUR_SSIDとYOUR_PASSWORDを実際のWi-Fi情報に置き換えてください。
とのことだったが、AT-THINKER_E71E5Cというアクセスポイントが出てきてpwdなしだった
#include <SoftwareSerial.h>
// ESP-01のRX/TXピンをArduinoの任意のデジタルピンに接続
// ここでは D2(RX) と D3(TX) を使用する例
SoftwareSerial espSerial(2, 3); // RX, TX
void setup() {
Serial.begin(9600);
espSerial.begin(115200); // ESP-01のデフォルトボーレートに合わせて調整 (115200 bpsが多い)
Serial.println("Starting ESP-01 Web Server...");
// ATコマンドでESP-01を設定
sendData("AT+RST\r\n", 2000); // リセット
sendData("AT+CWMODE=2\r\n", 1000); // APモードに設定
sendData("AT+CIFSR\r\n", 1000); // IPアドレスを取得
sendData("AT+CIPMUX=1\r\n", 1000); // 多重接続モード有効化
sendData("AT+CIPSERVER=1,80\r\n", 1000); // TCPサーバー開始 (ポート80)
}
void loop() {
if (espSerial.available()) {
if (espSerial.find("+IPD,")) { // クライアントからのデータ受信を検出
delay(100);
// 受信データを読み込み、HTTPレスポンスを返す処理を実装
String data = "<h1>Hello from Arduino Uno!</h1>";
String cmd = "AT+CIPSEND=0," + String(data.length()) + "\r\n";
sendData(cmd, 1000);
sendData(data, 1000);
sendData("AT+CIPCLOSE=0\r\n", 1000); // 接続を閉じる
}
}
}
String sendData(String command, const int timeout) {
String response = "";
espSerial.print(command);
long time = millis();
while ((time + timeout) > millis()) {
while (espSerial.available()) {
char c = espSerial.read();
response += c;
}
}
Serial.print(response);
return response;
}
0 件のコメント:
コメントを投稿