สารบัญ:
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-13 06:58
ทุกโมดูลและบอร์ด ESP8266 สามารถตั้งโปรแกรมได้หลายวิธี:
- Arduino,
- หลาม
- ลั่ว
- คำสั่ง AT,
- อีกมากอาจ…
สามตัวแรกนั้นดีที่สุดสำหรับการทำงานแบบสแตนด์อโลน เฟิร์มแวร์ AT สำหรับใช้ ESP8266 เป็นโมดูลหรือสำหรับการทดสอบอย่างรวดเร็วด้วยการสื่อสาร TTL RS232
การเขียนโปรแกรม BTW ESP (เช่น Arduino, python หรือ Lua) จะลบหน่วยความจำทั้งหมด ดังนั้นหากคุณต้องการกลับไปที่คำสั่ง AT คุณต้องรีแฟลชเฟิร์มแวร์
ฉันจะแสดงวิธีการดำเนินการอย่างถูกต้องด้วยเครื่องมือและเอกสารของ Espiff
ขั้นตอนที่ 1: ซอฟต์แวร์และเอกสารที่จำเป็น
ESP8266 NON-OS SDK - มีเฟิร์มแวร์คำสั่ง AT ใน..\ESP8266_NONOS_SDK-2.2.0\bin\at
- เครื่องมือดาวน์โหลดแฟลช (ESP8266 & ESP32 & ESP32-S2) - โปรแกรมสำหรับแฟลชเฟิร์มแวร์ใหม่
- คู่มือเริ่มต้นใช้งาน ESP8266 SDK - มีแผนที่หน่วยความจำที่คุณต้องปฏิบัติตามในโปรแกรมชิป
- ESP8266 AT Instruction Set - คู่มือคำสั่ง AT เสริม
ขั้นตอนที่ 2: ฮาร์ดแวร์และการเชื่อมต่อ
คุณจะต้องการ:
โมดูลหรือบอร์ด ESP8266 ใดๆ
ตัวแปลง USBSerial 3.3V ใด ๆ (ESP ไม่รองรับ 5V) (บางบอร์ดมีหนึ่งตัวเช่น NodeMCU)
ทางเลือก 3.3V PSU (ไม่ใช่ตัวแปลงอนุกรมทุกตัวที่มีกำลังไฟเพียงพอที่จะจ่ายไฟให้กับ ESP8266 ขึ้นไป)
สำหรับการเขียนโปรแกรม คุณจะต้อง:
- ดึง GPIO15 ลง (สถานะเริ่มต้นสำหรับโมดูลส่วนใหญ่)
- ดึง GPIO2 ขึ้น (สถานะเริ่มต้นสำหรับโมดูลส่วนใหญ่)
- ดึง GPIO0 ลง (ต้องทำเสมอ ปล่อยไว้เฉยๆ หรือดึงขึ้นเพื่อการทำงานปกติ)
ดึง CH_PD ขึ้น
บางครั้งอาจใช้พิน GPIO ไม่ได้ทั้งหมด (เช่น โมดูล ESP-01) ในลักษณะดังกล่าว จึงมีการเชื่อมต่อตามที่ควรจะเป็น บางครั้งก็มีปุ่มแฟลช ซึ่งต้องกดขณะรีเซ็ต/เปิดเครื่องเพื่อเข้าสู่โหมดแฟลช (เช่น NodeMCU) และไม่ต้องเชื่อมต่อเพิ่มเติม
ขั้นตอนที่ 3: ตรวจสอบขนาดแฟลช
คุณสามารถใช้แอปพลิเคชันเทอร์มินัลใดก็ได้ คำสั่ง "AT" เป็นการทดสอบการทำงานอย่างง่าย "AT+GMR" จะแจ้งเวอร์ชันเฟิร์มแวร์ให้คุณทราบ ทุกคำสั่งจะต้องยุติด้วย CR+LF คุณจะพบข้อมูลเพิ่มเติมใน ESP8266 AT Instruction Set
"AT+CWAP" แสดงรายการจุดเชื่อมต่อที่อยู่ใกล้เคียงทั้งหมด แต่โมดูลต้องอยู่ในโหมดสถานี: "AT+CWMODE_CUR=1"
ฉันแนบภาพหน้าจอจากเทอร์มินัล Tera Term ที่ฉันโปรดปรานและการกำหนดค่า (CR+LF สำหรับบรรทัดใหม่และอัตราบอดที่เหมาะสม)