06 มิถุนายน 2559

อาร์ดุยโน : ไฟแอล อี ดี กระพริบ ตอนแรก

ครูจะพาเริ่มเรียนรู้อิเล็กทรอนิกส์กับอาร์ดุยโน จะเริ่มไปพร้อมๆ กับการเขียนโปรแกรม วันนี้เราจะมาเริ่มรู้จักกับ Digital Output โดยใช้บทเรียนง่ายๆ ที่เรียกว่า ไฟแอล อี ดี กระพริบ

สำหรับใครที่ยังไม่รู้จัก LED ลองเข้าไป "รู้จักและเล่นกับ หลอด LED"  ก่อนนะครับ

จุดประสงค์ของครูในการเขียนบทความนี้ ก็เพื่อให้ผู้เริ่มเรียนรู้อาร์ดุยโน ได้ในสิ่งเหล่านี้
  1. รู้จักการใช้ Arduino IDE เพื่อเขียนโปรแกรมและอัพโหลดโปรแกรมลงอาร์ดุยโน
  2. ฝึกการใช้ Digital Output แบบง่ายๆ โดยใช้ LED ในการแสดงผล
อุปกรณ์ที่จำเป็นต้องมี
  1. บอร์ดอาร์ดุยโน (จะของแท้ ของเทียม ของเทียบก็ได้ สำหรับครูใช้ของเทียบ)
  2. หลอด LED 2 หลอด สีอะไรก็ได้
  3. ตัวต้านทาน 220 โอห์ม 2 ตัว
  4. แผ่นเบรดบอร์ด พร้อมสายไฟสำหรับเสียบเบรดบอร์ด
  5. คอมพิวเตอร์ที่ติดตั้ง Arduino Software (IDE) แล้ว (ใครยังไม่มี ไปดาวน์โหลดฟรี  ได้ที่ https://www.arduino.cc/en/Main/Software )

    *** IDE คำนี้ครูจะใช้บ่อยมาก ความหมายก็คือ ชุดโปรแกรมมาตรฐานของอาร์ดุยโนที่เผยแพร่ ผ่านเว็บไซต์ arduino.cc 

เริ่มต้นการทดลอง

ทดลองใช้หลอด LED  กับตัวต้านทาน 220 โอห์มอย่างละอันก่อน ต่อสายไฟเข้ากับช่องเสียบ ดังแสดงในภาพ


ภาพที่แสดงนี้ครูแคปเจอร์มาจากหน้าจอของโปรแกรม Fritzing ครับ ในภาพครูต่อสายไฟเส้นหนึ่งจาก ช่อง 10 ของ Digital เข้าไปยังอาโนดของหลอด LED ซึ่งเสียบอยู่บนบอร์ดทดลอง จากนั้นนำความต้านทาน 220 โอห์ม (ถ้าไม่มีก็เอาใกล้เคียงก็พอได้ครับ) แล้วอีกด้านหนึ่งของตัวต้านทาน ต่อเข้ากราวด์ (GND) บนบอร์ดอาร์ดุยโน



ตรวจเช็คความเรียบร้อยของสายไฟ (ดูภาพที่ครูขยายนะครับ) จากนั้นเสียบสาย USB เข้าที่บอร์ดอาร์ดุยโนและคอมพิวเตอร์ แล้วเปิดคอมพิวเตอร์ขึ้นมา (หรือจะเปิดคอมพิวเตอร์รอไว้ก่อน แล้วเสียบสาย USB เข้าไป ก็ได้)

ถึงเวลา IDE

  1. เปิด IDE ของอาร์ดุยโนขึ้นมา
  2. คลิก File > Examples > 01. Basics > Blink

  3. เมื่อไฟล์ Blink ได้เปิดขึ้นมาแล้ว เลื่อนแถบเลื่อนด้านขวาจนสุด เราจะเห็นข้อความ คล้ายๆ กันกับครูที่นำมาแสดง ดังภาพด้านล่าง



    เลื่อนเคอร์เซอร์ไปเปลี่ยนเลข 13 ให้เป็นเลข 10 ให้หมด ซึ่งมีอยู่ 3 ที่(ทำตามไปก่อน ครูจะอธิบายเหตุผลทีหลัง)
  4. คลิก File > Save as ... แล้วเลือกโฟลเดอร์ที่จะเก็บไฟล์ต้นฉบับโปรแกรมของเราไว้ (อาจสร้างใหม่เลยก็ได้) แล้วตั้งชื่อไฟล์ที่เราจำได้ง่าย ของครูตั้งว่า test_blink แล้วก็คลิก Save
  5. คลิกปุ่มเครื่องหมายถูก เพื่อตรวจสอบและคอมไพล์โปรแกรม ถ้าทำตามครู มันควรจะขึ้นข้อความที่แถบดำๆ ด้านล่าง ดังแสดงให้ภาพ



    หากไม่ขึ้นดังภาพ ปิดโปรแกรมแล้วย้อนกลับไปทำใหม่
  6. เมื่อเสร็จขั้นตอน 5 แล้ว ทีนี้ก็คลิกที่ปุ่มลูกศรขวา  เพื่ออัพโหลดโค้ดที่คอมไฟล์แล้ว (Object Code) ไปยังส่วนความจำแฟลชของอาร์ดุยโน
  7. สังเกตการหลอด LED ซึ่งตอนนี้มันจะติด 1 วินาที ดับ 1 วินาที สลับกันไปอย่างไม่มีสิ้นสุด หรือจนกว่าจะถอดสาย USB 

ทำความเข้าใจกับโครงสร้างของภาษาซีใน IDE

Comments

คอมเมนต์ในภาษาซี คือ ส่วนของข้อความที่เมื่อสั่งคอมไพล์แล้ว IDE จะไม่นำไปรวมในการคอมไพล์ มีไว้สำหรับสื่อสาร หรือบอกให้คนที่มาอ่านโปรแกรมเข้าใจสิ่งที่เราเขียนมากยิ่งขึ้น  คอมเมนต์จะมีสองลักษณะ คือ

  • อยู่ภายในเครื่องหมาย /* ........... คอมเมนต์ ........... */   และ
  • อยู่หลังจากเครื่องหมาย // .......... คอมเมนต์

















ตัวอย่างการคอมเมนต์ในการเขียนโปรแกรม ซึ่งครูนำมาจากโค้ดตัวอย่างใน IDE

Function

ฟังก์ชั่น ก็คือ กลุ่มของคำสั่งที่ปฏิบัติงานเฉพาะอย่างใดอย่างหนึ่ง ฟังก์ชั่นจะมีทั้งที่เราต้องเขียนขึ้นมาเอง และฟังก์ชั่นที่ IDE เตรียมไว้ให้เราเรียกใช้ได้เลย

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

Statements

Statements หรือ ข้อความคำสั่ง (ที่ครูจะใช้ในการเรียกเป็นภาษาไทย) ก็คือ ข้อความที่เราพิมพ์ เพื่อสั่งให้อาร์ดุยโนทำงาน ซึ่งแต่ละข้อความคำสั่งจะต้องจบด้วยเครื่องหมายเซมิโคลอน (;) จากตัวอย่างที่ครูนำมาให้เล่น จะมีดังนี้
   pinMode(10, OUTPUT);   // หมายถึงการตั้งค่าให้ช่องที่ 10 ของ Digital IO ใช้ส่งข้อมูลออก
   digitalWrite(10, HIGH);   // หมายถึง การตั้งค่าสถานะช่องที่ 10 ให้อยู่ในสถานะเป็น 1 ซึ่งจะมีความต่างศักย์ไฟฟ้า เท่ากับ +5 โวลท์
   delay(1000); // หมายถึง ให้มีการหน่วงเวลาไว้ 1000 มิลลิวินาที
   digitalWrite(10, LOW);   // หมายถึง การตั้งค่าสถานะช่องที่ 10 ให้อยู่ในสถานะเป็น 0 ซึ่งจะมีความต่างศักย์ไฟฟ้า เท่ากับ 0 โวลท์

ข้อความคำสั่งอยู่จะอยู่ภายในฟังก์ชั่นหลักของ IDE โดยมีเครื่องหมายวงเล็บปีกกา {......} ล้อมเอาไว้


Variables 

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

  • จำนวนเต็ม (integer) เป็นตัวแปรที่สามารถเก็บจำนวนเต็มตั้งแต่ -32,768 ถึง 32,767 ในการสร้างตัวแปรชนิดจำนวนเต็มนี้จะใช้หน่วยความจำ 2 ไบต์ (16 บิต) 
  • อักขระ (charactor)  เป็นตัวแปรที่ใช้เก็บตัวอักขระหรือตัวอักษรต่างๆ ได้ 1 ตัว ตัวแปรนี้จะใช้หน่วยความจำ 1 ไบต์ (8 บิต) รหัสที่ใช้เก็บเป็นรหัสแอสกี้ ซึ่งเราสามารถดูรหัสได้ที่ https://en.wikipedia.org/wiki/ASCII
  • บูลีน (Boolean) ใช้เก็บ "จริง" กับ "เท็จ" ใช้หน่วยความจำ 1 ไบต์ (8 บิต)
ครูแนะนำตัวแปรง่ายๆ เบื้องต้นเพียงแค่นี้ก่อนนะครับ เพราะเรายังไม่ได้ใช้งาน แม้ในต้วอย่างที่ครูยกมาในครั้งนี้ แต่เราจะลองใช้ตัวแปรในตอนต่อไป ซึ่งครูจะพาให้รู้จักตัวแปร และเริ่มใช้งานกัน

สรุปการเรียนรู้ในครั้งนี้

  • ได้ต่อวงจรง่ายๆ ลงบนแผ่นเบรดบอร์ด หรือบอร์ดเสียบอุปกรณ์การทดลอง โดยเน้นการทำตามก่อน
  • ถือว่าได้เล่นกับโปรแกรม ถึงแม้เราจะยังไม่ได้เขียนโค้ดขึ้นมาด้วยตนเอง แต่เป็นการเอาโค้ดตัวอย่าง ที่ใช้งานได้จริงนำมาดัดแปลง
  • ได้ทดลองคอมไพล์โปรแกรมและอัพโหลดลงหน่วยความจำแฟลชของอาร์ดุยโน

ครั้งต่อไป เราจะเริ่มเล่นกับตัวแปร และใช้ LED เป็น 2 ตัว อย่าลืมติดตามนะครับ



ไม่มีความคิดเห็น:

แสดงความคิดเห็น