สารบัญ:
- บทนำ
- ขั้นตอนที่ 1: แฟลชพิน GPIO – GPIO6 ถึง GPIO11
- ขั้นตอนที่ 2: พิน GPIO0, GPIO2 และ GPIO15
- ขั้นตอนที่ 3: การใช้ GPIO0, GPIO2 และ GPIO15 เป็นเอาต์พุต
- ขั้นตอนที่ 4: การใช้ GPIO0, GPIO2 และ GPIO15 เป็นอินพุต
- บทสรุป
วีดีโอ: ESP8266 การใช้พิน GPIO0/GPIO2/GPIO15: 4 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:06
อัปเดต 1 กรกฎาคม 2018 - เพิ่มหมายเหตุเกี่ยวกับการเขียนโปรแกรมใหม่เมื่อ GPIO0 เป็นเอาต์พุต
นี่เป็นข้อความสั้นๆ เกี่ยวกับวิธีการใช้พิน GPIO0 / GPIO2 และ GPIO15 บนโมดูล ESP8266
อัปเดต: ดูวิธีใช้หมุด ESP8266-01 ด้วย
บทนำ
ESP8266 เป็นชิปที่เปิดใช้งาน wifi ราคาประหยัด มีโมดูลหลายประเภทและสามารถตั้งโปรแกรมได้หลายวิธี โมดูลทั้งหมดทำให้ GPIO0 และ GPIO2 สามารถเข้าถึงได้ โมดูลส่วนใหญ่ นอกเหนือจาก ESP8266-01 ยังทำให้ GPIO15 สามารถเข้าถึงได้ GPIO เหล่านี้ควบคุมวิธีการเริ่มต้นของโมดูลและจำเป็นต้องมีการจัดการพิเศษหากต้องการใช้งานเลย GPIO6-GPIO11 ยังต้องการการดูแลเป็นพิเศษตามที่อธิบายไว้ด้านล่าง
ขั้นตอนที่ 1: แฟลชพิน GPIO – GPIO6 ถึง GPIO11
บอร์ด ESP8266 ส่วนใหญ่มีชิปแฟลชเชื่อมต่อกับ GPIO6-GPIO11 บางส่วนหรือทั้งหมด โปรแกรมส่วนใหญ่ใช้หน่วยความจำแฟลชเช่นเดียวกับ RAM ดังนั้นหากคุณไม่ตรวจสอบให้แน่ใจว่ารหัสของคุณเรียกใช้จาก RAM เท่านั้น คุณจะไม่สามารถใช้หมุดเหล่านี้เพื่อวัตถุประสงค์อื่นได้
จำนวนพินที่แน่นอนที่ใช้ในช่วง GPIO6 ถึง GPIO11 ขึ้นอยู่กับประเภทของฮาร์ดแวร์แฟลชที่ใช้ในโมดูลของคุณ Quad IO ใช้ข้อมูล 4 บรรทัด (รวม 6 พิน) ความเร็วสูงสุด 4 เท่าของมาตรฐาน Dual IO ใช้ 2 บรรทัดสำหรับข้อมูล (ทั้งหมด 4 พิน) มาตรฐานใช้บรรทัดเดียวสำหรับข้อมูล (ทั้งหมด 3 พิน)
เว้นแต่คุณจะรู้ว่าบอร์ดของคุณต้องการอะไร คุณควรเพิกเฉยต่อ GPIO6 ถึง GPIO11 และอย่าอ้างอิงจากโค้ดของคุณ
ขั้นตอนที่ 2: พิน GPIO0, GPIO2 และ GPIO15
หมุดเหล่านี้จะกำหนดโหมดที่ชิปเริ่มทำงาน
สำหรับการเรียกใช้โปรแกรมตามปกติ GPIO0 และ GPIO2 จะต้องดึงขึ้นเป็น Vcc (3.3V) และต้องดึง GPIO15 ไปที่ GND โดยแต่ละตัวมีตัวต้านทานในช่วงตัวต้านทาน 2K ถึง 10K ตัวต้านทาน 2K ให้ภูมิคุ้มกันเสียงที่ดีกว่า OLIMEX ใช้ตัวต้านทาน 2K SparkFun ใช้ตัวต้านทาน 10K ฉันใช้ตัวต้านทาน 3K3
การตั้งค่าของอินพุตเหล่านี้จะถูกตรวจสอบระหว่างการเปิดเครื่อง (หรือรีเซ็ต) ของชิปเท่านั้น หลังจากนั้นหมุดจะพร้อมใช้งานทั่วไป แต่ตามที่กล่าวไว้ด้านล่าง การใช้งานถูกจำกัดโดยตัวต้านทานแบบดึงขึ้น/ลงภายนอกเหล่านี้
ขั้นตอนที่ 3: การใช้ GPIO0, GPIO2 และ GPIO15 เป็นเอาต์พุต
ดังที่กล่าวไว้ข้างต้น พินเหล่านี้จะมีตัวต้านทานเชื่อมต่อกับ VCC (GPIO0 และ GPIO2) หรือ GND สำหรับ GPIO15 อยู่แล้ว สิ่งนี้กำหนดวิธีการเชื่อมต่ออุปกรณ์ภายนอก เช่น รีเลย์หรือ LED+ตัวต้านทาน สำหรับ GPIO0 และ GPIO2 จะต้องเชื่อมต่อรีเลย์ภายนอกระหว่าง VCC และพิน เพื่อไม่ให้รบกวนการทำงานของตัวต้านทานแบบดึงขึ้น ในทางกลับกัน รีเลย์ภายนอกที่เชื่อมต่อกับ GPIO15 จะต้องเชื่อมต่อระหว่าง GND กับพิน เพื่อไม่ให้รบกวนการทำงานของตัวต้านทานแบบดึงลง
ในการเปิดใช้งานอุปกรณ์ภายนอก GPIO0 หรือ GPIO2 จะต้องถูกขับเคลื่อน LOW (Active LOW) ในขณะที่ GPIO15 จะต้องถูกขับเคลื่อน HIGH (Active HIGH)
แผนผังด้านบนแสดงวิธีใช้ GPIO0 และ GPIO2 และ GPIO15 เป็นเอาต์พุต วงจรนี้รวมถึงตัวต้านทานแบบดึงขึ้น/แบบดึงลงที่จำเป็นด้วย โปรดทราบว่าโมดูลรีเลย์ 5V ที่ขับเคลื่อนโดย GPIO0 เป็นแบบแยกออปโตและมีการเชื่อมต่อทั่วไปแยกต่างหากสำหรับอินพุต สิ่งสำคัญคือต้องไม่ใช้แรงดันไฟฟ้า 5V VCCA กับพิน ESP8266
วิธีการตั้งโปรแกรมใหม่เมื่อใช้ GPIO0 เป็นเอาต์พุต
หมายเหตุ: ต้องต่อสายดิน GPIO0 เพื่อเข้าสู่โหมดการเขียนโปรแกรม หากคุณสเก็ตช์ภาพให้สูง การลงกราวด์อาจทำให้ชิป ESP8266 เสียหายได้ วิธีที่ปลอดภัยในการตั้งโปรแกรม ESP8266 ใหม่เมื่อรหัสของคุณขับเอาต์พุต GPIO0 คือ:- a) ปิดบอร์ด b) GPIO0 สั้นถึง gnd c) เปิดบอร์ดซึ่งเข้าสู่โหมดโปรแกรมเนื่องจาก GPIO0 สั้น d) ลบ สั้นจาก GPIO0 ดังนั้นคุณจะไม่ลัดวงจรเอาต์พุตเมื่อโปรแกรมทำงาน e) ตั้งโปรแกรมบอร์ดใหม่ f) เปิดวงจรบอร์ดหากจำเป็น
ขั้นตอนที่ 4: การใช้ GPIO0, GPIO2 และ GPIO15 เป็นอินพุต
การใช้พินเหล่านี้เป็นอินพุตค่อนข้างยุ่งยาก ตามที่ระบุไว้ข้างต้นเมื่อเปิดเครื่องและระหว่างการรีเซ็ต หมุดเหล่านี้จะต้องดึงขึ้นหรือลงตามความจำเป็นเพื่อให้โมดูล ESP8266 เริ่มทำงานในโหมดการทำงานปกติ ซึ่งหมายความว่า โดยทั่วไปแล้ว คุณไม่สามารถต่อสวิตช์ภายนอกเข้ากับพินเหล่านี้ได้ เนื่องจากเมื่อเปิดเครื่อง โดยปกติแล้ว คุณไม่สามารถรับประกันได้ว่าสวิตช์จะไม่ดึงอินพุตลงกราวด์ และป้องกันไม่ให้โมดูลเริ่มทำงานอย่างถูกต้อง
เคล็ดลับคืออย่าเชื่อมต่อสวิตช์ภายนอกโดยตรงจาก GPIO0 หรือ GPIO2 กับ GND แต่ให้เชื่อมต่อแทนกับพิน GPIO อื่นซึ่งถูกขับไปที่กราวด์ (เป็นเอาต์พุต) หลังจากที่ ESP8266 เริ่มทำงานเท่านั้น โปรดจำไว้ว่า เมื่อใช้เป็นเอาต์พุต พิน GPIO จะให้การเชื่อมต่อที่มีความต้านทานต่ำมากกับ VCC หรือ GND ขึ้นอยู่กับว่ามีการขับเคลื่อน HIGH หรือ LOW
ที่นี่จะพิจารณาเฉพาะ GPIO0 และ GPIO2 เท่านั้น เมื่อใช้วิธีนี้ คุณจะได้รับอินพุตเพิ่มเติมหนึ่ง (1) รายการโดยใช้ GPIO สอง (2) ตัว
วิธีการที่คล้ายกันนี้สามารถใช้สำหรับ GPIO15 ได้โดยใช้พิน GPIO อื่นเพื่อเชื่อมต่อสวิตช์ไปที่ +VCC แต่วิธีนี้ไม่ได้รับอินพุตพิเศษ คุณอาจใช้พิน GPIO อื่นเป็นอินพุตโดยตรงได้เช่นกัน
วงจรด้านบนใช้โมดูล ESP8266-01 เป็นตัวอย่าง โดยไม่ต้องใช้เคล็ดลับนี้ ESP8266-01 ไม่มีพินอิสระที่จะใช้เป็นอินพุต หากคุณใช้พิน RX/TX สำหรับการเชื่อมต่อ UART อยู่แล้ว
เนื่องจากเมธอด setup() ของสเก็ตช์จะทำงานหลังจากโมดูล ESP8266 เริ่มทำงานเท่านั้น จึงปลอดภัยที่จะทำให้เอาต์พุต GPIO0 ต่ำ จากนั้นจึงจัดเตรียมพื้นสำหรับ S1 ที่เชื่อมต่อกับ GPIO2 จากนั้น คุณสามารถใช้ digitalRead(2) ในส่วนอื่นๆ ในแบบร่างของคุณเพื่ออ่านการตั้งค่าสวิตช์
บทสรุป
บันทึกย่อนี้แสดงวิธีใช้ GPIO0, GPIO2 และ GPIO15 เป็นเอาต์พุตและวิธีใช้งานรับอินพุตพิเศษโดยใช้ GPIO0 และ GPIO2 ร่วมกัน
แนะนำ:
วิธีการแฟลชหรือโปรแกรม ESP8266 AT Firmware โดยใช้ ESP8266 Flasher และ Programmer, IOT Wifi Module: 6 ขั้นตอน
วิธีการแฟลชหรือโปรแกรม ESP8266 AT Firmware โดยใช้ ESP8266 Flasher และ Programmer, IOT Wifi Module: คำอธิบาย:โมดูลนี้เป็นอะแดปเตอร์ USB / โปรแกรมเมอร์สำหรับโมดูล ESP8266 ประเภท ESP-01 หรือ ESP-01S ติดตั้งสะดวกด้วยเฮดเดอร์ตัวเมีย 2.54 มม. ขนาด 2x4P เพื่อเสียบ ESP01 นอกจากนี้ยังแยกหมุดทั้งหมดของ ESP-01 ออกผ่านช่องต่อตัวผู้ขนาด 2.54 มม. 2x4P 2.54 มม.
ESP8266 - การชลประทานในสวนด้วยตัวจับเวลาและรีโมทคอนโทรลผ่านอินเทอร์เน็ต / ESP8266: 7 ขั้นตอน (พร้อมรูปภาพ)
ESP8266 - การชลประทานในสวนด้วยตัวจับเวลาและรีโมทคอนโทรลผ่านอินเทอร์เน็ต / ESP8266: ESP8266 - การชลประทานควบคุมด้วยรีโมทและกำหนดเวลาสำหรับสวนผัก สวนดอกไม้ และสนามหญ้า ใช้วงจร ESP-8266 และวาล์วไฮดรอลิก/ไฟฟ้าสำหรับการจ่ายน้ำ ข้อดี: เข้าถึงด่วนราคาประหยัด (~US$ 30,00) คำสั่ง ov
ESP8266 - เซ็นเซอร์ประตูและหน้าต่าง - ESP8266 การช่วยเหลือผู้สูงอายุ (ขี้ลืม): 5 ขั้นตอน
ESP8266 - เซ็นเซอร์ประตูและหน้าต่าง - ESP8266 ความช่วยเหลือผู้สูงอายุ (หลงลืม): ESP8266 - เซ็นเซอร์ประตู / หน้าต่างโดยใช้ GPIO 0 และ GPIO 2 (IOT) สามารถดูได้บนเว็บหรือบนเครือข่ายท้องถิ่นด้วยเบราว์เซอร์ มองเห็นได้ผ่านทาง "HelpIdoso Vxapp" แอปพลิเคชัน. ใช้แหล่งจ่ายไฟ 110/220 VAC สำหรับ 5Vdc, 1 รีเลย์ / แรงดันไฟฟ้า
หาเวลาจากอินเทอร์เน็ตโดยใช้ ESP8266 - โครงการนาฬิกา NTP ด้วย ESP8266 Nodemcu: 5 ขั้นตอน
หาเวลาจากอินเทอร์เน็ตโดยใช้ ESP8266 | โครงการนาฬิกา NTP ด้วย ESP8266 Nodemcu: ในบทช่วยสอนนี้ เราจะมาดูวิธีหาเวลาโดยใช้ ESP8266/nodemcu กับ Arduino IDE การหาเวลามีประโยชน์อย่างยิ่งในการบันทึกข้อมูลเพื่อประทับเวลาการอ่านของคุณ หากโปรเจ็กต์ ESP8266 ของคุณมีการเข้าถึงอินเทอร์เน็ต คุณสามารถใช้เวลาโดยใช้ Network T
ESP8266 NODEMCU BLYNK IOT บทช่วยสอน - Esp8266 IOT โดยใช้ Blunk และ Arduino IDE - การควบคุมไฟ LED ผ่านอินเทอร์เน็ต: 6 ขั้นตอน
ESP8266 NODEMCU BLYNK IOT บทช่วยสอน | Esp8266 IOT โดยใช้ Blunk และ Arduino IDE | การควบคุม LEDs ผ่านอินเทอร์เน็ต: สวัสดีทุกคนในคำแนะนำนี้ เราจะเรียนรู้วิธีใช้ IOT กับ ESP8266 หรือ Nodemcu ของเรา เราจะใช้แอป blynk สำหรับสิ่งนั้น ดังนั้นเราจะใช้ esp8266/nodemcu ของเราเพื่อควบคุมไฟ LED ผ่านอินเทอร์เน็ต ดังนั้นแอป Blynk จะเชื่อมต่อกับ esp8266 หรือ Nodemcu ของเรา