สารบัญ:
- เสบียง
- ขั้นตอนที่ 1: การตั้งค่าเซนเซอร์
- ขั้นตอนที่ 2: การเดินสายไฟ
- ขั้นตอนที่ 3: รับส่วนขยายแรก
- ขั้นตอนที่ 4: เริ่มต้นการเชื่อมต่อและเปิดใช้งานอัลกอริทึม
- ขั้นตอนที่ 5: โปรแกรมแรก
- ขั้นตอนที่ 6: การทดสอบ
- ขั้นตอนที่ 7: เชื่อมต่อ OLED
- ขั้นตอนที่ 8: รับส่วนขยายที่สอง
- ขั้นตอนที่ 9: โปรแกรมสุดท้าย
- ขั้นตอนที่ 10: เรียกใช้โปรแกรม
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-13 06:58
นี่เป็นแนวทางที่สามของฉันเกี่ยวกับเซ็นเซอร์วิชันซิสเต็ม MU จนถึงตอนนี้ เราได้ลองใช้ MU เพื่อจดจำการ์ดที่มีตัวเลขและรูปร่าง แต่เพื่อสำรวจเซ็นเซอร์ MU ของเราด้วยโปรเจ็กต์ที่ซับซ้อนมากขึ้น เราต้องการผลลัพธ์ที่ดีขึ้น เราไม่สามารถรับข้อมูลมากขนาดนั้นจาก LED เพียงอย่างเดียว
ดังนั้นในโครงการนี้ เราจะตั้งโปรแกรม micro:bit เพื่อรับข้อมูลที่เราได้รับจากเซ็นเซอร์ MU และส่งออกไปยัง OLED เนื่องจาก OLED ต้องการการเชื่อมต่อ I2C เราจึงต้องตั้งค่าการเชื่อมต่อแบบอนุกรมระหว่าง MU และ mirco:bit ของเรา
เสบียง
1 x BBC micro:บิต
1 x Morpx Mu Vision เซนเซอร์ 3
1 x Micro:bit breakout board - ต้องมีการเข้าถึงพิน 19&20 ซึ่งไม่มีบอร์ด breakout ทั้งหมด ฉันใช้ elecfreaks motorbit เพราะฉันชอบบอร์ดนั้น
8 x สายจัมเปอร์ (หญิง-หญิง)
1 x หน้าจอ OLED
ขั้นตอนที่ 1: การตั้งค่าเซนเซอร์
ก่อนที่เราจะเริ่มต้นการเชื่อมต่อสิ่งใด ๆ เราต้องการตั้งค่าเซ็นเซอร์อย่างถูกต้อง
เซ็นเซอร์ Mu Vision มีสวิตช์ 4 ตัว
สองคนทางซ้ายกำหนดโหมดเอาท์พุต และสองคนทางขวากำหนดที่อยู่
เนื่องจากเราต้องการให้ที่อยู่เป็น 00 จึงควรปิดสวิตช์ทั้งสองทางด้านขวา
โหมดการส่งออกที่แตกต่างกันคือ:
00 UART
01 I2C
10 การถ่ายโอนข้อมูล Wifi
11 การส่งภาพ Wifi
เราต้องการมีการเชื่อมต่อแบบอนุกรม ดังนั้นเราจะทำงานในโหมด UART นั่นหมายความว่าสวิตช์ทั้งสองควรอยู่ที่ 00 ดังนั้นควรปิดทั้งคู่
ขั้นตอนที่ 2: การเดินสายไฟ
การเดินสายไฟค่อนข้างง่าย เพียงใช้สายจัมเปอร์สี่เส้นเพื่อเชื่อมต่อเซ็นเซอร์ Mu กับบอร์ดฝ่าวงล้อมของคุณ
เซ็นเซอร์ Mu -> กระดานฝ่าวงล้อม
RX-> พิน 13
TX -> พิน14
G -> กราวด์
วี -> 3.3-5V
ขั้นตอนที่ 3: รับส่วนขยายแรก
ขั้นแรกเราไปที่เครื่องมือแก้ไข Makecode และเริ่มโครงการใหม่ จากนั้นไปที่ "ขั้นสูง" และเลือก "ส่วนขยาย" โปรดทราบว่าเนื่องจากฉันเป็นคนเดนมาร์ก ปุ่มเหล่านี้จึงมีชื่อต่างกันเล็กน้อยในภาพ ในส่วนขยาย เราค้นหา "Muvision" และเลือกผลลัพธ์เดียวที่เราได้รับ
ขั้นตอนที่ 4: เริ่มต้นการเชื่อมต่อและเปิดใช้งานอัลกอริทึม
เมื่อคุณใช้ส่วนขยายนี้ คุณจะได้รับข้อผิดพลาด "ไม่สามารถอ่านคุณสมบัติที่ไม่ได้กำหนด" นั่นเป็นเพราะว่าไม่มีแอนิเมชั่น micro:bit ไม่มีผลกับการคอมไพล์และการรันโปรแกรม
กล่องสีน้ำเงินเข้มกล่องแรกจะบอก Micro:bit ว่าจะใช้พินใดสำหรับการเชื่อมต่อแบบอนุกรม
ส่วนสีส้มส่วนแรกของรหัสจะเริ่มต้นการเชื่อมต่อแบบอนุกรม
ส่วนสีส้มที่สองของรหัสเปิดใช้งานอัลกอริธึมการรู้จำบัตรตัวเลข
การแสดงตัวเลขใช้เพื่อแก้ไขปัญหา หาก micro:bit ไม่นับถึงสามเมื่อคุณเรียกใช้โปรแกรม ให้ตรวจสอบว่าสายไฟของคุณเชื่อมต่อกับพินที่ถูกต้อง
ขั้นตอนที่ 5: โปรแกรมแรก
ตรวจจับบัตรตัวเลขให้ 0 หรือ 1 หากตรวจพบบัตรตัวเลขเราจะได้ 1 (จริง) และ 0 (เท็จ) หากตรวจไม่พบบัตรตัวเลข ดังนั้นในที่นี้ เราคาดหวังว่าจะมีหน้ายิ้มหากตรวจพบบัตรตัวเลขและหน้าบึ้งหากตรวจไม่พบ
รหัสสามารถพบได้ที่นี่
ขั้นตอนที่ 6: การทดสอบ
เราทดสอบส่วนแรกของโปรแกรม
ขั้นตอนที่ 7: เชื่อมต่อ OLED
การเดินสายไฟค่อนข้างง่ายอีกครั้ง เราใช้สายจัมเปอร์สี่เส้นเพื่อเชื่อมต่อ OLED กับบอร์ดฝ่าวงล้อมของคุณ
OLED -> กระดานฝ่าวงล้อม
วิน -> 3.3 v
GND -> GND
SCL -> Pin19
SCD -> Pin20
ขั้นตอนที่ 8: รับส่วนขยายที่สอง
เราไปที่โปรแกรมของเราใน Makecode และไปที่ "ขั้นสูง" และเลือก "ส่วนขยาย" ที่นั่นเราค้นหา Oled12864 และเลือกส่วนขยาย OLED12864_I2C
ขั้นตอนที่ 9: โปรแกรมสุดท้าย
ในการตั้งค่า เราเพิ่มบล็อกเพื่อเริ่มต้น OLED
ในโปรแกรมหลัก เราเพิ่มบล็อกเพื่อให้ OLED ให้ค่าฉลากของบัตรตัวเลขแก่เรา โปรดจำไว้ว่าสำหรับบัตรตัวเลข ค่าฉลากก็คือค่าบนบัตรด้วย
เราสามารถเปลี่ยนตำแหน่งของตัวเลขได้โดยการเปลี่ยนค่า x และ y
โปรแกรมสุดท้ายสามารถพบได้ที่นี่
ขั้นตอนที่ 10: เรียกใช้โปรแกรม
เมื่อคุณเรียกใช้โปรแกรม micro:bit ควรยิ้มเมื่อเซ็นเซอร์ MU ตรวจพบการ์ดตัวเลขและขมวดคิ้วตลอดเวลาในขณะที่ OLED เขียนหมายเลขของการ์ดที่ตรวจพบล่าสุด