ตัวอย่างการใช้ Arduino (P2)

ต่อเนื่องจากตอนที่แล้ว ที่เราได้แนะนำ Arduino ให้รู้จักกันไป ในสัปดาห์นี้เราจะแนะนำการเขียนโปรแกรมอย่างง่ายๆ ลงบน Arduino เพื่อให้เกิดความเคยชินกับการใช้งานก่อน ก่อนที่จะเริ่มทำโปรเจคตัวอย่างในอาทิตย์ต่อไป

บอร์ดที่นำมาใช้ ได้แก่ Arduino UNO

ซึ่ง IDE ที่เราจะใช้ในการเขียน ได้แก่ ARDUINO WEB EDITOR เขียนด้วยภาษา C++เพื่อควบคุมชิ้นส่วนต่างๆของบอร์ด

ซึ่งสามารถดาวโหลดได้จากเว็ปไซต์ผู้พัฒนา

หลังจากติดตั้งโปรแกรมแล้ว ให้ติดตั้ง Core ให้ตรงกับรุ่นของบอร์ด โดยใช้ Broads Manager ตามภาพต่อไปนี้

ในกรณีนี้ บอร์ดที่ใช้คือ Arduino UNO

จากนั้นก็เลือก Serial Port ที่ต่อระหว่างคอมพิวเตอร์และบอร์ด Arduino สามารถสื่อสารกันได้

เท่านี้ก็พร้อมที่จะเริ่มเขียนโปรแกรมแล้ว

เมื่อเปิดโปรแกรมขึ้นมาก็จะมีหน้าตาประมาณนี้

IDE จะประกอบไปด้วย 2 ส่วน ได้แก่ ฟังก์ชัน setup() และฟังก์ชัน loop() โดยทุก โปรแกรมจะมี 2 ฟังก์ชันนี้เป็นพื้นฐาน ไม่งั้นจะ Compile ไม่ผ่าน

  • setup() : เมื่อโปรแกรมทำงานจะทำคำสั่งของฟังก์ชั่นนี้เพียงครั้งเดียวใช้ในการกำหนดค่าเริ่มต้นของการทำงาน
  • loop() : เป็นส่วนที่เอาไว้เขียนโปรแกรมที่จะทำงานซ้ำๆวนเป็นลูปไปเรื่อย ซึ่งจะทำหลังจากฟังก์ชั่น setup()

ตัวอย่างการเขียนโปรแกรม

เริ่มจากทดสอบโปรแกรมให้ไฟ LED บนบอร์ดกระพิบก่อนเลย (เหมือนกับเป็นการฝึกเขียน Hello World เมื่อเราพึ่งเริ่มเขียนนั่นแหละ) โดยตำแหน่งของ LED บน PIN หมาย 13 บนบอร์ด ตามภาพ

LED บน PIN 13

ให้ทดสอบลองโค๊ดตามนี้ โดยลองใช้ฟังก์ชัน pinMode()

ในส่วนของ setup()

จากโค๊ดที่เห็นในภาพ เราได้ใช้ฟังก์ชัน pinMode() ลงในส่วนของ setup() ซึ่งรับค่าจาก 2 ตัวแปร

  • ตัวแปรแรก เป็นการรับค่าแทนหมายเลข PIN บนบอร์ด คือตำแหน่งที่ 13
  • ตัวแปรที่สอง เป็นการบอกว่าเราต้องการรับค่า INPUT หรือ OUTPUT จากภายนอก เนื่องจากเราต้องการสั่งให้ไฟติด จึงใช้ OUTPUT

ในส่วนของ loop()

เราได้ใช้ฟังก์ชัน digitalWrite() เพื่อเป็นการส่งค่าไปยังบอร์ดและควบคุมไฟ ซึ่งจะรับค่าคล้ายกับ pinMode() คือเลข PIN

แต่อีกตัวแปรเราใช้ HIGH กับ LOW เพื่อสั่งให้ ไฟติด และ ไฟดับ ตามลำดับ…

นอกจากนี้เรายังใช้อีกฟังก์ชันหนึ่ง คือ delay() เป็นการเว้นช่วงระหว่างการกระพิบ ฟังก์ชันนี้จะรับค่า integer ในหน่วยมิลลิวินาที ซึ่งค่าที่เราใส่ 2000 จะทำให้ไฟ กระพิบทุก 2 วินาที

เมื่อพิมพ์เสร็จแล้ว ให้กดปุ่ม export เพื่อ compile และอัพโหลดโค๊คไปยีง Arduino

ปุ่ม export

จะทำให้บอร์ดมีไฟกระพิบทุก 2 วินาที

ในอาทิตย์ต่อไปจะเป็นการทำโปรเจคจริง โดยใช้บอร์ด Arduino นี้ล็อกประตู…

One clap, two clap, three clap, forty?

By clapping more or less, you can signal to us which stories really stand out.