Taula de continguts:
- Pas 1:
- Pas 2:
- Pas 3: Introducció: maquinari
- Pas 4: Introducció: programari
- Pas 5: els LED bicolors
- Pas 6: pantalla de 7 segments
- Pas 7:
- Pas 8:
- Pas 9:
- Pas 10: els botons
Vídeo: Mòduls de pantalla LED Arduino i TM1638: 11 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:13
Si necessiteu una manera ràpida i senzilla d’afegir entrades i sortides d’usuari a un projecte, aquests mòduls de visualització són interessants i divertits.
Contenen vuit dígits de LED vermell de 7 segments, vuit LEDs de color vermell / verd i també vuit botons per a l’entrada de l’usuari. Les unitats també es poden encadenar, permetent fins a cinc alhora, i s'inclou un cable curt amb cada mòdul, a més d'alguns espaciadors i perns curts, com es mostra a la imatge.
Pas 1:
Els espaiadors són prou llargs per elevar el PCB per sobre d’una superfície, tot i que per muntar les taules a qualsevol lloc que us sigui útil en necessitareu de més llargues. És possible que també vulgueu eliminar els endolls IDC si voleu muntar el mòdul a prop de la superfície d'un tauler. Aquesta seria una tasca senzilla de desoldar, ja que són endolls passants.
Pas 2:
La placa està controlada per un IC TM1638.
Es tracta d'un circuit controlador de LED i interfície de "Titan Micro Electronics". També podeu comprar aquests CI a PMD Way. També podeu descarregar el full de dades per obtenir més informació.
Pas 3: Introducció: maquinari
Maquinari: la connexió a una placa compatible amb Arduino (o a una altra MCU) és bastant senzilla. Els pinouts es mostren a la part posterior del PCB i coincideixen amb l’adaptació del cable de cinta. Si mireu l’extrem del cable com a tal.
El forat superior dret és el pin 1, sent el pin superior esquerre el pin 2, el pin inferior dret nou i el pin inferior esquerre deu. Per tant, els pinouts són:
- Vcc (5 V)
- GND
- CLK
- DIO
- STB1
- STB2
- STB3
- STB4
- STB5
- no connectat.
Per a l'ús d'Arduino, els pins 1 ~ 4 són els mínims necessaris per utilitzar un mòdul. Cada mòdul addicional necessitarà un altre pin digital connectat a STB2, STB3, etc. Més informació sobre això més endavant. Tingueu en compte que cada mòdul configurat a la lluminositat màxima amb cada LED encès consumeix 127 mA, de manera que seria aconsellable utilitzar alimentació externa amb més d’un mòdul i altres connexions amb plaques Arduino.
Pas 4: Introducció: programari
Programari: descarregueu i instal·leu la biblioteca T1638 des d’aquí. Gràcies i felicitacions a rjbatista a gmail dot com per la biblioteca. La inicialització de mòduls a l’esbós és senzilla. Incloeu la biblioteca amb:
#incloure
a continuació, utilitzeu un dels següents per a cada mòdul:
Mòdul TM1638 (x, y, z);
x és el pin digital Arduino connectat al pin del cable del mòdul 4, y és el pin digital Arduino connectat al pin del cable del mòdul 3 i z és el pin estroboscòpic. Per tant, si teniu un mòdul amb dades, rellotge i estroboscòpic connectats als pins 8, 7 i 6, utilitzeu:
Mòdul TM1638 (8, 7, 6);
Si teníeu dos mòduls, amb un estroboscòpic del mòdul primer connectat a Arduino digital 6 i un estroboscòpic del mòdul dos connectat al digital 5, utilitzeu:
Mòdul TM1638 (8, 7, 6); mòdul TM1638 (8, 7, 5);
i així successivament per obtenir més mòduls. Ara per controlar la pantalla …
Pas 5: els LED bicolors
Controlar els LEDs vermells / verds és fàcil. Com a referència, es numeren de zero a set d’esquerra a dreta. Per activar o apagar un LED únic, utilitzeu el següent:
module.setLED (TM1638_COLOR_RED, x); // Estableix el número LED x en redmodule.setLED (TM1638_COLOR_GREEN, x); // Estableix el número LED de color verd en module.setLED (TM1638_COLOR_RED + TM1638_COLOR_GREEN, 0); // Estableix el LED número x en vermell i verd
Utilitzar el mètode anterior pot ser senzill, és una mica ineficient. Una manera millor és abordar tots els LEDs en una sola declaració. Per fer-ho, enviem a la pantalla dos bytes de dades en hexadecimal. El MSB (byte més significatiu) consta de vuit bits, cadascun dels quals representa un LED verd encès (1) o apagat (0). El LSB (byte menys significatiu) representa els LED vermells.
Una manera senzilla de determinar el valor hexadecimal per controlar els LED és senzilla, ja que teniu una fila de LED: els primers vuit són de color verd i els segons vuit són de color vermell. Establiu cada dígit en 1 per a activat i 0 per a desactivat. Converteix els dos nombres binaris a hexadecimal i utilitza aquesta funció:
module.setLEDs (0xgreenred);
On el verd és el nombre hexadecimal dels LED verds i el vermell és el nombre hexadecimal dels LED vermells. Per exemple, per activar els tres primers LED en vermell i els tres últims en verd, la representació binària serà:
00000111 11100000 que en hexadecimal és E007.
Per tant, utilitzaríem:
module.setLEDs (0xE007);
que produeix la imatge tal com es mostra més amunt.
Pas 6: pantalla de 7 segments
Per esborrar la pantalla numèrica (però no els LED de sota), simplement utilitzeu:
module.clearDisplay ();
o per encendre tots els segments I tots els LED, utilitzeu el següent
module.setupDisplay (true, 7); // on 7 és intensitat (de 0 a 7)
Per mostrar números decimals, utilitzeu la funció:
module.setDisplayToDecNumber (a, b, fals);
on a és l’enter, b és la posició del punt decimal (0 per a cap, 1 per al dígit 8, 2, per al dígit 7, 4 per al dígit 6, 8 per al dígit 4, etc.) i l’últim paràmetre (veritable / false) activa o desactiva els zeros inicials. El següent esbós mostra l’ús d’aquesta funció:
#include // defineix un mòdul al pin de dades 8, al pin de rellotge 9 i al pin estroboscòpic 7 del mòdul TM1638 (8, 9, 7); sense signar llarg a = 1; void setup () {} void loop () {for (a = 10000; a <11000; a ++) {module.setDisplayToDecNumber (a, 4, false); retard (1); } per a (a = 10000; a <11000; a ++) {module.setDisplayToDecNumber (a, 0, true); retard (1); }}
… amb els resultats que es mostren al vídeo.
Pas 7:
Una de les funcions més interessants és la possibilitat de desplaçar text per una o més pantalles. Per fer-ho, en realitat no necessiteu cap explicació, ja que l’esbós de demostració inclòs:
tm_1638_scrolling_modules_example.pde
inclòs amb la biblioteca TM1638 és fàcil de seguir. Només cal que inseriu el text a la cadena const char , assegureu-vos que els mòduls estiguin connectats segons la definició del mòdul al començament de l’esbós i que estigueu configurat. Per veure els caràcters disponibles, visiteu la pàgina de funcions. Tingueu en compte que la pantalla només té set segments, de manera que és possible que alguns personatges no semblin perfectes, però en context us donarà una bona idea; consulteu el vídeo en aquest pas.
Pas 8:
Finalment, també podeu dirigir-vos individualment a cada segment de cada dígit. Penseu en el contingut d'aquesta matriu:
valors de bytes = {1, 2, 4, 8, 16, 32, 64, 128};
cada element representa els dígits 1 ~ 8. El valor de cada element determina quin segment del dígit s'activa. Per als segments a ~ f, dp els valors són 1, 2, 4, 6, 16, 32, 64, 128. Així doncs, els resultats d'utilitzar la matriu anterior en la funció següent:
module.setDisplay (valors);
serà segons la imatge.
Pas 9:
Naturalment, podeu combinar valors per a cada dígit per crear els vostres propis caràcters, símbols, etc. Per exemple, utilitzant els valors següents:
valors de bytes = {99, 99, 99, 99, 99, 99, 99, 99};
hem creat segons la imatge en aquest pas.
Pas 10: els botons
Els valors dels botons es retornen com a valor de byte de la funció:
module.getButtons ();
Com que hi ha vuit botons, cadascun representa un bit d'un número binari que es retorna com un byte. El botó de l'esquerra retorna un decimal i el dret de 128. També pot retornar premudes simultànies, de manera que si premeu els botons un i vuit es tornen 129. Considereu l'esbós següent, que retorna els valors del botó que premeu en forma decimal, i després es mostra el valor:
#include // defineix un mòdul al pin de dades 8, al pin de rellotge 9 i al pin estroboscòpic 7 del mòdul TM1638 (8, 9, 7); botons de bytes; void setup () {} void loop () {botons = module.getButtons (); module.setDisplayToDecNumber (botons, 0, fals); }
i els resultats del vídeo.
Aquests taulers de visualització són útils i esperem que trobin una llar als vostres projectes. Aquest article us el proporciona pmdway.com: ofereix tot per a fabricants i aficionats a l'electrònica, amb lliurament gratuït a tot el món.
Recomanat:
Rellotge intel·ligent DIY Fitness Tracker amb oxímetre i freqüència cardíaca - Mòduls electrònics modulars de TinyCircuits - Arcade més petit: 6 passos
Rellotge intel·ligent DIY Fitness Tracker amb oxímetre i freqüència cardíaca | Mòduls electrònics modulars de TinyCircuits | Arcade més petit: Ei, què passa, nois! Akarsh aquí des de CETech. Avui tenim amb nosaltres alguns dels mòduls de sensors que són molt útils en el nostre dia a dia, però en una petita versió d’ells mateixos. Els sensors que tenim avui en dia tenen una mida molt petita en comparació amb els tra
Unitat de control ArDrone 2.0 Quadcopter en mòduls MPU6050 i ESP8266: 7 passos
Unitat de control ArDrone 2.0 Quadcopter al mòdul MPU6050 i ESP8266: la mida, el preu i la disponibilitat de Wi-Fi us permeten fer una unitat de control pressupostari per al quadrocopter ArDrone 2.0 del mòdul ESP8266 (preus a AliExpress, Gearbest). Per al control, utilitzarem el mòdul Gy-521 al xip MPU6050 (giroscopi, acc
Cool Lighting for Fre (mòduls LED): 9 passos
Cool Lighting for Fre (mòduls LED): en aquest instructiu he fabricat petites llums LED per a alguns efectes d’il·luminació agradables, he utilitzat bateries reciclades perquè era gratuïta, però es pot utilitzar la bateria que vulgui
Ús de mòduls de rellotge en temps real DS1307 i DS3231 amb Arduino: 3 passos
Ús de mòduls de rellotge en temps real DS1307 i DS3231 amb Arduino: continuem rebent sol·licituds sobre com utilitzar mòduls de rellotge en temps real DS1307 i DS3231 amb Arduino de diverses fonts, de manera que aquest és el primer d’un tutorial de dues parts sobre com utilitzar-los. Per a aquest tutorial d'Arduino, tenim dos mòduls de rellotge en temps real
Creeu el vostre primer IOT mitjançant Arduino sense mòduls addicionals: 5 passos (amb imatges)
Construïu el vostre primer IOT utilitzant Arduino sense mòduls addicionals: el món es fa cada dia més intel·ligent i la raó més important d’aquest fet és l’evolució de la tecnologia intel·ligent. Com a entusiasta de la tecnologia, heu d’haver sentit a parlar del terme IOT que significa Internet de les coses. Internet de les coses significa controlar i alimentar el