01. เริ่มต้นกับอาร์ดูโน

รายละเอียด และตำแหน่งสัญญาณ

อารฺดูโนที่นำมาใช้ทดสอบเป็นของบริษัท ETT จำกัด มีรายละเอียดตำแหน่งขาดังนี้

  • +5V(+Vin) เป็นขารับแหล่งจ่าย 5 โวลท์จากภายนอก

  • +VCC(+5V) เป็นขา VCC ของคอนโทรลเลอร์ ได้รับแรงดันมาจาก +5V(+Vin) ขา 28 และ +VSUB(+5V) ของขา USB โดยมีไดโอดป้องกันการย้อนกลับของแรงดัน

  • +AREF เป็นขาแรงดันอ้างอิงจากภายนอก สำหรับวงจร analog input

  • RESET# เป็นสัญญาณรีเซ็ตของซีพียู ทำงานด้วยโลจิก 0

  • Digital[0..13] เป็นสัญญาณ I/O แบบดิจิตอล ระดับแรงดันเป็น 0 ถึง 5 โวลท์

  • Analog[0..7] เป็นสัญญาณอินพุทแบบอนาลอก ใช้กับแรงดันได้ตั้งแต่ 0 ถึง 5 โวลท์

Circuit Diagram ของ ET-EASY168 STAMP บริษัท ETT จำกัด

การติดตั้งบอร์ดอาร์ดูโนเข้ากับเครื่องคอมพิวเตอร์และการทดสอบ

    1. ติดตั้งโปรแกรม ดาวน์โหลดโปรแกรมอาร์ดูโน จาก http://arduino.cc/ ในเมนู Download ซึ่งมีให้เลือกทั้ง Windows Mac OS X และ Linux: 32 bit, 64 bit ในขณะนี้ ใช้บน Windows และเป็นเวอร์ชั่น arduino-1.0-windows.zip นำมาขยาย (Unzip) แล้วคัดลอกทั้งโฟลดเดอร์ไปติดตั้งที่ C:\Program Files\ (สามารถติดตั้งที่ใหนก็ได้) และเพื่อความสะดวกของการเรียกใช้ให้ทำ Short cut เอาใว้ จะได้ไม่ลืม

  1. การติดตั้ง USB to Serial เมื่อต่อสายดาวน์โหลดจากบอร์ดเข้ากับพอร์ท USB เครื่องจะถามหาไดร์เวอร์ ให้เลือกจากโฟลเดอร์ drivers ที่อยู่ภายในโฟลเดอร์โปรแกรม เช่นเมื่อติดตั้งใว้ที่ C:\Program Files\ ก็จะอยู่ที่ C:\Program Files\arduino-1.0\drivers เมื่อติดตั้งเสร็จสามารถตรวจสอบได้จาก Device Manager เช่น

usb driver web http://www.ftdichip.com/FTDrivers.htm

    1. การเลือกพอร์ท รันโปรแกรม Arduno ใช้เมนู Tools เลือก Serial Port แล้วคลิกเลือกพอร์ท COM ที่ตรวจสอบได้จากข้อ 2

    2. การเลือกบอร์ด จาก เมนู Tools ในโปรแกรม Arduino เลือก Board สำหรับบอร์ดที่ทดลองให้คลิกที่ Arduino Nano W/ ATMega168

    3. การกำหนด Programmer ให้เลือก AVRISP mkII

    4. การกำหนดโฟลเดอร์สำหรับใว้โปรแกรมที่เขียนขึ้น ในArduino เรียกโฟลเดอร์นี้ว่า "Sketchbook" สามารถเลือกใว้ที่ใหนก็ได้ โดยใช้เมนู File เลือก Preference

    5. การเขียนโปรแกรมใหม่ ใช้เมนู File เลือก NEW ให้เขียนโปรแกรมตามตัวอย่างนี้

    6. void setup() { //ส่วนฟังก์ชั่น setup ใช้ใส่คำสั่งที่ต้องการให้ทำครั้งเดียว ก่อนเริ่มทำโปรแกรม loop

    7. pinMode(13, OUTPUT); // กำหนดให้ขา digital 13 เป็นขาเอาท์พุท

    8. }

    9. void loop() { //ทำงานต่อเนื่องไม่มีการหยุด

    10. digitalWrite(13, HIGH); // ทำให้ LED ติด

    11. delay(500); // หน่วงเวลาการทำงานใว้ 500 ms

    12. digitalWrite(13, LOW); // ทำให้ LED ดับ

    13. delay(300); // หน่วงเวลาการทำงานใว้ 300 ms

    14. }

    15. การรันโปรแกรม ใช้เมนู File เลือก Upload Using Programmer หรือใช้

    1. ขั้นตอนนี้อาร์ดูโน จะทำการแปลโปรแกรม แล้วดาวน์โหลดโปรแกรมลงบอร์ดทดลอง สุดท้าย บอร์ดทดลองก็รันโปรแกรม ถ้าไม่ทำให้ลองกดสวิทช์รีเซ็ตของบอร์ดทดลอง

ข้อควรจำ เนื่องจากขา Digital 0 (D0 หรือ PD0) เป็นขา RxD และ Digital 1 ( D1 หรือ PD1) เป็นขา TxD ของพอร์ทอนุกรม UART ซึ่ง Arduino ใช้เป็นพอร์ทดาวน์โหลดโปรแกรมลงชิพ AVR ดังนั้นขณะดาวน์โหลดโปรแกรมนี้ ห้ามต่อขา D0 และ D1 เข้ากับวงจรใดๆ

ข้อมูลเพิ่มเติมศึกษาได้จากคู่มือบอร์ดทดลอง ET-EASY168_STAMP_man.pdf ท้ายบทความนี้ หรือข้อมูลเกี่ยวกับ Arduino

วงจรทดลอง

สำหรับการทดลองแรกนี้ จะใช้เพียงบอร์ดทดลองอาร์ดูโนอย่างเดียว ไม่ต้องใช้อุปกรณ์อื่นจากภายนอก โดยจะให้ LED ที่ D13 ติดกระพริบ ไฟ้ฟ้า +5 โวลท์ก็ใช้จากพอร์ท USB

ความหมายของโปรแกรม

อาร์ดูโน จัดโปรกรมเป็นฟังก์ชั่นหลายๆฟังก์ชั่น แต่หลักๆจะมี

  • ฟังก์ชั่น setup ใช้สำหรับกำหนดหน้าที่ของขาสัญญาณ

  • ฟังก์ชั่น loop เป็นส่วนของฟังก์ชั่น main อาร์ดูโนจะทำงานที่ฟังก์ชั่นนี้เป็นหลัก

  • นอกจากนี้ สามารถมีฟังก์ชั่นอื่นๆได้อีก ดังจะเห็นได้จากตัวอย่างต่อๆไป

กำหนดขาสัญญาณ

void setup() {

// initialize the digital pin as an output.

pinMode(13, OUTPUT);

}

โปรแกรมที่ต้องการให้ทำ

void loop() {

digitalWrite(13, HIGH); // set the LED on

delay(500); // wait for a second

digitalWrite(13, LOW); // set the LED off

delay(300); // wait for a second

}

การทดลองที่ 2

วัตถุประสงค์

  1. รู้จักการใช้คำสั่งแบบ C ของ AVR ในการเขียนโปรแกรมบน Arduino

  2. รู้จักความแตกต่างของตัวแปรแบบ unsigned char กับ char

วงจรทดลอง

หมายเหตุ

  • ETT เป็นเครื่องหมายการค้าของ บริษัทอีทีที จำกัด : ETT Co.,Ltd. http://www.etteam.com/