Obsah:

Maticový displej 8x8 s BT: 5 kroků (s obrázky)
Maticový displej 8x8 s BT: 5 kroků (s obrázky)

Video: Maticový displej 8x8 s BT: 5 kroků (s obrázky)

Video: Maticový displej 8x8 s BT: 5 kroků (s obrázky)
Video: FITkit maticový display 8x8 2024, Červenec
Anonim

Koupil jsem 4 panelovou matici 8x8 od Ebay (Čína) před několika měsíci.

Byl jsem trochu zklamaný, když jsem si uvědomil, že je to těžké zapojení ze strany na stranu, ne shora dolů, pro které je napsána většina příkladů na síti! Viz krok 2.

Asi jsem mohl kód upravit (nevím jak), ale moje obvyklá lenost mi řekla, abych hledal něco již napsaného. Narazil jsem na příklad a držel jsem se ho!

Hrál jsem si s pevnými zprávami, ale pak jsem se rozhodl, že zkusím naprogramovat zprávu přes Bluetooth.

Pak jsem chtěl ukládat a načítat zprávy!

Proběhlo mnoho pokusů a omylů, ale po několika hodinách kódování mi to fungovalo.

Stále se snažím najít pro to praktické využití !!:-)

Krok 1: Displej

Displej
Displej
Displej
Displej

Jak již bylo zmíněno, displej je zapojen zleva doprava, nikoli shora dolů.

Jsem si jistý, že jiný kód mohl být upraven, aby to kompenzoval!

Nepamatuji si, odkud jsem pracovní kód stáhl, nicméně může pomoci hledání „cosmicvoid matrix nebo LedControlMS.h“. Pro tento projekt je vyžadován soubor LedControlMS.h lib.

Jedinou částí tohoto kódu, který jsem upravil, byl počet displejů, protože to vypadalo, že byl nastaven na 5, právě jsem ho změnil na 4.

Objednal jsem si další displej x4, abych viděl, jak funguje s 8 maticemi místo 4!

Krok 2: Bit Bluetooth

Bit Bluetooth
Bit Bluetooth

Pokaždé, když hraji se zařízením Bluetooth, odkazuji na tento vynikající návod!

www.instructables.com/id/Modify-The-HC-05-B…

Tento Instructable vám řekne vše, co potřebujete vědět o nastavení a spárování HC-05 s mobilním telefonem nebo tabletem.

Bez problémů jsem spároval se Samsung Galaxy 6 Edge a Tab A.

Změnil jsem komunikační rychlost na 57 600.

Krok 3: Komunikace BT a program

BT komunikace a program
BT komunikace a program

Ke komunikaci s HC -05 jsem si stáhl bezplatnou aplikaci z Obchodu Play, k dispozici je několik, - ta, kterou jsem si vybral, se nazývá Bluetooth Terminal HC -05 - je to vynikající aplikace!

Jakmile spárujete HC-05 s telefonem nebo tabletem, dojde k následujícímu.

Když je arduino resetováno, program přečte všechny zprávy uložené v EEPROM a zobrazí je na telefonu / tabletu - viz obrázek.

Zobrazené informace jsou umístění Mem (0-9), délka zprávy a samotná zpráva na každém místě.

Uspořádal jsem kód pro uložení až 90 znaků zprávy na adresu 5 pro zprávu 0, 105 pro zprávu 1 …….905 pro zprávu 9.

Adresa 0, 100… 900 obsahují délku zprávy.

Zobrazí se poslední uložená / načtená zpráva.

Odeslání čehokoli do Arduina přes BT nahradí aktuální zprávu.

Chcete -li uložit zobrazenou zprávu (použijte vlnovku „~“), odešlete ~ 0 pro uložení na místo 0, ~ 5 pro uložení na místo 5 atd.

Chcete -li načíst a zobrazit uloženou zprávu, použijte „ ^“(karát), např. ^3 načte a zobrazí zprávu v Mem umístění 3.

Když je zpráva uložena nebo načtena, aktuální umístění paměti je uloženo na adresu EEPROM 1023 - používá se při zapnutí k zobrazení poslední zobrazené zprávy.

Krok 4: Kód a moc

Jako obvykle je můj kód uklizený jako ložnice pro teenagery, ale mám tam spoustu komentářů!

Může existovat nadbytečný kód, protože došlo k pokusu a omylu.

Rutina zobrazení zobrazí vše, co je v poli msg . Písmo není úplné, takže zobrazení některých znaků způsobí nepředvídatelné výsledky!

Pokud by mi někdo tam venku řekl, jak upravit znak $ pro znak £ nebo ještě lépe jej přidat, pak bych byl velmi vděčný

Může být nutné naprogramovat zprávu do umístění 0, jen aby poskytla počáteční bod, toto lze přepsat, když je program spuštěn!

např

EEPROM.write (0, '5'); // délka zprávy uložené v umístění 0

EEPROM.write (5, 'L'); // zpráva uložena na místě 05EEPROM.write (6, 'o');

EEPROM.write (7, 'c');

EEPROM.write (8, '');

EEPROM.write (9, '0');

Když nejsou uloženy žádné zprávy, po zapnutí bude displej nepředvídatelný a telefon / tablet bude zobrazovat liché, ale konzistentní informace, protože jako u většiny EEPROM jsou výchozí data na každém místě FF Hex (225 desetinných míst).

Tento prototyp byl postaven pomocí Arduino Uno, ale pro hotový projekt použiji profi mini.

Mám v úmyslu použít 3 x 1,5 V baterie, takže z důvodu úspory energie vypnu HC-05 po výběru zprávy. Pouhé odpojení/opětovné připojení napájení není dost dobré, protože na displej pošle zkreslené informace.

Zdá se nutné izolovat piny TR & RX před připojením / odpojením napájení!

Krok 5: Aktualizace 2020 - 2 x 4 (8x8) maticové displeje

Po lepším pochopení MAX7219 se mi podařilo propojit 2 displeje dohromady!

bylo jen pár řádků kódu, které bylo třeba změnit - viz připojené ino.

Doporučuje: