ชื่อโปรเจกต์: LED กดปุ๊บติดปั๊บ ฉบับง่ายขิงๆ (Simple LED Light with Button Press)
พอดีพ่อสั่งมา พี่ก็เลยจัดให้ตามคำขอครับน้อง
รายละเอียดเทคนิคแบบจัดเต็ม (EXPANDED TECHNICAL DETAILS)
ตรรกะเงื่อนไข Input (Conditional Input Logic)
โปรเจกต์พื้นฐานตัวนี้จะทำให้น้องรู้จักโครงสร้าง "If-Else" ในการเขียนโปรแกรม ซึ่งช่วยให้เราสั่งงาน Physical Output ได้ด้วยการโต้ตอบจากมนุษย์นี่แหละ
- สถาปัตยกรรม Digital Read (Digital Read Architecture): ตัว Arduino จะคอยมอนิเตอร์ Digital Pins ที่เราต่อกับปุ่มกดเอาไว้ โดยใน Firmware พี่ใช้ตัวต้านทานภายในที่เรียกว่า internal PULLUP resistor (
INPUT_PULLUP) ทำให้น้องไม่ต้องไปหา Resistor มาต่อเพิ่มบน Breadboard ให้วุ่นวาย แถมยังช่วยให้สัญญาณเป็น "High" ค้างไว้จนกว่าเราจะกดปุ่มด้วยนะ ห้ามช็อตนะตัวนี้ - การสลับสถานะ (State Toggling): ฟีเจอร์เด็ดคือการสลับสถานะ LED แทนที่จะให้ไฟติดแค่ตอนเรากดปุ่มค้างไว้ พี่เขียนแก้ให้กดทีนึงเปิด และกดอีกทีปิด... หล่อเท่เลยงานนี้
ความรู้ที่ได้จากงานนี้ (Educational Value)
- พื้นฐาน Debounce (Debounce Basics): น้องจะได้เรียนรู้เรื่อง "อาการปุ่มเด้ง" (Switch Bounce) และวิธีแก้ทางด้วยการใช้
delay(50)แบบง่ายๆ เพื่อให้แน่ใจว่าการกดปุ่มแค่ครั้งเดียว จะไม่ไปหลอกบอร์ดให้สั่ง LED รัวๆ จนงงไปหมด สู้งานนะน้อง!