เรียน-เล่น-โค้ด KidBright32iP กับ microBlock IDE EP6: อุปกรณ์ต่อพ่วงพื้นฐาน

นอกจากอุปกรณ์อินพุต/เอาต์พุตจำนวนมากที่ติดตั้งบนบอร์ดแล้ว
KidBright32iP ยังมีจุดต่อที่สามารถต่อพ่วงอุปกรณ์ภายนอกได้ด้วย

จากรูปมี LED แสดงสถานการณ์เชื่อมต่อไร้สาย WiFi LED และ IoT LED ที่เขียนโปรแกรมสั่งให้ติดดับได้ มีจุดต่อแบบ JST โดย ถ้าเป็นสีดำจะกำหนดให้เป็นขาอินพุต (I1-I4) ถ้าเป็นสีแดงจะกำหนดให้เป็นขาเอาต์พุต (O1-O2 : OUT1-OUT2) มีจุดต่อแบบ IDC ตัวผู้เป็นขาพอร์ตเอนกประสงค์ IO18,IO19 และ IO23

คำสั่ง digital write คำสั่งเอาต์พุตแบบดิจิตอล

เป็นคำสั่งสำหรับส่งลอจิก “0” หรือ “1” ไปควบคุมอุปกรณ์เอาต์พุตให้มีแรงดัน 3.3V (ลอจิก “1”) หรือ 0V (ลอจิก “0”) โดยเลือกขาที่ต้องการได้ตามรูป

ตัวอย่างที่ 25 ควบคุมการติดดับของ LED IOT และ WiFi

บนบอร์ด KidBright32iP มี LED แสดงสถานการณ์เชื่อมต่อ WiFi และเชื่อมต่อ IoT อยู่ สามารถเขียนโค้ดเพื่อสั่งการเปิด/ปิด LED ทั้ง 2 ตัวนี้ได้ แต่ต้องเข้าใจว่า LED ทั้ง 2 ตัวติดสว่างเมื่อได้รับลอจิก “0” ซึ่งต่างจาก LED ปกติ

การทำงาน

ตัวอย่างนี้จะให้ LED 2 ดวงติดและดับสลับกัน โดยเริ่มจากให้ LED IOT ติดก่อน ส่วน LED WiFi ดับ และสลับสถานะกันไปเรื่อยๆ

ZX-LED

ZX-LED เป็น LED ขนาด 8 มม. มีขั้วต่อแบบ JST ซึ่งใช้สาย JST3-8 เชื่อมต่อกับบอร์ด KidBright32iP ได้ที่จุดต่อ OUT1 และ OUT2 สำหรับคำสั่งที่ใช้ควบคุมการติดดับจะใช้คำสั่ง digital write และระบุตำแหน่งขาไปที่ ขา OUT1 หรือ OUT2 ตามการการเชื่อมต่อ ZX-LED

ตัวอย่างที่ 26 สั่งเปิด LED ด้วยสวิตช์ S1 S2

ต่อ ZX-LED 2 ตัวเข้ากับบอร์ด KidBright32ip ที่ตำแหน่ง OUT1 และ OUT2 จากนั้นเขียนโค้ดตามตัวอย่าง

การทำงาน

เมื่อกดสวิตช์ S1 ZX-LED ที่ต่อกับจุด OUT1 จะติดเป็นเวลา 1 วินาทีแล้วดับ ถ้ากดสวิตช์ S2 ZX-LED ที่ต่ออยู่กับจุดต่อ OUT2 จะติด 1 วินาทีแล้วดับ

ZX-BUTTON

ZX-BUTTON เป็นแผงวงจรสวิตช์กดติดปล่อยดับที่ให้ลอจิก “0” เมื่อกดสวิตช์ ให้ลอจิก “1” เมื่อไม่กดสวิตช์ ขั้วต่อเป็นแบบ JST สามารถต่อเข้ากับ KidBright32ip ได้ที่จุด IN1-IN4 และอ่านค่าได้ด้วยคำสั่ง digital read pin

ตัวอย่างที่ 27 ใช้งาน ZX-LED ร่วมกับ ZX-BUTTON

ทดสอบอ่านค่าสวิตช์ด้วยคำสั่ง digital read และขับ LED ด้วยคำสั่ง digital write โดยให้ LED ติดสลับกันตามการกดสวิตช์

ต่อ ZX-LED 2 ตัวเข้าที่ช่อง O1 และ O2 ส่วน ZX-Button 2 ตัวต่อเข้าที่ช่อง I1 และ I2 จากนั้นเขียนโค้ดเพื่อตรวจสอบการกดสวิตช์ และแสดงผลด้วย LED

การทำงาน

ZX-Button เมื่อกดแล้วให้ค่าเป็น “0” การตรวจสอบจะต้องใช้ not มาคั่นเพื่อกลับสถานะให้เงื่อนไขเป็นจริง โดยเมื่อสวิตช์ถูกกดจะให้ ZX-LED ดวงที่ 1 ติดดวงที่ 2 ดับ ส่วนถ้ากดสวิตช์ที่ตำแหน่ง IN2 จะให้ ZX-LED ดวงที่ 2 ติดและดวงที่ 1 ดับ

ตัวอย่างที่ 28 เปิด/ปิด LED จากสวิตช์ตัวเดียว

เป็นการเก็บค่าสถานะของ LED เอาไว้ว่าติดหรือดับ เมื่อมีการกดสวิตช์ ให้ตรวจสอบตัวแปรที่เก็บสถานะก่อน และให้ LED เป็นสถานะตรงข้ามจากค่าเดิม

การทำงาน

จากโค้ดตัวอย่าง ตัวแปร X และ Y ใช้เพื่อเก็บสถานะของ LED โดยเริ่มต้นกำหนดให้เป็น 0 เพื่อบอกว่า LED ทั้ง 2 ดวงดับอยู่ เมื่อกดสวิตช์ จะเข้าไปตรวจสอบตัวแปร X หรือ Y ว่าสถานะเดิมของ LED เป็นอย่างไร ถ้าเป็น 0 ก็เป็นค่าตัวแปรให้เป็น 1 และให้ LED ติด ทุกครั้งที่มีการวนตรวจสอบจะหน่วงเวลา 0.3 วินาทีซึ่งนานมากพอไม่ให้เกิดทำซ้ำในขณะที่เรากดสวิตช์

อุปกรณ์ต่อพ่วงพื้นฐานในตอนนี้จะพูดถึงเฉพาะ สวิตช์และ LED สำหรับอุปกรณ์ตัวอื่นๆ ขอยกไปตอนหน้านะครับ

Facebook Comments Box