Page 191 - เอกสารประกอบการสอนวิชาไมโครคอนโทรลเลอร์เบื้องต้น
P. 191
เอกสารประกอบการสอนวิชาไมโครคอนโทรลเลอร์เบื้องต้น 7
void setup ()
{
pinMode (ledPin, OUTPUT); / / sets Di 31 as output
pinMode (inPin, INPUT); / / sets Di 7 as input
{
Void loop ()
{
val = digitalRead(inPin) / / read input pin
digitalWrite(ledPin, val); / / seta LED to the button’s value
{
ก าหนดให้ขา 7 เป็นอินพุต สถานะของ LED ที่ขา 13 จะเปลี่ยนแปลงตามสถานะของอินพุตขา 7
4.1.4 การก าหนดโหมดของขาพอร์ต
ก่อนใช้งานต้องก าหนดโหมดการท างานของขาพอร์ตดิจิตอล ให้เป็นอินพุตหรือเอาต์พุตก าหนด
จากฟังก์ชั่น pinMode() มีรูปแบบดังนี้
pinmode(pin,mode);
เมื่อ pin คือ หมายเลขขาที่ต้องการ
Mode คือ โหมดการท างาน (INPUT หรือ OUTPUT)
หลังจากที่ก าหนดให้เป็นเอาต์พุตแล้วเมื่อต้องการเขียนค่าไปยังขานั้นๆ ให้เรียกใช้ฟังก์ชั่น digitalWrite()
โดยมีรูปแบบดังนี้
digitalWrite(pin,value);
เมื่อ pin คือหมายเลขขาที่ต้องการ
value สถานะลอจิกที่ต้องการ (HIGH หรื อ LOW)
4.1.5 โปรแกรมสั่งให้ LED กะพริบ
ในการทดลองเกี่ยวกับไมโครคอนโทรลเลอร์ เรื่องแรกก็คือการสั่ งให้พอร์ตท างานเป็นเอาต์พุต และสั่งให้มี
ค่าเป็น HIGH หรือ LOW ได้ตามที่ต้ องการ โดยจะต่อกับ LED และสั่งให้ LED ติดดับต่อเนื่องกันตลอดเวลาเรียกว่า
ไฟกะพริบ ในการทดลองขับ LED อย่างง่ายได้ยกตัวอย่างไฟล์ Blink ซึ่งมีตัวอย่างในโปรแกรมArduino IDE อยู่แล้ว
ในตัวอย่างนี้จะน าโปรแกรม Blink.ino มาประยุกต์สั่งเอาต์พุตควบคุม LED สองดวงให้ติดดับสลับกัน
เริ่มต้นด้วยการต่อวงจรส่วนของ LED จะต่อวงจรให้ LED ท างานที่ลอจิก 1 คือเมื่อสั่งให้ขาเป็น HIGH จะท าให้ LED
ติด เมื่อสั่งให้ขาเป็น LOW หลอดจะดับ ในการต่อ LED ส าหรับบอร์ดสามารถใช้แผงวงจรต่อตรงกับจุดต่อของ
พอร์ตได้ทันที เมื่อต่ออุปกรณ์แล้วให้เขียนโปรแกรมตามโปรแกรมที่ 4.1 ทดลองคอมไพล์และอัปโหลดลงบอร์ด
ศึกษาผลการท างานวงจรทดลองดจิติอลเอาต์พุตสั่งให LED 2 ดวงกะพริบสลับกัน
หน่วยที่ 4 ฟังก์ชั่นพื้นฐานของ Arduino และการควบคุมหลอดไฟ LED เรียบเรียงโดยครูทันพงษ์ ภู่รักษ์