เรียนรู้การควบคุมขา OUTPUT กับบอร์ด UNO R3
บอร์ด UNO R3 จะมีขา OUTPUT แบบ Digital อยู่ทั้งหมด 16 ขา โดยทั้งหมดจะทำงานในระดับแรงดัน 5 โวลท์ดีซี
อุปกรณ์ที่ใช้ในการเรียนรู้
1. บอร์ด UNO R3 จำนวน 1 บอร์ด
2. สาย USB แบบ A/B จำนวน 1 เส้น
3. บอร์ดโมดูล LED จำนวน 1 บอร์ด
4. LED 5 มม. สีแดง,สีเหลือง,สีเขียว จำนวนสีละ 1 ดวง
5. สายจั๊ม จำนวน 4 เส้น
หลอด LED คืออะไร
LED ย่อมาจาก Light Emitting Diode จะเป็นไดโอดชนิดหนึ่งที่สามารถเปล่งแสงออกมาได้โดยตัวแอลอีดีจะทำมาจากสารกึ่งตัวนำประเภทแกลเลี่ยม อาเซไนต์ ฟอสไฟต์ (Galium Asenide Phosphide) ซึ่งสามารถเปล่งแสงได้มากกว่าซิลิกอนไดโอด แอลอีดีมีอยู่หลายชนิด เช่น แบบธรรมดา, ซูเปอร์ไบรท์, อัลตร้าไบร์ท เป็นต้น ขึ้นอยู่กับความต้องการของผู้ใช้ว่าต้องการความสว่างมากหรือน้อยขนาดไหน โดยราคาก็จะสูงตามไปด้วย
รูปสัญลักษณ์ทางไฟฟ้าของตัว LED และรูปตัวจริง
การทดสอบวงจรไฟกระพริบ
สำหรับการทดสอบนี้ จะใช้เพียงแต่บอร์ด UNO R3 กับสาย USB เท่านั้น เนื่องจากเราจะใช้ LED ที่ต่อที่ขา 13 บนบอร์ดเป็นตัวแสดงผลนั่นเอง
รูปการต่อสาย USB กับบอร์ด UNO R3
ขั้นตอนการเขียน Sketch ไฟกระพริบ
1. ทำการเปิดโปรแกรม Arduino IDE และเขียน Sketch ตามตัวอย่างด้านล่างนี้ (ไม่จำเป็นต้องใส่ Comment)
void setup() { // ส่วนนี้จะเป็นส่วนที่ใช้กำหนดค่าต่างๆ โดยจะทำงานเมื่อเริ่มจ่ายไฟเข้าเพียงครั้งเดียว
pinMode(13, OUTPUT); // กำหนดขา 13 เป็นขา OUTPUT
}
void loop() { // ส่วนนี้จะเป็นส่วนการทำงาน โดยโปรแกรมจะทำงานในส่วนนี้ไปเรื่อยๆ จนกว่าจะไม่จ่ายไฟ
digitalWrite(13, HIGH); // กำหนดให้ขา 13 มีสถานะเป็น HIGH (มีแรงดัน 5 โวลท์ ออกมา)
delay(1000); // ทำการหน่วงเวลา 1,000 miliSecond เพื่อให้โปรแกรมทำงานคำสั่งก่อนหน้านี้
digitalWrite(13, LOW); // กำหนดให้ขา 13 มีสถานะเป็น LOW (ไม่มีแรงดันออกมา)
delay(1000); // ทำการหน่วงเวลา 1,000 miliSecond เพื่อให้โปรแกรมทำงานคำสั่งก่อนหน้านี้
}
2. ต่อบอร์ด UNO R3 เข้ากับเครื่องคอมพิวเตอร์ จากนั้นเข้าไปที่ Tools สังเกตที่ Board ว่าเลือก Arduino UNO หรือไม่ แล้วเลือก COM Port ที่บอร์ด UNO R3 ต่ออยู่ (ในเครื่องคอมพิวเตอร์แต่ละเครื่อง อาจจะขึ้น COM Port ไม่เหมือนกัน)
รูปการเลือก COM Port ที่บอร์ด UNO R3 ต่ออยู่
3. จากนั้นทำการกดปุ่ม Upload ที่เมนู Shortcut ให้สังเกตที่พื้นที่แสดงสถานะของโปรแกรม ถ้าขึ้นตามรูปด้านล่าง แสดงว่า Sketch ได้ถูก Upload ไปยังบอร์ด UNO R3 เรียบร้อยแล้ว (ในกรณีที่ขึ้นสีแดง ให้สังเกตข้อความผิดพลาด แล้วทำการแก้ไข)
รูปแสดงข้อความเมื่อ Sketch ถูก Upload เสร็จเรียบร้อยแล้ว
4. สังเกตที่ LED บนบอร์ด UNO R3 จะติดและดับเป็นจังหวะ โดยจะติด 1 วินาที และดับ 1 วินาที สลับกันไป แสดงว่า โปรแกรมทำงานถูกต้อง ตามที่เราเขียนขึ้น (ถ้าต้องการให้กระพริบเร็วขึ้น ให้ทำการลดตัวเลขในคำสั่ง Delay แต่ถ้าต้องให้กระพริบช้าลง ให้ทำการเพิ่มตัวเลขในคำสั่ง Delay)
วงจรไฟกระพริบ 3 ดวง
รูปการต่อวงจรไฟกระพริบ 3 ดวง
รูปการต่อวงจรไฟกระพริบ 3 ดวง (บอร์ดโมดูล LED)
ขั้นตอนการเขียน Sketch ไฟกระพริบ 3 ดวง
1. ทำการเปิดโปรแกรม Arduino IDE และเขียน Sketch ตามตัวอย่างด้านล่างนี้ (ไม่จำเป็นต้องใส่ Comment)
void setup() {
pinMode(2, OUTPUT); // กำหนดขา 2 เป็นขา OUTPUT
pinMode(3, OUTPUT); // กำหนดขา 3 เป็นขา OUTPUT
pinMode(4, OUTPUT); // กำหนดขา 4 เป็นขา OUTPUT
}
void loop() {
digitalWrite(2, HIGH); // กำหนดให้ขา 2 มีสถานะเป็น HIGH (มีแรงดัน 5 โวลท์ ออกมา)
delay(500); // ทำการหน่วงเวลา 500 miliSecond เพื่อให้โปรแกรมทำงานคำสั่งก่อนหน้านี้
digitalWrite(2, LOW); // กำหนดให้ขา 2 มีสถานะเป็น LOW (ไม่มีแรงดันออกมา)
delay(500);
digitalWrite(3, HIGH); // กำหนดให้ขา 3 มีสถานะเป็น HIGH
delay(500);
digitalWrite(3, LOW); // กำหนดให้ขา 3 มีสถานะเป็น LOW
delay(500);
digitalWrite(4, HIGH); // กำหนดให้ขา 4 มีสถานะเป็น HIGH
delay(500);
digitalWrite(4, LOW); // กำหนดให้ขา 4 มีสถานะเป็น LOW
delay(500);
}
2.สำหรับ Sketch สามารถเขียนได้อีกแบบหนึ่ง ดังตัวอย่าง
void setup() {
pinMode(2, OUTPUT); // กำหนดขา 2 เป็นขา OUTPUT
pinMode(3, OUTPUT); // กำหนดขา 3 เป็นขา OUTPUT
pinMode(4, OUTPUT); // กำหนดขา 4 เป็นขา OUTPUT
}
void loop() {
for (int i = 2; i <= 4; i++) { // กำหนดให้ i มีค่าเท่ากับ 2-4 และวนไปเรื่อยๆ
digitalWrite(i, HIGH); // กำหนดให้ i มีสถานะเป็น HIGH
delay(500);
digitalWrite(i, LOW); // กำหนดให้ i มีสถานะเป็น LOW
delay(500);
}
}
3. สามารถเลือกใช้ในข้อที่ 1 หรือข้อ 2 ก็ได้ จากนั้นทำการกดปุ่ม Upload ที่เมนู Shortcut รอจนกระทั่งขึ้น Done Uploading แล้วสังเกตที่บอร์ด UNO R3 หลอด LED จะติดและดับไล่จากขา 2, 3 และ 4 วนไปเรื่อยๆ