การใช้งาน IOXESP32 เขียนโปรแกรมด้วยบล็อก
เขียนโปรแกรมสั่งงานบอร์ด IOXESP32 ด้วยภาษาบล็อกโดยใช้โปรแกรม KBIDE
Last updated
เขียนโปรแกรมสั่งงานบอร์ด IOXESP32 ด้วยภาษาบล็อกโดยใช้โปรแกรม KBIDE
Last updated
การเขียนโปรแกรมจำเป็นต้องมีความรู้ 2 ส่วน คือ 1) แนวคิดการเขียนโปรแกรม และ 2) ไวยากรของภาษา เพื่อให้สามารถเรียนรู้และเขียนโปรแกรมได้ง่ายขึ้น จึงมีการคิดค้นการเขียนโปรแกรมด้วยภาษาบล็อกเกิดขึ้น เพื่อตัดความรู้ด้านไวยากรของภาษาออกไป ส่งผลให้การเขียนโปรแกรม หรือสร้างโปรเจคสามารถทำได้ง่ายมากยิ่งขึ้น โดยเน้นไปที่แนวคิดการเขียนโปรแกรมเพียงอย่างเดียว
โปรแกรม KBIDE เป็นโปรแกรมที่ใช้พัฒนาไมโครคอนโทรลเลอร์ด้วยภาษาบล็อก สามารถเขียนโปรแกรมในรูปของภาษาบล็อกแล้วแปลงเป็นภาษา C/C++ เพื่อคอมไพล์และอัพโหลดลงบอร์ดไมโครคอนโทรลเลอร์ได้ ปัจจุบันโปรแกรม KBIDE สามารถใช้เขียนโปรแกรมสั่งงานบอร์ดได้หลายรุ่น รวมทั้งสามารถเขียนโปรแกรมสั่งงานบอร์ด IOXESP32 ได้ด้วย
ให้เข้าไปดาวน์โหลดไฟล์ติดตั้งโปรแกรม KBIDE ได้ที่ https://github.com/MakerAsia/KBProIDE/releases โดยเลื่อนไปที่เวอร์ชั่นล่าสุด (ขณะที่เขียนบทความนี้ เวอร์ชั่นล่าสุดคือ 1.2.0) เลือกดาวน์โหลดไฟล์ติดตั้งตาม OS ที่ใช้งาน (ผู้เขียนบทความใช้ Windows 10 เวอร์ชั่น 64 บิต จึงเลือกดาวน์โหลดไฟล์ KB-IDE_Setup_v1.2.0_win64.exe) รอจนดาวน์โหลดไฟล์เสร็จ
เปิดไฟล์ติดตั้งที่ได้ดาวน์โหลดมา แล้วรอหน้าต่างติดตั้งแสดงขึ้นมา (ดังรูป) คลิกที่ปุ่ม Install
รอจนกว่าโปรแกรมจะติดตั้งเสร็จ
เมื่อโปรแกรมติดตั้งเสร็จแล้ว หน้าต่างติดตั้งจะแสดงดังรูป ให้กดในช่องสีเหลี่ยมหน้า Run kbide ให้ขึ้นเครื่องหมายถูก (ดังรูป) เพื่อเลือกให้เปิดโปรแกรมทันทีหลังปิดหน้าต่างการติดตั้งนี้ จากนั้นกดปุ่ม Finish เพื่อปิดหน้าต่างติดตั้ง
โปรแกรม KBIDE จะเปิดขึ้นมา พร้อมมีกล่องข้อความแนะนำการใช้งาน หากต้องการให้โปรแกรมช่วยแนะนำการใช้งาน ให้กดที่ปุ่ม START TOUR หากไม่ต้องการให้แนะนำ กด SKIP IT
ในกล่องข้อความ Time to explorer ให้กดปุ่ม OK
หน้าต่าง Current board จะแสดงขึ้นมา ให้เลื่อนหาบอร์ด OpenKB โดยสังเกตจากชื่อและรูป คลิกเลือกบอร์ด IOXESP32 แล้วกดปุ่ม CHANGE BOARD
จากนั้นโปรแกรมจะแจ้งเตือนว่าโค้ดโปรแกรมที่เขียนไว้จะถูกลบทิ้งเมื่อเปลี่ยนบอร์ด ให้กดปุ่ม CONFIRM เพื่อยืนยันการเปลี่ยนบอร์ด
สังเกตแถบด้านล่าง บอร์ดจะเปลี่ยนเป็น IOXESP32 แล้ว
ทดลองเขียนโปรแกรมไฟกระพริบที่เรียนรู้ขั้นตอนการเขียนโปรแกรมเบื้องต้น การอัพโหลดโปรแกรม และทดสอบการทำงานของบอร์ด
เริ่มต้น การจะสั่งให้หลอดแอลอีดีบนบอร์ด IOXESP32 ที่ต่ออยู่กับขา 5 ทำงานได้ จำเป็นจะต้องกำหนดโหมดของขาให้เป็น OUTPUT ก่อน ทำได้โดยคลิกที่แท๊ป GPIO คลิกเม้าส์ค้างที่บล็อก set pin ... as ... แล้วลากมาวางไว้ที่ส่วน Workspace
เนื่องจากการตั้งโหมดการทำงานจะทำเพียงครั้งเดียว แล้วโหมดการทำงานของขาจะถูกจดจำไปตลอด ดังนั้นบล็อก set pin ... as ... จึงควรนำไปใส่ไว้ในบล็อก Setup ที่บล็อกภายในนั้นจะทำงานเพียงครั้งเดียว
คลิกที่ตัวเลข 25 ในบล็อก set pin ... as ... แล้วแก้เป็นเลข 5 จะได้โค้ดโปรแกรมดังรูป
ต่อมา สั่งให้ไฟกระพริบ (ติด-ดับ) โดยใช้บล็อก digital write ที่อยู่ในหมวด GPIO นำบล็อกดังกล่าวไปใส่ไว้ในบล็อก Loop (เพราะต้องการให้ไฟกระพริบตลอดเวลา) แก้หมายเลขขาเป็นเลข 5 ได้โค้ดโปรแกรมดังรูป
องค์ประกอบของโปรแกรมไฟกระพริบ คือสั่งให้หลอดแอลอีดีติด และหลอดแอลอีดีดับ จากโค้ดโปรแกรมด้านบนจะเห็นว่าได้ใช้บล็อก digital write เพื่อสั่งให้ปล่อยลอจิก 1 ออกไปแล้ว (ค่าตรง value เป็น 1) ซึ่งเป็นการสั่งให้หลอดแอลอีดีติด แต่ยังขาดการสั่งให้หลอดแอลอีดีดับ การสั่งให้หลอดแอลอีดีดับสามารถทำได้ด้วยบล็อก digital write เช่นเดิม แต่เปลี่ยน value เป็น 0 แทน
คลิกขวาที่บล็อก digital write จากนั้นเลือก Duplicate เพื่อให้ทำสำเนาบล็อก digital write เพิ่มขึ้นมา
บล็อกที่เพิ่มขึ้นใหม่ ให้นำไปต่อจากบล็อก digital write เดิม แล้วแก้ value เป็น 0 ได้โค้ดโปรแกรมดังรูป
เนื่องจากบอร์ด IOXESP32 ทำงานด้วยความเร็ว 240MHz หมายถึงใน 1 วินาทีจะทำคำสั่งได้ 240 ล้านคำสั่ง หากใช้โค้ดโปรแกรมดังรูปด้านบนจะทำให้ได้ไฟกระพริบที่กระพริบ 240 ล้านครั้งใน 1 วินาที ทำให้ตาของมนุษย์มองไม่เห็นการกระพริบที่รวดเร็วนี้ เพื่อแก้ปัญหาดังกล่าวจำเป็นต้องใช้บล็อก delay เข้ามาหน่วงเวลาการทำงานเพื่อกำหนดเวลากระพริบของหลอดแอลอีดี
ลากบล็อก delay ไปใส่ไว้ใต้บล็อก digital write ทั้ง 2 บล็อก
กำหนดความเร็วในการกระพริบได้โดยกำหนดตัวเลขที่อยู่ในบล็อก delay ตัวอย่างกำหนดไว้ 500 มิลลิวินาที หรือ 0.5 วินาที (1000 มิลลิวินาที = 1 วินาที) ได้โค้ดโปรแกรมไฟกระพริบที่สมบูรณ์ดังรูป
เลือกพอร์ตของบอร์ด IOXESP32 ในช่อง Select COM port และเลือกความเร็วในการอัพโหลดในช่อง Serial upload baudrate โดยสามารถเลือกความเร็วสูงสุด 921600 ได้เลย เมื่อเลือกครบแล้วกดปุ่ม CLOSE
รอจนกว่าการอัพโหลดโปรแกรมจะทำครบ 3 ขั้นตอน จนขึ้นเครื่องหมายถูก (ดังรูป) เป็นอันจบการอัพโหลด
ที่บอร์ด IOXESP32 จะพบว่าหลอดแอลอีดีสีเขียวกระพริบแล้ว
ในการเปิดโปรแกรมครั้งแรก บอร์ดที่ใช้จะเลือกเป็น Kidbright (Arduino API) จำเป็นต้องเปลี่ยนเป็นบอร์ด OpenKB ก่อน (สังเกตชื่อบอร์ดที่เลือกในปัจจุบันจากแถบด้านล่าง) ทำได้โดยคลิกที่ปุ่ม ในแถบด้านบนของโปรแกรม
ก่อนอัพโหลดโปรแกรมลงบอร์ด จำเป็นต้องตั้งค่าพอร์ตเชื่อมต่อของบอร์ดก่อน โดยกดไปที่
กดปุ่ม เพื่ออัพโหลดโปรแกรมลงบอร์ด