Utilizando la libreria SevenSeg pude configurar un display de 7 seg con 4 digitos, el tema es que ahora necesito agregar otro display de 4 digitos, es posible esto??
Configure el primero de esta forma:
SevenSeg disp(2,3,4,5,6,7,8);
const int numOfDigits = 4;
int digitPins [numOfDigits] = {10,9,12,11};
void setup() {
disp.setDigitPins(numOfDigits , digitPins);
Como puedo agregar otro display con esta libreria?? saludos.
const int numOfDigits = 4; ahi dice que usarás 4 displays de 7 segmentos.
Los displays estan multiplexados, entiendes que es eso?
Todos comparten los segmentos 2 al 8
y hay 4 transistores o salidas del arduino que prenden el elemento común del display usando 10 9 12 o 11 tal como lo definiste en digitPins.
surbyte tengo 2 display de 7 seg con 4 digitos cada uno y si están multiplexados. Con las líneas de codigo que escribi me anda perfecto "un" display con sus 4 digitos.
Lo que quiero es saber si es posible agregar otro display de 7 seg con 4 digitos, son estos:
El pedazito de codigo que subi me anda muy bien, solo quiero saber mediante programacion como hago para configurar un segundo display de 4 digitos.
Ahhh te malentendí.
No podrás.
Deberias usas MAX7219 para que cada MAX7219 comando hasta 8 digitos si quieres.
Con un UNO no te da.
Un mega/DUE si.
Te faltarán pines con el UNO.
Voy a intentar ser mas claro, no tengo problemas ni con el arduino (tengo un MEGA) no tengo problemas en I/O ni nada por el estilo. Lo unico que quiero saber es como manejar con esa libreria mas de un display por ej para definir el primer display utilizo:
SevenSeg disp(2,3,4,5,6,7,8);
const int numOfDigits = 4;
int digitPins [numOfDigits] = {10,9,12,11};
eso es para el primero, la pregunta es como hago con la libreria SevengSeg para agregar otro display, por ejemplo puedo escribir :
Y porque no lo pruebas? Crea otra instancia de la variable con otro nombre ,como dices, y usando otros pines.lo peor que te puede pasar es que no funcione....
makly77:
Voy a intentar ser mas claro, no tengo problemas ni con el arduino (tengo un MEGA) no tengo problemas en I/O ni nada por el estilo. Lo unico que quiero saber es como manejar con esa libreria mas de un display por ej para definir el primer display utilizo:
SevenSeg disp(2,3,4,5,6,7,8);
const int numOfDigits = 4;
int digitPins [numOfDigits] = {10,9,12,11};
eso es para el primero, la pregunta es como hago con la libreria SevengSeg para agregar otro display, por ejemplo puedo escribir :
SevenSeg disp2(.........)??????
se entiende lo que digo?? gracias surbyte.
Y digo porque no agregaste en tu post#1 que estas usando un MEGA?
Estuve mirando la documentación y no creo que sea posible sin trabajar algo con los timers.
Considera que todo esta previsto para multiplexar hasta 9 digitos según veo en la versión 1.2 y eso lleva tiempo y recursos. Agregar un segundo objeto requiere de una ISR que se encargue del refrezco.
Te estaba por escribir que probaras como jose pero ahora tengo dudas y me inclino a pensar que no va a funcionar. Sigo pensando que el MAX7219 es mejor alternativa y mas simple. Mejor brilo. Mas control de lo que quieres hacer y lo mejor, menos uso de pines y por ende mas prolijo todo el trabajo final.
no tiene sentido que diga que uso un arduino MEGA porque no tengo problema en cantidad de I/O, y ademas no es esa la intencion de mi post, yo pregunte otra cosa.
Bueno de todas maneras pude agregar otro display de 4 digitos con la libreria SevengSeg agregue lineas para el segundo display de la misma forma que para el primer display quedando algo asi:
SevenSeg disp2(22,23,24,25,26,27,28)
disp2.setDigitPins(numOfDigits, digitPins2)
de todas maneras voy a seguir trabajando, ahora debo agregar 2 display mas de 7 seg (1 digito), gracias igual por la ayuda surbyte.