โปรแกรมแรกกับ บอร์ด Arduino MEGA

รายการอุปกรณ์


1. ศึกษาการใช้งาน Arduino MEGA 2560 เบื้องต้น ตามลิงค์ด้านล่าง


การใช้งานบอร์ด Arduino MEGA 2560 เบื้องต้น

2. ติดตั้งโปรแกรม Arduino IDE


Arduino integrated development environment หรือเรียกสั้นๆว่า โปรแกรม Arduino IDE เป็นโปรแกรมที่ “แจกฟรี” ภายใต้เงื่อนไขในการใช้งานลักษณะ Open source ซึ่ง Arduino IDE จะทำหน้าที่ ติดต่อ ระหว่าง คอมพิวเตอร์ ของเรา (Windows, Mac OS X และ Linux) กับ บอร์ด Arduino ซึ่งโปรแกรมนี้ออกแบบให้ง่ายต่อการเขียนโค้ดและอัปโหลดโค้ดที่เราเขียน เข้าสู่ บอร์ด Arduino

โดย Download ตัวติดตั้งได้จาก

https://www.arduino.cc/en/Main/Software

เลือก Windows Installer, for Windows 7 and up

Download ตัวติดตั้ง Arduino IDE


คลิกเลือก JUST DOWNLOAD (หากต้องการร่วมบริจาคช่วยการพัฒนา Arduino Software สามารถกด CONTRIBUTE & DOWNLOAD)

เมื่อดาวน์โหลดเสร็จแล้ว ให้ติดตั้งตามที่โปรแกรมแนะนำ

3. ตรวจสอบ Port ของบอร์ด Arduino MEGA


เชื่อมต่อสาย USB จาก คอมพิวเตอร์ ไปที่บอร์ด Arduino MEGA

ตรวจสอบ Port ของบอร์ด Arduino


บอร์ดนี้มีตัวสื่อสารกับ พอร์ต USB ของคอมพิวเตอร์ คือ USB communication เป็นชิป ATmega16U2 ซึ่งแปลงสัญญาณ USB เป็นแบบอนุกรม เพื่อช่วยให้คอมพิวเตอร์ของสามารถอัพโหลดโปรแกรมและสื่อสารกับชิป Atmega2560 ได้

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

โดย คลิกขวา Computer -> Properties -> Device Manager

ไปที่ Ports (COM & LPT) จะพบ Arduino Mega 2560 ในตัวอย่างเป็น (COM24) แสดงว่าคอมพิวเตอร์ของเราสามารถ ติดต่อสื่อสารกับ บอร์ด Arduino MEGA ได้แล้ว

Port ของบอร์ด Arduino MEGA

4. โปรแกรมแรก Hello World กับ Arduino MEGA

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


เปิดโปรแกรม Arduino IDE

เปิดโปรแกรม Arduino IDE

บอร์ด Arduino Mega 2560 ที่เรากำลังใช้อยู่นั้นสามารถติดต่อสื่อสารกับอุปกรณ์ภายนอกได้นะครับ และการทดลองติดต่อสื่อสารที่ทำได้ง่ายและเห็นภาพที่สุดคือการสั่งงานให้ Arduino Mega 2560 สื่อสารกับคอมพิวเตอร์ของเรา ผ่านทางพอร์ทอนุกรม (Serial Port) โดยการให้มันส่งข้อความอะไรบางอย่างมาที่คอมของเรากัน สำหรับหัวของนี้ยังไม่มีการต่อวงจรเพิ่มเติมครับเพียงแค่มีสาย USB กับบอร์ด Arduino Mega 2560 ก็เริ่มทดลองกันได้เลยครับ

คำสั่งแรกที่ต้องใช้ในการเริ่มต้นสื่อสารคือ การกำหนดความเร็วในการสื่อสาร ด้วยคำสั่ง

Serial.begin(9600);

โดยตัวเลขที่อยู่ในวงเล็บคือค่าความเร็วในการรับ-ส่งข้อมูล ค่ามาตรฐาน คือ 9600 ครับ และคำสั่งสำหรับสั่งให้ บอร์ดส่งข้อความมาที่คอมพิวเตอร์ของเรา คือ

Serial.println("Hello World");

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

ส่วนประกอปของโปรแกรม หรือ ที่เรียกว่า Sketch มี 2 ส่วน คือ ฟังก์ชั่น setup และ ฟังก์ชั่น loop สามารถอธิบายรูปแบบการทำงานของโปรแกรมได้ดังนี้


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

//ฟังก์ชัน ส่วนที่1
void setup() 
{
   //ส่วนนี้จะทำงานครั้งแรก เพียงครั้งเดียวเท่านั้น เป็นส่วนคำสั่งหรือสเตตเมนต์ (Statement) จะเป็นส่วนที่เก็บคำสั่งต่างๆ ที่จะให้โปรแกรมเรื่มต้นในการทำงาน ในการตั้งค่า กำหนดค่า ต่างๆ โดยเริ่มต้นด้วยเครื่องหมายปีกกาเปิด { และจบด้วยเครื่องหมายปีกกาปิด } ทุกโปรแกรมจะต้องมีฟังก์ชั่น setup ซึ่งถือว่าเป็นฟังก์ชั่นหลักที่โปรแกรมจะทำงานได้
}

//ฟังก์ชัน ส่วนที่2
void loop() 
{
   //ส่วนนี้จะทำงานซ้ำ วนลูป ไปเรื่อยๆ ส่วนคำสั่งหรือสเตตเมนต์ (Statement) จะเป็นส่วนที่เก็บคำสั่งต่างๆ ที่จะให้โปรแกรมทำงาน การตัดสินใจ ต่างๆ โดยเริ่มต้นด้วยเครื่องหมายปีกกาเปิด { และจบด้วยเครื่องหมายปีกกาปิด } ส่วนนี้จะมีมากกว่าหนึ่งฟังก์ชั่นก็ได้ แต่ทุกโปรแกรมจะต้องมีฟังก์ชั่น loop ซึ่งก็ถือว่าเป็นฟังก์ชั่นหลักที่โปรแกรมจะทำงานได้
}


เริ่มเขียนโปรแกรม หรือ Sketch ตามโค้ดด้านล่างนี้

void setup() 
{
   Serial.begin(9600);
}

void loop() 
{
   Serial.println("Hello World");
}
โค้ด Arduino Mega

ไปที่ Tools -> Board แล้วเลือกให้ตรงกับบอร์ดที่ใช้งาน สำหรับ Arduino MEGA 2560 R3 ให้เลือกบอร์ด Arduino Mega or Mega 2560

เลือกบอร์ด Arduino Mega or Mega 2560


เลือก Port โดยไปที่ Tools -> Port -> COM24 (Arduino Mega or Mega 2560)

(โดย COM24 แต่ละเครื่องจะไม่เหมือนกัน ให้เลือกตามที่ปรากฎ)

Port -> COMxx (Arduino Mega or Mega 2560)
เลือก บอร์ด Arduino Mega 2560

คลิกที่ Upload

Upload Arduino MEGA 2560 R3

โปรแกรมจะคอมไพล์ (compile) โดยจะทำการอ่านโปรแกรมภาษาซีทั้งหมดตั้งแต่ต้นจนจบ แล้วทำการแปลผลทีเดียว

Upload Arduino Mega

รอจนกระทั่งขึ้น Done uploading. ที่แถบด้านล่าง แสดงว่าเราอัพโหลดโปรแกรมลงบอร์ดได้สำเร็จแล้ว

Done uploading. ที่แถบด้านล่าง

จากนั้นเปิด Serial Monitor ของ Arduino IDE โดยไปที่ Tools -> Serial Monitor

เปิด Serial Monitor ของ Arduino IDE

เมื่อเปิด Serial Monitor และ เลือก 9600 baud แล้วได้ข้อความดังรูป แสดงว่า

โปรแกรมแรกของคุณสำเร็จแล้ว

โปรแกรมแรกกับบอร์ด arduino mega 2560