วัตถุประสงค์
1. ฝึกต่อวงจรปุ่มกดและไดโอดเปล่งแสง (LED) และเชื่อมต่อกับขาอินพุต/เอาต์พุต-ดิจิทัลของบอร์ดArduino
2. ฝึกเขียนโปรแกรมภาษา C/C++ เพื่อกำหนดพฤติกรรมการทำงานของบอร์ด Arduino ตามโจทย์ที่
กำหนดให้
รายการอุปกรณ์
- แผงต่อวงจร (เบรดบอร์ด) 1 อัน- บอร์ด Arduino (ใช้แรงดันลอจิก +5V) 1 บอร์ด
- ปุ่มกดแบบสี่ขา 2 ตัว
- ไดโอดเปล่งแสงขนาด 5 มม. 4 ตัว
- ตัวต้านทาน 10kΩ 2 ตัว
- ตัวต้านทาน 330Ω หรือ 470Ω 4 ตัว
- สายไฟสําหรับต่อวงจร 1 ชุด
ขั้นตอนการทดลอง
1. ยังไม่ต้องเชื่อมต่อ +5V และ Gnd จากบอร์ด Arduino ไปยังเบรดบอร์ดเพื่อจ่ายเป็นแรงดันไฟเลี้ยงVCC และ GND
2. ต่อวงจรปุ่มกดพร้อมตัวต้านทานแบบ Pull-up 10kΩ จํานวนสองชุด (PB1 และ PB2) บนเบรดบอร์ด
แล้วนําไปต่อกับขา D2 และ D3 ของบอร์ด Arduino ตามลําดับ โดยใช้ลวดสายไฟสําหรับต่อวงจร
(ดูตามผังวงจรในรูปที่ 3.1.1)
3. ต่อวงจรโดยใช้ไดโอดเปล่งแสง (LED) พร้อมตัวต้านทานแบบอนุกรม 330Ω หรือ 470Ω จํานวน
4 ชุด (LED1, LED2, LED3, LED4) บนเบรดบอร์ด แล้วนําไปต่อกับขา D4, D5, D6, D7, D8 ของ
บอร์ด Arduino ตามลําดับ โดยใช้ลวดสายไฟสําหรับต่อวงจร (ดูตามผังวงจรในรูปที่ 3.1.1)
![]() |
credit : เอกสารประกอบการเรียน Logic Design of Digital System ,ดร. เรวัต ศิริโภคาภิรมย์ |
4. เขียนโค้ดตามตัวอย่างโดยใช้ Arduino IDE แล้วทําขั้นตอนคอมไพล์และอัพโหลดโปรแกรมไปยังบอร์ด Arduino
![]() |
credit : เอกสารประกอบการเรียน Logic Design of Digital System ,ดร. เรวัต ศิริโภคาภิรมย์ |
5. ตรวจสอบความถูกต้องของวงจรบนเบรดบอร์ดอีกครั้ง จากนั้นจึงเชื่อมต่อ +5V และ Gnd จากบอร์ด
Arduino ไปยังเบรดบอร์ดเพื่อใช้เป็นแรงดันไฟเลี้ยง (VCC และ GND) ให้ระวังการต่
และ ระวังการต่อถึงกันทางไฟฟ้าของสายไฟทั้งสองเส้น
6. แก้ไขโค้ดใหแสดงพฤต ้ ิกรรมการทํางานตามข้อกําหนดต่อไปนี้ ตรวจสอบและสาธิตความถูกต้องใน
การทํางาน โดยใช้ฮาร์ดแวร์จริง
6.1 เมื่อเริ่มต้นทํางาน จะมี LED เพียงตัวเดียวที่อยู่ในสถานะ “ติด” (LED1) และที่เหลืออีก 3 ตัว
(LED2, LED3, LED4) อยู่ในสถานะ “ดับ”
6.2 ถ้ากดปุ่ม PB1 แล้วปล่อยในแต่ละครั้ง จะทําให้ตําแหน่งของ LED ที่ “ติด” เลื่อนไปทางขวาทีละ
หนึ่งตําแหน่ง หรือวนกลับมาเริ่มต้นใหม่ทางซ้ายสุด (LED1 -> LED2 -> LED3 -> LED4 -> …)
6.3 ถ้ากดปุ่ม PB2 แล้วปล่อยในแต่ละครั้ง จะทําให้ตําแหน่งของ LED ที่ “ติด” เลื่อนไปทางซ้ายทีละ
หนึ่งตําแหน่ง หรือวนกลับมาเริ่มต้นใหม่ทางขวาสุด (LED1 -> LED4 -> LED3 -> LED2 -> …)
7. แก้ไขโค้ดใหแสดงพฤต ้ ิกรรมการทํางานตามข้อกําหนดต่อไปนี้ ตรวจสอบและสาธิตความถูกต้องใน
การทํางาน
7.1 ใช้ LED ทั้ง 4 ตัว แสดงเลขในฐานสอง จํานวน 4 หลัก (4-bit binary number) ซึ่งรับสัญญาณ
เอาต์พุตมาจากบอร์ด Arduino และกําหนดให้บิตที่มีค่า 0 หมายถึง LED “ดับ” และ บิตที่มีค่า
เป็น 1 หมายถึง LED “ติด”และเมื่อเริ่มต้นทํางาน ให้แสดงค่าเป็น 0
7.2 เมื่อกดปุ่ม PB1 แล้วปล่อยแต่ละครั้ง จะทําให้ค่าเพิ่มขึ้นทละหน ี ึ่ง จาก 0000, 0001, 0010, …,
1111 ตามลําดับ แล้ววนกลบไปเร ั ิ่มต้นที่ 0000 ใหม่ได ้
7.3 แต่ถ้ากดปุ่ม PB2 จะทําให้ได้ค่าเป็น 0000 ทันท (ีหมายถงึ การรีเซตค่าเป็นศูนย์)
ผลการทดลอง
Example Code Arduino
วงจรเมื่อใช้โค้ดตามตัวอย่าง |
(LED1 -> LED2 -> LED3 -> LED4 -> …) AND (LED1 -> LED4 -> LED3 -> LED2 -> …)
Code Arduino : (4 Bit - Binary Number)
ไม่มีความคิดเห็น:
แสดงความคิดเห็น