https://www.arduinoall.com/article/21/%E0%B8%AA%E0%B8%AD%E0%B8%99-%E0%B8%A7%E0%B8%B4%E0%B8%98%E0%B8%B5-%E0%B9%83%E0%B8%8A%E0%B9%89%E0%B8%87%E0%B8%B2%E0%B8%99-arduino-wi-fi-module-esp8266
จากลิ้งค์นี้ ผมได้ทำตามหมดแล้ว แต่พอถึงการใส่โค้ดต่างๆลงไปแล้วกด upload ไปแล้ว เสร็จสิ้นหมด แต่ทำไมมันจึงพิมพ์คำสั่งใน serial monitor ไม่ได้เลย พิมพ์แล้วพอส่งค่าไป ไม่ขึ้นอะไรเลย ในโปรแกรมที่โหลดมาก็พิมพ์แล้วไม่ขึ้นอะไรเลย เป็นแบบนี้เฉพาะตอน upload โค้ดนี้เท่านั้น
#define SSID "123456789" // ชื่อ ssid
#define PASSWORD "123456789" // รหัสผ่าน
#include "uartWIFI.h"
#include <SoftwareSerial.h>
WIFI wifi;
extern int chlID; //client id(0-4)
int led = 12;
void setup()
{
pinMode(led,OUTPUT);
digitalWrite(led,0);
wifi.begin();
bool b = wifi.Initialize(STA, SSID, PASSWORD);
delay(8000); //หน่วงเวลาให้เครื่องเชื่อมกับ wifi
wifi.confMux(1);
delay(200);
if(wifi.confServer(1,8080)){ // เชื่อมต่อ wifi สำเร็จ ให้แสดงไฟสถานะ
digitalWrite(led,1);
delay(2000);
digitalWrite(led,0);
}
}
void loop()
{
char buf[100];
int iLen = wifi.ReceiveMessage(buf);
if(iLen > 0)
{
if (strcmp(buf, "HELLO") == 0) // ถ้ามีคำว่า HELLO จะเปิด/ปิด LED
{
if(digitalRead(led)==0){
digitalWrite(led,1);
wifi.Send(chlID,"LED ON ");
}
else{
digitalWrite(led,0);
wifi.Send(chlID,"LED OFF");
}
//wifi.Send(chlID,"HELLO BACK"); // ส่งข้อมูลที่ต้องการให้กับ client
}
}
}
มันเกิดขึ้นได้อย่างไร แล้วจะมีวิธีแก้อย่างไร รบกวนพี่ๆด้วยนะครับ
ผมต้องการจะทำโปรเจ็คจบในภาคเรียนนี้ ซึ่งไม่มีความรู้เกี่ยวกับ Arduino ซักเท่าไร เนื่องจากเรียนสาขาช่างไฟฟ้าครับ ขอบคุณมากครับ !
อาจจะเป็นกับ esp8266 เฟิร์มแวร์คนละเวอร์ชันกับในตัวอย่าง จึงส่งคำสั่งไม่ได้
แนะนำคือลองดูวิธีใช้างน ESP8266 มีคอร์สสอบที่หน้าเว็บให้เล่นเพิ่มเติมครับ
อัพโหลดไม่เข้า เพราะยังไม่ได้เข้าโหมด flash
ถ้าเป็น nodemcu กดปุ่มที่บอร์ด
กดปุ่ม flash ค้างไว้ กดและปล่อยปุ่ม reset แล้วปล่อยปุ่ม flash
ถ้าเป็น ESP8266 ที่เป็นโมดูล ต่อ GPIO0 ลงกราวน์ มีแนะนำเพิ่มในคอร์สสอนครับ
แนะนำให้โปรแกรมโดยใช้ Arduino IDE ครับ ไม่ต้องลง firmware เพิ่ม
ตรงนี้ตอบให้ไม่ได้ว่าการทดลองผิดพลาดตรงไหน ต้องลองเช็คการต่อใช้งานอีกครั้งครับ