Taula de continguts:

Pantalla de matriu 8x8 amb BT: 5 passos (amb imatges)
Pantalla de matriu 8x8 amb BT: 5 passos (amb imatges)

Vídeo: Pantalla de matriu 8x8 amb BT: 5 passos (amb imatges)

Vídeo: Pantalla de matriu 8x8 amb BT: 5 passos (amb imatges)
Vídeo: Top Uber Prank! 2024, De novembre
Anonim

Fa uns mesos vaig comprar una matriu de 8x8 de 4 panells d’Ebay (Xina).

Em va decebre una mica quan em vaig adonar que estava connectat de costat a costat, no de dalt a baix, per al qual s’escriuen la majoria d’exemples de la xarxa. Vegeu el pas 2.

Suposo que podria haver modificat el codi (no sé ben bé com), però la meva mandra habitual em va dir que cercés alguna cosa ja escrita. Em vaig trobar amb un exemple i me’n vaig quedar!

Vaig jugar amb missatges fixos, però vaig decidir provar de programar el missatge mitjançant Bluetooth.

Llavors volia desar i recuperar missatges.

Hi va haver moltes proves i errors, però després d’unes hores de codificació vaig aconseguir que funcionés.

Encara intento trobar-ne un ús pràctic !!:-)

Pas 1: la pantalla

La pantalla
La pantalla
La pantalla
La pantalla

Com s'ha esmentat anteriorment, la pantalla es connecta d'esquerra a dreta en lloc de dalt a baix.

Estic segur que s’hauria pogut modificar un altre codi per compensar-ho.

No recordo d'on he descarregat el codi de treball, però, pot ser útil la cerca de "matriu cosmicvoid o LedControlMS.h". La llibreta LedControlMS.h és necessària per a aquest projecte.

L'única part d'aquest codi que vaig modificar va ser el nombre de pantalles, ja que sembla que estava establert en 5, simplement el vaig canviar a 4.

He demanat una altra pantalla x4 per poder veure com funciona amb 8 matrius en lloc de 4.

Pas 2: el bit Bluetooth

El bit Bluetooth
El bit Bluetooth

Cada vegada que jugo amb un dispositiu Bluetooth, sempre faig referència a aquest excel·lent instructiu.

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

Aquest manual d’instruccions us indicarà tot el que necessiteu saber com configurar i emparellar l’HC-05 amb un telèfon mòbil o una tauleta.

Em vaig emparellar amb un Samsung Galaxy 6 Edge i una pestanya A sense cap problema.

Vaig canviar la velocitat de comunicació a 57600.

Pas 3: Comunicació BT i el programa

BT Communication i el programa
BT Communication i el programa

Per comunicar-me amb l'HC-05 he descarregat una aplicació gratuïta de la Play Store, hi ha diverses disponibles, la que he triat es diu Bluetooth Terminal HC-05, és una aplicació excel·lent.

Un cop hàgiu emparellat l'HC-05 amb un telèfon o una tauleta, es produeix el següent.

Quan es restableix l'arduino, el programa llegeix tots els missatges emmagatzemats a l'EEPROM i els mostra al telèfon / tauleta; vegeu la imatge.

La informació que es mostra és la ubicació de memòria (0-9), la longitud del missatge i el propi missatge a cada ubicació.

He organitzat el codi per emmagatzemar fins a un missatge de 90 caràcters a l’adreça 5 per al missatge 0, 105 per al missatge 1 … 905 per al missatge 9.

Adreça 0, 100…. 900 contenen la longitud del missatge.

Es mostra l'últim missatge emmagatzemat / recuperat.

L’enviament de qualsevol cosa a l’Arduino mitjançant BT substitueix el missatge actual.

Per emmagatzemar el missatge mostrat (utilitzeu el títol "~"), envieu ~ 0 per emmagatzemar-lo a la ubicació 0, ~ 5 per emmagatzemar-lo a la ubicació 5, etc.

Per recuperar i mostrar un missatge emmagatzemat, utilitzeu "^" (quilates), per exemple, ^ 3 carregarà i mostrarà el missatge a la ubicació 3 de Mem.

Quan un missatge s’emmagatzema o es recupera, la ubicació actual de la memòria s’emmagatzema a l’adreça EEPROM 1023: s’utilitza en engegar per mostrar l’últim missatge mostrat.

Pas 4: el codi i la potència

Com és habitual, el meu codi és un dormitori per a adolescents, però tinc molts comentaris.

Pot haver-hi algun codi superflu, ja que hi havia una mica d’assaig i error.

La rutina de visualització mostrarà tot el que hi ha a la matriu msg . El tipus de lletra no està complet, de manera que mostrar alguns caràcters provocarà resultats imprevisibles.

Si algú per aquí em pogués dir com modificar el signe $ per al signe £ o millor afegir-lo, estaria molt agraït

Pot ser necessari codificar un missatge a la ubicació 0 només per donar un punt de partida, ja que es pot sobreescriure quan el programa estigui en funcionament.

per exemple

EEPROM.write (0, '5'); // longitud del msg emmagatzemat a la ubicació 0

EEPROM.write (5, 'L'); // msg emmagatzemat a la ubicació 05EEPROM.write (6, 'o');

EEPROM.write (7, 'c');

EEPROM.write (8, '');

EEPROM.write (9, '0');

Sense missatges emmagatzemats, en engegar-se, la pantalla serà imprevisible i el telèfon / tauleta mostrarà informació estranya però coherent, ja que, com passa amb la majoria de les EEPROM, les dades predeterminades a cada ubicació són FF Hex (225 Decimal).

Aquest prototip es va construir amb un Arduino Uno, però utilitzaré un mini pro per al projecte acabat.

Tinc la intenció d’utilitzar piles de 3 x 1,5 v, de manera que, per estalviar energia, apagaré l’HC-05 després de seleccionar un missatge. Només desconnectar / tornar a connectar l’alimentació no és prou bo, ja que enviarà informació desordenada a la pantalla.

Sembla necessari aïllar els pins TR & RX abans de connectar / desconnectar l'alimentació.

Pas 5: actualització de 2020: visualitzacions de matriu de 2 x 4 (8x8)

Després d’entendre millor el MAX7219, he aconseguit enllaçar 2 pantalles.

només hi havia un parell de línies de codi que necessitaven canviar; vegeu el document adjunt ino.

Recomanat: