<< Go Back

Arduino IDE เป็นโปรแกรมสำหรับเขียนโค้ดเพื่อควบคุมการทำงานของไมโครคอนโทรลเลอร์ ซึ่งสามารถดาวน์โหลดใช้งานได้โดยไม่มีค่าใช้จ่ายและมีเวอร์ชันที่รองรับระบบปฏิบัติการหลายแบบ ซึ่งในหลักสูตรนี้จะขอแนะนำเฉพาะโปรแกรมที่รองรับระบบปฏิบัติการวินโดวส์เท่านั้น โดยขั้นตอนมีดังนี้
1. ดาวน์โหลดโปรแกรมโดยเข้าไปที่เว็ปไซด์ https://www.arduino.cc/en/Main/Software คลิกที่คำ ว่า SOFTWARE ดังรูป

รูปหน้าต่างเว็ปไซต์สำหรับดาวน์โหลดโปรแกรม Arduino IDE

2. เลือกดาวน์โหลดไฟล์ที่เป็นไฟล์ zip (เพื่อให้ง่ายต่อการอัพเดตหรือถอนโปรแกรมออกในอนาคต) โดยคลิกตรงคำว่า Windows ZIP file for non admin install ดังรูป

รูปบริเวณที่สำหรับคลิกเพื่อดาวน์โหลดไฟล์ zip

3. คลิกตรงคำว่า JUST DOWNLOAD เพื่อดาวน์โหลดไฟล์

รูป หน้าต่างเว็ปไซต์สำหรับคลิกเพื่อดาวน์โหลด

4. คัดลอกไฟล์ zip มายังไดร์ฟ D จากนั้นแยกไฟล์ แล้วดับเบิ้ลคลิกไฟล์ arduino.exe ดังรูป

รูปคัดลอกทั้งโฟลเดอร์มาไว้ที่ไดร์ฟ D

 

5. เปิดไฟล์ติดตั้งขึ้นมาจะปรากฏหน้าต่าง  สำหรับติดตั้งให้คลิก I Agree
6. คลิก Next เพื่อไปสู่ขั้นตอนถัดไป
7. เลือกที่ติดตั้งโปรแกรมจากนั้น กด Install
8. รอกระทั่งการติดตั้งเสร็จสิ้น
9. คลิก Install เพื่อติดตั้ง Adafruit Industries LLC Ports
10. คลิก Install เพื่อติดตั้ง Arduino USB Driver srl
11. คลิก Install เพื่อติดตั้ง Arduino USB Driver LLC
12. รอจนแสดงคำว่า Completed เป็นอันเสร็จสิ้นการติดตั้ง จากนั้นคลิก Close เพื่อปิด

13. จะปรากฏไอคอน Arduino บนหน้าจอคอมพิวเตอร์

14. ทดสอบเปิดโปรแกรมจะได้หน้าต่างดังรูป

แถบเครื่องมือในโปรแกรม Arduino IDE มีแถบรายการคําสั่งต่าง ๆ ดังนี้

1. แถบเครื่องมือไฟล์ (File) มีเครื่องมือช่วยในคําสั่งต่าง ๆ ซึ่งแต่ละปุ่มมีหน้าที่การใช้งานดังนี้
     1. New : เป็นแถบสร้างไฟล์ใหม่เพื่อเริ่มการเขียนโปรแกรมใหม่
     2. Open : เป็นแถบเปิดไฟล์งานที่เก็บในโฟลเดอร์
     3. Sketchbook : เป็นแถบเปิดไฟล์งานล่าสุด
     4. Example : เป็นแถบในการเลือกเปิดไฟล์ตัวอย่างที่อยู่ในโปรแกรม
     5. Close : เป็นแถบปิดไฟล์งานล่าสุด
     6. Save : เป็นแถบบันทึกไฟล์งานที่สร้างขึ้นปัจจุบัน
     7. Save As : เป็นแถบบันทึกไฟล์งานโดยเปลี่ยนชื่อไฟล์
     8. Page Setup : เป็นแถบตั้งค่าหน้ากระดาษของไฟล์งานปัจจุบัน
     9. Print : เป็นแถบสั่งพิมพ์งานออกทางเครื่องพิมพ์
     10. Preference : เป็นแถบกําหนดค่าการทํางานของโปรแกรม
     11. Quit : เป็นแถบใช้ออกจากโปรแกรม

รูป แถบเครื่องมือไฟล์ (File)

2. แถบเครื่องมือแก้ไข (Edit) มีเครื่องมือช่วยในคําสั่งต่าง ๆ ซึ่งแต่ละปุ่มมีหน้าที่การใช้งานดังนี้
     1. Undo : เป็นแถบย้อนกลับไปคําสั่งล่าสุด
     2. Redo : เป็นแถบย้อนกลับคืนเมื่อกดแถบ Undo มากเกินไป
     3. Cut : เป็นแถบตัดข้อความที่ต้องการคัดลอก
     4. Copy : เป็นแถบสําหรับคัดลอกข้อความ
     5. Paste : เป็นแถบสําหรับวางข้อความที่ตัดหรือคัดลอกมา
     6. Select All : เป็นแถบเลือกข้อความทั้งหมด
     7. Comment/UnComment : เป็นแถบสําหรับเติมเครื่องหมาย // เพื่อสร้างหมายเหตุหรือคําอธิบายลงในโปรแกรม
     8. Increase Indent : เป็นแถบสําหรับเลื่อนเคอร์เซอร์
     9. Decrease Indent : เป็นแถบสําหรับยกเลิกการเลื่อนเคอร์เซอร์
     10. Find.. : เป็นแถบค้นหา
     11. Find Next : เป็นแถบค้นหาต่อไป
     12. Find Previous : เป็นแถบย้อนกลับการค้นหา

รูป แถบเครื่องมือแก้ไข (Edit)

3. แถบเครื่องมือสเกตช์ (Sketch) มีเครื่องมือช่วยในคําสั่งต่าง ๆ ซึ่งแต่ละปุ่มมีหน้าที่การใช้งานดังนี้
     1. Verify/Compile : เป็นแถบสําหรับการคอมไพล์โปรแกรม
     2. Upload : เป็นแถบสําหรับการอัปโหลดโปรแกรมที่เขียนขึ้นลงบอร์ด Arduino
     3. Show Sketch folder : เป็นแถบใช้ในการสั่งเปิดโฟลเดอร์ที่เก็บโปรแกรม
     4. Import Library : เป็นแถบคําสั่งเรียกใช้ไลบรารีเพิ่มเติม
     5. Add File : เป็นแถบเพิ่มไฟล์ให้กับสเกตซ์บุ๊กปัจจุบัน

 รูป แถบเครื่องมือสเกตช์ (Sketch)

4. แถบเครื่องมือ (Tools) มีเครื่องมือช่วยในคําสั่งต่างๆ ซึ่งแต่ละปุ่มมีหน้าที่การใช้งานดังนี้
     1. Auto Format : เป็นแถบจัดรูปแบบโปรแกรมแบบอัตโนมัติ
     2. Archive Sketch : เป็นแถบสั่งบีบอัดไฟล์โปรแกรมทั้งโฟลเดอร์ หลักและโฟลเดอร์ย่อยของไฟล์งานปัจจุบันไฟล์ที่สร้างใหม่ให้มีชื่อเดียวกับไฟล์งานปัจจุบัน
     3. Board : เป็นแถบสําหรับเลือกฮาร์ดแวร์ของบอร์ด Arduino
     4. Serial Port : เป็นแถบสําหรับเลือกหมายเลขพอร์ตของคอมพิวเตอร์ที่ต่อกับบอร์ด Arduino

รูป แถบเครื่องมือ (Tools)

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

รูป แถบเครื่องมือตัวช่วย (Help)

6. ปุ่ม Serial Monitor เป็นปุ่มสําหรับการติดต่อสื่อสารบอร์ด Arduino กับคอมพิวเตอร์ เมื่อคลิกปุ่มนี้คอมพิวเตอร์ทําการเปิดหน้าต่างใหม่ แล้วนําค่าในการรับส่งข้อมูลมาแสดง ที่หน้าต่างที่เปิดขึ้นนี้

รูป หน้าต่างแสดงการติดต่อสื่อสารบอร์ด Arduino กับคอมพิวเตอร์

ส่วนประกอบของโปรแกรม Arduino (IDE)

โครงสร้างโปรแกรมภาษา C บน Arduino จะมีลักษณะแบบเดียวกับ C ทั่วๆไป โดยมีโครงสร้าง ดังต่อไปนี้
1. Preprocessor directives
2. ฟังก์ชัน setup()
3. ฟังก์ชัน loop()

1. Preprocessor directives

ส่วนที่ 1 นอกจากจะเป็นส่วนของ Preprocessor directives แล้วยังมี ส่วนของการกำหนดค่า (Global declarations) คือ การกำหนดชนิดตัวแปรแบบนอกฟังก์ชัน
ส่วน Preprocessor directives จะเป็นส่วนที่คอมไพลเลอร์จะมีการประมวลผลและทำตามคำสั่งก่อนที่จะมีการคอมไพล์โปรแกรม ซึ่งจะเริ่มต้นด้วยเครื่องหมายไดเร็กทีฟ (directive) หรือเครื่องหมายสี่เหลี่ยม # แล้วจึงตามด้วยชื่อคำสั่งที่ต้องการเรียกใช้หรือกำหนด โดยปกติแล้วส่วนนี้จะอยู่ในส่วนบนสุด หรือส่วนหัวของโปรแกรมและต้องอยู่นอกฟังก์ชันหลักใดๆ ก็ตาม
#include เป็นคำสั่งที่ใช้อ้างอิงไฟล์ภายนอก เพื่อเรียกใช้ฟังก์ชันหรือตัวแปรที่มีการสร้างหรือกำหนดไว้ในไฟล์นั้นรูปแบบการใช้งานคือ #include <ชื่อไฟล์.h>

ตัวอย่างเช่น
#include <Wire.h>
#include <Time.h>

จากตัวอย่าง จะเห็นว่าได้มีการอ้างอิงไฟล์ Wire.h และไฟล์ Time.h ซึ่งเป็นไลบารี่พื้นฐานที่มีอยู่ใน Arduino ทำให้เราสามารถใช้ฟังก์ชันเกี่ยวกับเวลาที่ไลบารี่ Time มีการสร้างไว้ให้ใช้งานได้
การอ้างอิงไฟล์จากภายในหรือการอ้างอิงไฟล์ไลบารี่ที่มีอยู่แล้วใน Arduino หรือไลบารี่ที่นักเขียนโปรแกรมเพิ่มเข้าไปเองจะใช้เครื่องหมาย <> ในการคร่อมชื่อไฟล์ไว้ เพื่อให้โปรแกรมคอมไพลเลอร์เข้าใจว่าควรไปหาไฟล์เหล่านี้จากในโฟลเดอร์ไลบารี่ แต่หากต้องการอ้างอิงไฟล์ที่อยู่ในโฟลเดอร์โปรเจค จะต้องใช้เครื่องหมาย "" คร่อมแทน ซึ่งคอมไพล์เลอร์จะวิ่งไปหาไฟล์นี้โดยอ้างอิงจากไฟล์โปรแกรมที่คอมไพล์เลอร์อยู่

เช่น
#include "mywork.h"
จากตัวอย่างด้านบนคอมไพล์เลอร์จะวิ่งไปหาไฟล์ mywork.h ภายในโฟลเดอร์โปรเจคทันที หากไม่พบก็จะแจ้งเป็นข้อผิดพลาดออกมา
#define เป็นคำสั่งที่ใช้ในการแทนข้อความที่กำหนดไว้ด้วยข้อความที่กำหนดไว้ ซึ่งการใช้คำสั่งนี้ ข้อดีคือจะไม่มีการอ้างอิงกับตัวโปรแกรมเลย
รูปแบบ
#define NAME VALUE

ตัวอย่างเช่น
#define LEDPIN 12
จากตัวอย่าง ไม่ว่าคำว่า LEDPIN จะอยู่ส่วนใดของโค้ดโปรแกรมก็ตามคอมไพล์เลอร์จะแทนคำว่า LEDPIN ด้วยเลข 12 แทน ซึ่งข้อดีคือเราไม่ต้องสร้างเป็นตัวแปรขึ้นมาเพื่อเปลืองพื้นที่แรม และยังช่วยให้โปรแกรมทำงานเร็วขึ้นอีกด้วยเพราะซีพียูไม่ต้องไปขอข้อมูลมาจากแรมหลายต่อ

ส่วนของการกำหนดค่า (Global declarations)
ส่วนนี้จะเป็นส่วนที่ใช้ในการกำหนดชนิดตัวแปรแบบนอกฟังก์ชันหรือประกาศฟังก์ชัน เพื่อให้ฟังก์ชันที่ประกาศสามารถกำหนดหรือเรียกใช้ได้จากทุกส่วนของโปรแกรม
เช่น
int pin_led = A1;
int pin_sensor = 8;

2. ฟังก์ชัน void setup()
ฟังก์ชัน void setup() เป็นฟังก์ชันแรกที่ถูกเรียกใช้นิยมใช้กำหนดค่าหรือเริ่มต้นใช้งานไลบารี่ต่างๆ เช่น ในฟังก์ชัน setup() จะมีคำสั่ง pinMode() เพื่อกำหนดให้ขาใดๆ ก็ตามเป็นดิจิตอลอินพุตหรือเอาต์พุต โดย OUTPUT เป็นค่าคงที่เมื่อใช้ขาดิจิตอลบน Arduino ต้องระบุโหมดเป็น OUTPUT หรือ INPUT เสมอ ตามหลักของภาษา C (ที่ Arduino ใช้) คำสั่งหนึ่งๆ จะลงท้ายด้วยเครื่องหมายอัฒภาค (;) เช่น
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);

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

ตัวอย่าง

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

การติดตั้งไดร์ฟเวอร์ USB

บอร์ด Arduino ปัจจุบันมีหลายรุ่นซึ่งแต่ละรุ่นอาจใช้ชิพสำหรับติดต่อสื่อสารผ่านพอร์ต USBแตกต่างกันไป ซึ่งบางรุ่นมีไดร์ฟเวอร์มาให้พร้อมในตัวโปรแกรม Arduino IDE แล้ว เช่น บอร์ดที่ใช้ชิพCP210x, FTDI, หรือบอร์ดที่ใช้ไมโครคอนโทรลเลอร์เป็นตัวสื่อสารผ่าน USB ดังนั้นการติดตั้งผู้ใช้งานสามารถเรียกใช้ได้เลยโดยไม่ต้องไปหาดาวน์โหลดไดร์ฟเวอร์อีก โดยไดร์ฟเวอร์จะอยู่ในโฟลเดอร์C:\arduino-1.8.9\drivers ดังรูป

ยกเว้นบอร์ดที่ใช้ชิพ CH340,CH341 (บอร์ด Arduino Nano 3.0 เลือกใช้ชิพเบอร์นี้ในบางผู้ผลิต)
ซึ่งผู้ใช้งานจะต้องไปหาดาวน์โหลดไดร์ฟเวอร์เพื่อมาติดตั้งเอง การดาวน์โหลดสามารถดาวน์โหลดไดร์ฟเวอร์ได้ที่ http://www.winchiphead.com/download/CH341/CH341SER.ZIP
การตรวจสอบการทำงานของไดร์ฟเวอร์ด้วยการเชื่อมต่อบอร์ด Arduino เข้ากับคอมพิวเตอร์ด้วยสาย USB ทำการเปิด Device Manager สังเกตพอร์ตสื่อสารที่ปรากฏขึ้นดังรูป

ตัวอย่างการลองใช้โปรแกรม Arduino IDE

ตัวอย่างที่ 1

ตัวอย่างที่ 2



<< Go Back