[TH] Arduino: Arduino Uno

บทความนี้แนะนำบอร์ด Arduino รุ่น Uno ซึ่งเป็นบอร์ดที่นิยมใช้ในการศึกษาการเขียนโปรแกรมเพื่อควบคุมอุปกรณ์ โดยกล่าวถึงคุณสมบัติของบอร์ด และการใช้ Arduino IDE รุ่น 2 (beta 7) เป็นพื้นฐานสำหรับการเขียนโปรแกรมต่อไป

คุณสมบัติของ Arduino Uno

บอร์ด Arduino Uno เป็นบอร์ดไมโครคอนโทรลเลอร์ที่ใช้ชิพ ATmega328P ของบริษัท Microchip โดนตัวบอร์ดถูกออกแบบให้เชื่อมต่อกับคอมพิวเตอร์ผ่านทางพอร์ต USB รองรับการจ่ายไฟฟ้าแรงดันกระแสตรงไม่เกิน 12V จากภายนอก มีปุ่มรีเซ็ต (reset) และบนบอร์ดมีขั้วเสียบสำหรับเชื่อมต่อกับวงจรภายนอก โดยคุณสมบัติของบอร์ดเป็นดังนี้

  • ไมโครคอนโทรลเลอร์ : ATmega328P
  • แรงดันไฟฟ้ากระแสตรงสำหรับทำงาน : 5VDC
  • แรงดันนำเข้า : 7-12VDC
  • จำนวนขาที่ทำงานแบบดิจิทัล : 14 ขา (มี 6 ขาที่สามารถทำงาน PWM ได้)
  • จำนวนขานำเข้าสัญญาณแอนาล็อก : 6 ขา
  • จำนวนขาที่เป็นขานำเข้า/ส่งออกแบบ PWM : 6 ขา
  • กระแสที่ขับได้จากขานำเข้า/ส่งออก : 20mA
  • กระแสที่ขับได้จากขาจ่ายแรงดัน 3.3VDC : 50mA
  • ขนาดหน่วยความจำแฟลช : 32 KB (ถูกใช้เก็บรอมของ Arduino 0.5KB)
  • ขนาดหน่วยความจำแรม : 2KB
  • ขนาดหน่วยความจำ EEPROM : 1KB
  • ความเร็วสัญญาณนาฬิกา : 16MHz
  • ขนาด : 6.86×5.34cm

Arduino IDE

Arduino IDE เป็นเครื่องมือพัฒนาโปรแกรมสำหรับบอร์ด Arduino ปัจจุบันรุ่น 1.8.15 เป็นรุ่นล่าสุด แต่ทางทีมพัฒนาได้พัฒนารุ่น 2 เป็นรุ่น beta7 ซึ่งเป็นรุ่นที่ผู้เขียนเลือกใช้ในการเขียนบทความและปรับเปลี่ยนเป็นรุ่นใหม่กว่าเมื่อมีการปรับปรุงรุ่นจากทีมพัฒนา โดยระบบปฏิบัติการที่สามารถใช้งานได้เป็นดังนี้

  • Windows แบบ 32 บิต และ 64บิต
  • Linux แบบ 32 บิต และ 64 บิต
  • Linux ARM แบบ 32 บิต และ 64 บิต (รุ่น 2 ยังไม่สนับสนุน)
  • Mac OS X รุ่น 10.14 ขึ้นไปสำหรับรุ่น 2 และ 10.10 สำหรับรุ่น 1.8.15

เมื่อเสียบบอร์ด Arduino Uno เข้ากับพอร์ตของเครื่องคอมพิวเตอร์และติดตั้งไดรเวอร์ เมื่อเข้าโปรแกรม Arduino IDE เป็นครั้งแรกจะและเลือกบอร์ดเป็น Arduino Uno จะแสดงหน้าจอให้ติดตั้งบอร์ดดังภาพต่อไปนี้

เมื่อคลิกปุ่ม Yes ระบบจะดำเนินการติดตั้งบอร์ดดังภาพต่อไปนี้

รายการไอคอนคำสั่งพื้นฐานที่ต้องรู้ได้แก่

Board Manager : สำหรับเพิ่มเติม อัพเกรด หรือถอนการติดตั้งบอร์ด

Library Manager : สำหรับเพิ่ม อัพเกรด และลบไลบรารีออกจาก Arduino IDE

New : สำหรับสร้างโปรแกรมใหม่

Open : สำหรับเปิด Sketch (โปรแกรม) ที่เขียน หรือตัวอย่างโปรแกรม

Save : สำหรับบันทึก Sketch ที่เขียน

แถบ board selected : สำหรับเลือกบอร์ดที่เชื่อมต่อกับพอร์ตสื่อสาร

ในกรณีที่แท็บมองเห็นพอร์ตแต่ไม่รู้จักบอร์ดดังภาพต่อไปนี้

ให้คลิกเพื่อเลือกรายการบอร์ดดังภาพต่อไปนี้

verify : สำหรับทำการคอมไพล์โปรแกรม

upload : สำหรับคอมไพล์โปรแกรมและอัพโหลดเข้าบอร์ด Arduino

โครงสร้างโปรแกรมพื้นฐาน

จากภาพด้านบทเป็นโครงสร้างโปรแกรมพื้นฐานที่ Arduino IDE สร้างให้ โดยภาษาที่ใช้กับ Arduino เป็นภาษา C++ ที่กำหนดฟังก์ชันพื้นฐาน 2 ฟังก์ชันสำหรับทำงาน คือ

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

ดังนั้นโปรแกรมที่ถูกสร้างขึ้นเมื่อเริ่มทำงานจึงไม่ทำสิ่งใด (เพราะไม่ได้เขียนโค้ด) และในแต่ละการวนรอบก็ไม่ได้ทำงานอะไร

สรุป

จากบทความนี้ทางทีมงาน JarutEx หวังว่าผู้อ่านสามารถใช้งาน Arduino IDE เพื่อสร้างโปรแกรม คอมไพล์และอัพโหลดโปรแกรมลงบอร์ดได้สำเร็จ ในครั้งหน้าจะอธิบายถึงหลักภาษา C++ เพื่อเป็นพื้นฐานของการเขียนโค้ดต่อไป สุดท้ายขอให้สนุกกับการเขียนโปรแกรมครับ

(C) 2020-2021, โดย อ.ดนัย เจษฎาฐิติกุล/อ.จารุต บุศราทิจ
ปรับปรุงเมื่อ 2021-05-20, 2021-06-02, 2021-09-13