Obsah:
2025 Autor: John Day | [email protected]. Naposledy změněno: 2025-01-13 06:57
Toto je můj třetí průvodce zrakovým senzorem MU. Dosud jsme se pokoušeli pomocí MU rozpoznat karty s čísly a tvary, ale abychom prozkoumali náš senzor MU s komplexnějším projektem, chtěli bychom získat lepší výstup. Jen z LED diod nemůžeme získat tolik informací.
V tomto projektu tedy naprogramujeme mikro: bit tak, aby převzal informace, které získáme ze snímače MU, a vyvedl je na OLED. Protože OLED vyžaduje připojení I2C, musíme nastavit sériové připojení mezi MU a naším mirco: bitem.
Zásoby
1 x BBC micro: bit
1 x senzor vidění Morpx Mu 3
1 x Micro: bit breakout board - Musí mít přístup k pinům 19 a 20, které ne všechny breakout desky mají. Používám Ebitfreaks Motorbit, protože se mi ta deska líbí.
8 x propojovací vodiče (žena-žena)
1 x OLED obrazovka
Krok 1: Nastavení senzoru
Než začneme cokoli připojovat, chceme senzor správně nastavit.
Senzor Mu Vision má 4 spínače.
Dva vlevo rozhodují o jeho výstupním režimu a dva vpravo o jeho adrese.
Protože chceme, aby adresa byla 00, měly by být vypnuty oba přepínače vpravo.
Různé výstupní režimy jsou:
00 UART
01 I2C
10 Wifi datový přenos
11 Přenos obrazu Wifi
Chceme mít sériové připojení, takže budeme pracovat v režimu UART. To znamená, že dva přepínače by měly být na 00, takže oba by měly být na vypnuto.
Krok 2: Zapojení
Zapojení je docela snadné, stačí použít čtyři propojovací vodiče a propojit senzor Mu s vaší odpočinkovou deskou.
Mu senzor -> Breakout deska
RX-> kolík 13
TX -> pin 14
G -> Zem
V -> 3,3-5V
Krok 3: Získání prvního rozšíření
Nejprve přejdeme do editoru Makecode a zahájíme nový projekt. Poté přejdeme na „Pokročilé“a vybereme „Rozšíření“. Uvědomte si, že protože jsem Dán, tato tlačítka mají na obrázcích trochu jiná jména. V rozšířeních hledáme „Muvision“a vybereme jediný výsledek, který dostaneme.
Krok 4: Inicializace připojení a povolení algoritmu
Když použijete toto rozšíření, zobrazí se chyby typu „Nelze přečíst vlastnost nedefinovaných“. Důvodem je, že chybí mikro: bitová animace. Nemá vliv na kompilaci a běh programu.
První tmavě modré pole říká Micro: bitu, které piny použít pro sériové připojení.
První oranžová část kódu inicializuje sériové připojení.
Druhá oranžová část kódu umožňuje algoritmy rozpoznávání číselných karet.
Zobrazování čísel slouží k potížím při střílení. Pokud se při spuštění programu mikro: bit nepočítá do tří, zkontrolujte, zda jsou vaše vodiče správně připojeny ke správným pinům.
Krok 5: První program
Detect number card dá buď 0 nebo 1. Pokud je detekována číselná karta, dostaneme 1 (true) a 0 (false), pokud není detekována číselná karta. Tady bychom tedy očekávali smajlíka, pokud je detekována karta s číslem, a obličej vrásky, pokud není detekován.
Kód najdete zde.
Krok 6: Testování
Otestujeme první část programu.
Krok 7: Připojení OLED
Zapojení je opět poměrně snadné, používáme čtyři propojovací vodiče pro připojení OLED k vaší odpojovací desce.
OLED -> Breakout deska
Vin -> 3,3 v
GND -> GND
SCL -> Pin19
SCD -> Pin20
Krok 8: Získejte druhé rozšíření
Přejdeme do našeho programu v Makecode a přejdeme pod „Pokročilé“a vybereme „Rozšíření“. Tam vyhledáme Oled12864 a vybereme rozšíření OLED12864_I2C.
Krok 9: Konečný program
V nastavení přidáme blok pro inicializaci OLED.
V hlavním programu přidáme blok, aby nám OLED poskytl hodnotu štítku číselné karty. Pamatujte, že u číselných karet je hodnota štítku také hodnotou na kartě.
Pozici čísla můžeme změnit změnou hodnoty x a y.
Konečný program najdete zde.
Krok 10: Spuštění programu
Když spustíte program, micro: bit by se měl usmívat, když snímač MU detekuje číselnou kartu a po zbytek času se mračí, zatímco OLED zapisuje číslo poslední detekované karty.