สร้างโปรแกรมควบคุม IPST-SE แบบไร้สายผ่าน Android ด้วยโมดูลบลูทูธและซอฟต์แวร์ AppInventor2 ตอน 2
การต่อโมดูล BlueStick เข้ากับบอร์ด IPST-SE
โมดูล BlueStick ควรใช้ร่วมกับ ADX-BTSTICK จะ ได้ไม่ต้องกังวลเรื่องการต่อกลับขั้ว สำหรับการต่อสายเพื่อสื่อสารอนุกรม ขาส่ง(TxD) จะต้องต่อขารับ (RxD) ถึงจะรับส่งข้อมูลกันได้ ดังรูป
การเขียนโปรแกรมรับค่าจาก BlueStick
สำหรับบอร์ด IPST-SE , POP-XT และ Robo-Creator จะมีฟังก์ชั่นสำหรับการสื่อสารอนุกรม ใช้ชื่อว่า UART โดยมีคำสั่งใช้งานบ่อยๆ ดังนี้ 1. uart1() สำหรับส่งข้อความออกไป 2. uart1_available() สำหรับดูผลว่ามีข้อมูลถูกส่งเข้ามาหรือไม่ 3. uart1_getkey() สำหรับอ่านค่าข้อมูลที่ถูกส่งมา ตัวอย่างโปรแกรม รับค่าและแสดงผลที่ GLCD
#include <ipst.h> byte x; void setup(){ setTextSize(2); glcd(0,0,"You Press:"); setTextSize(3); pinMode(2,INPUT_PULLUP); } void loop(){ if(uart1_available()){ x=uart1_getkey(); if(x==1){ glcd(1,0,"ON "); } else if(x==0){ glcd(1,0,"OFF"); } } }
การทำงานของโปรแกรม ส่วน void setup() แสดงข้อความ “You Press” ส่วน void loop() จะวนตรวจสอบว่ามีข้อมูลถูกส่งมาหรือไม่ ถ้ามีให้เก็บค่าข้อมูลไว้ที่ตัวแปร x จากนั้นเอามาตรวจสอบว่าตัวแปร x มีค่าเท่ากับ 1 หรือไม่ ถ้าใช่แสดงข้อความ ON ที่หน้าจอ GLCD ถ้าตรวจสอบแล้วมีค่าเท่ากับ 0 ให้แสดงข้อความ OFF ที่หน้าจอ GLCD สำหรับการควบคุมกรณีที่เป็นหุ่นยนต์ สามารถปรับปลี่ยนชุดคำสั่งจาก GLCD เป็นการขับเคลื่อนมอเตอร์ได้
การทดสอบผลการทำงานของ App ที่เขียนขึ้น
หลังจากที่ฝั่ง IPST-SE ดาวน์โหลดโปรแกรมและพร้อมทำงานแล้ว จะเห็นโมดูล BlueStick มีไฟติดกะพริบสีแดง ซึ่งหมายถึงพร้อมรอรับการจับคู่
ถ้าเป็นการจับคู่ครั้งแรกจะต้อง ไปที่ ตั้งค่า > บลูทูธ ของแอนดรอยด์ก่อน จากนั้นกดค้นหา เพื่อหาโมดูล BlueStick ซึ่งอาจจะตั้งชื่อเป็น Linvor หรือชื่ออื่นๆ (สามารถปรับตั้งชื่อได้ด้วยบอร์ด UCON-2200)
ให้คลิกเลือก อย่างในตัวอย่างผู้เขียนตั้งชื่อว่า BlueRover0002 ให้เลือกเพื่อจับคู่จากนั้น ใส่ PIN ซึ่งในที่นี้เลือกใช้ 1234 เป็นค่ามาตรฐาน
อุปกรณ์ BlueStick จะอยู่ในรายชื่อของอุปกรณ์ที่จับคู่แล้ว
ที่หน้าจอหลักของโปรแกรม ซึ่งตอนนี้มีปุ่ม วางอยู่ 3 ปุ่ม ให้เลือกปุ่ม Connect เพื่อเปิดหน้าต่างเชื่อมต่อ จากนั้นเลือกอุปกรณ์ที่ต้องการเชื่อมต่อดังรูป
เมื่อเลือกแล้ว LED สีแดงที่ BlueStick จะติดค้าง เมื่อกดสวิตช์ ON ที่หน้าจอ ข้อความที่ GLCD จะแสดงข้อความ “ON” ส่วนเมื่อกดสวิตช์ OFF ที่หน้าจอ ข้อความที่ GLCD จะแสดงข้อความ “OFF”
การติดตั้ง App ไปที่แอนดรอยด์