Search Code

ESP32 บทเรียนที่ 3/55 - โครงการตัวต้านทาน, LED, Breadboard: สวัสดี LED - ชุดเรียนรู้ IoT ESP32

ESP32 บทเรียนที่ 3/55 - โครงการตัวต้านทาน, LED, Breadboard: สวัสดี LED - ชุดเรียนรู้ IoT ESP32

บทช่วยสอนนี้จะแนะนำคุณตลอดโปรเจกต์ ESP32 แรกของคุณ: การทำให้ LED กระพริบ! โปรเจกต์ที่ดูเหมือนง่ายนี้เป็นพื้นฐานสำคัญสำหรับการทำความเข้าใจการเชื่อมต่อฮาร์ดแวร์และการเขียนโปรแกรมไมโครคอนโทรลเลอร์ ซึ่งเป็นการวางรากฐานสำหรับโปรเจกต์ IoT ที่ซับซ้อนมากขึ้น นี่คือแนวคิดบางอย่างที่จะขยายโปรเจกต์นี้:

  • สร้างไฟกลางคืนแบบง่ายที่มีความสว่างปรับได้
  • สร้างตัวบ่งชี้ภาพสำหรับการอ่านค่าเซนเซอร์ (เช่น อุณหภูมิ ความชื้น)
  • ออกแบบระบบสัญญาณเตือนพื้นฐานโดยใช้ LED เป็นตัวบ่งชี้
  • รวม LED เข้ากับโปรเจกต์ IoT ที่ใหญ่ขึ้น เช่น ระบบสมาร์ทโฮม

ฮาร์ดแวร์/ส่วนประกอบ

เพื่อให้โปรเจกต์นี้สำเร็จ คุณจะต้องมีส่วนประกอบต่อไปนี้ (ในวิดีโอที่ 00:35):

  • ไมโครคอนโทรลเลอร์ ESP32 (เช่น จากชุดเรียนรู้ IoT ESP32 ของ SunFounder)
  • LED (ไดโอดเปล่งแสง)
  • ตัวต้านทาน 220 โอห์ม
  • เบรดบอร์ด
  • สายจัมเปอร์

ESP32 ที่มี Wi-Fi และบลูทูธในตัว มีความสามารถที่หลากหลายมากกว่า Arduino Uno มาตรฐาน (ในวิดีโอที่ 00:47)

คำแนะนำการเดินสายไฟ

การเดินสายไฟนั้นตรงไปตรงมา (ในวิดีโอที่ 20:34) เชื่อมต่อขาที่ยาวกว่า (แอโนด) ของ LED เข้ากับรางบวกของเบรดบอร์ด เชื่อมต่อขาที่สั้นกว่า (แคโทด) ของ LED เข้ากับปลายด้านหนึ่งของตัวต้านทาน 220 โอห์ม เชื่อมต่อปลายอีกด้านของตัวต้านทานเข้ากับพินดิจิทัลบน ESP32 ของคุณ (พิน 26 ในตัวอย่างนี้) สุดท้าย เชื่อมต่อสายกราวด์จากเบรดบอร์ดเข้ากับพิน GND ของ ESP32 ของคุณ ตัวแบ่งแรงดันไฟฟ้าจำเป็นเพื่อป้องกันความเสียหายต่อ LED ตัวต้านทานจะจำกัดกระแสที่ไหลผ่าน LED เพื่อให้แน่ใจว่าไม่เกินค่าสูงสุดที่กำหนด (ในวิดีโอที่ 07:27)

%%WIRING%%

คำอธิบายโค้ด

โค้ด Arduino นั้นค่อนข้างง่าย ส่วนสำคัญคือ:


//หมายเลขของพิน LED
const int ledPin = 9; // พินที่ผู้ใช้กำหนดสำหรับ LED (ในวิดีโอที่ 25:37)

void setup() {
  pinMode(ledPin, OUTPUT); // ตั้งค่าพิน LED เป็นเอาต์พุต (ในวิดีโอที่ 26:23)
}

void loop() {
  digitalWrite(ledPin, HIGH); // เปิด LED (ในวิดีโอที่ 27:08)
  delay(500); // รอครึ่งวินาที (ในวิดีโอที่ 28:30)
  digitalWrite(ledPin, LOW); // ปิด LED (ในวิดีโอที่ 28:30)
  delay(500); // รอครึ่งวินาที (ในวิดีโอที่ 28:30)
}

ค่าคงที่ ledPin กำหนดว่าพินดิจิทัลใดที่ LED เชื่อมต่ออยู่ คุณสามารถเปลี่ยนค่านี้เพื่อให้ตรงกับการเดินสายไฟของคุณ ฟังก์ชัน setup() เริ่มต้นโหมดพิน ฟังก์ชัน loop() จะสลับการเปิดและปิด LED อย่างต่อเนื่องด้วยหน่วงเวลา 500 มิลลิวินาที คุณสามารถปรับค่าหน่วงเวลา (เป็นมิลลิวินาที) เพื่อเปลี่ยนอัตราการกระพริบได้ (ในวิดีโอที่ 31:56)

โปรเจกต์สด/การสาธิต

วิดีโอสาธิตกระบวนการทั้งหมด ตั้งแต่การเดินสายไฟไปจนถึงการอัปโหลดโค้ดและการทำงาน (ในวิดีโอที่ 29:16) ผู้สอนแสดงวิธีตรวจสอบการเชื่อมต่อโดยใช้พิน 3.3V เพื่อให้แน่ใจว่าการเดินสายไฟถูกต้องก่อนเชื่อมต่อกับพิน ESP32 ที่กำหนด (ในวิดีโอที่ 21:39) วิดีโอยังเน้นการใช้ Arduino IDE โดยแสดงวิธีเลือกบอร์ดและอัปโหลดโค้ด (ในวิดีโอที่ 30:01)

บทต่างๆ

  • [00:00] บทนำและภาพรวมโปรเจกต์
  • [02:02] ทำความเข้าใจตัวต้านทาน
  • [05:48] ทำความเข้าใจ LED
  • [08:59] แนะนำเบรดบอร์ด
  • [18:34] การเชื่อมต่อเบรดบอร์ดและรางไฟ
  • [20:34] การเดินสายวงจร LED
  • [22:17] โค้ด Arduino และคำอธิบาย
  • [29:16] การอัปโหลดโค้ดและการทดสอบ
789-ESP32 Tutorial 3/55 - Hello LED with Arduino
ภาษา: C++
//the number of the LED pin
const int ledPin = 9;

void setup()
{
  //initialize the digital pin as an output
  pinMode(ledPin,OUTPUT);
}

//the loop routine runs over and over again forever
void loop()
{
  digitalWrite(ledPin,HIGH);//turn the LED on 
  delay(500);               //wait for half a second
  digitalWrite(ledPin,LOW); //turn the LED off
  delay(500);               //wait for half a second
}
/*************************************************/

แหล่งข้อมูลและเอกสารอ้างอิง

ไฟล์📁

ไม่มีไฟล์ที่พร้อมใช้งาน