Display 4x 7 segmentos sem codificador
/*
* Display 4x 7 segmentos sem codificador
* versao 1.0
* 14-07-2019
* pedroluand@gmail.com
ligação do display no ci 74hc164
_a_
f| |b
| -g- |
e |___|c
d
descrição dos pinos do display
14 13 12 11 10 09 08
. . . . . . .
display mod.ULH4RC
. . . . . . .
01 02 03 04 05 06 07
pino 01= GND1
pino 02= (seg. d)
pino 03= nc
pino 04= seg. e
pino 05= GND3
pino 06= seg. c
pino 07= seg. d
pino 08= seg. b
pino 09= GND4
pino 10= seg. g
pino 11= divisor de horas
pino 12= GND2
pino 13= seg. f
pino 14= seg. a
*/
#define refresh delay(6)
#define nada digitalWrite(6,LOW);digitalWrite(7,LOW);digitalWrite(8,LOW);digitalWrite(9,LOW);digitalWrite(10,LOW);digitalWrite(11,LOW);digitalWrite(12,LOW);
#define zero digitalWrite(6,HIGH);digitalWrite(7,HIGH);digitalWrite(8,HIGH);digitalWrite(9,HIGH);digitalWrite(10,LOW);digitalWrite(11,HIGH);digitalWrite(12,HIGH);
#define um digitalWrite(6,LOW);digitalWrite(7,LOW);digitalWrite(8,HIGH);digitalWrite(9,HIGH);digitalWrite(10,LOW);digitalWrite(11,LOW);digitalWrite(12,LOW);
#define dois digitalWrite(6,HIGH);digitalWrite(7,HIGH);digitalWrite(8,LOW);digitalWrite(9,HIGH);digitalWrite(10,HIGH);digitalWrite(11,LOW);digitalWrite(12,HIGH);
#define tres digitalWrite(6,HIGH);digitalWrite(7,LOW);digitalWrite(8,HIGH);digitalWrite(9,HIGH);digitalWrite(10,HIGH);digitalWrite(11,LOW);digitalWrite(12,HIGH);
#define quatro digitalWrite(6,LOW);digitalWrite(7,LOW);digitalWrite(8,HIGH);digitalWrite(9,HIGH);digitalWrite(10,HIGH);digitalWrite(11,HIGH);digitalWrite(12,LOW);
#define cinco digitalWrite(6,HIGH);digitalWrite(7,LOW);digitalWrite(8,HIGH);digitalWrite(9,LOW);digitalWrite(10,HIGH);digitalWrite(11,HIGH);digitalWrite(12,HIGH);
#define seis digitalWrite(6,HIGH);digitalWrite(7,HIGH);digitalWrite(8,HIGH);digitalWrite(9,LOW);digitalWrite(10,HIGH);digitalWrite(11,HIGH);digitalWrite(12,HIGH);
#define sete digitalWrite(6,LOW);digitalWrite(7,LOW);digitalWrite(8,HIGH);digitalWrite(9,HIGH);digitalWrite(10,LOW);digitalWrite(11,LOW);digitalWrite(12,HIGH);
#define oito digitalWrite(6,HIGH);digitalWrite(7,HIGH);digitalWrite(8,HIGH);digitalWrite(9,HIGH);digitalWrite(10,HIGH);digitalWrite(11,HIGH);digitalWrite(12,HIGH);
#define nove digitalWrite(6,HIGH);digitalWrite(7,LOW);digitalWrite(8,HIGH);digitalWrite(9,HIGH);digitalWrite(10,HIGH);digitalWrite(11,HIGH);digitalWrite(12,HIGH);
#define pos1 digitalWrite(2,LOW);digitalWrite(3,HIGH);digitalWrite(4,HIGH);digitalWrite(5,HIGH);
#define pos2 digitalWrite(2,HIGH);digitalWrite(3,LOW);digitalWrite(4,HIGH);digitalWrite(5,HIGH);
#define pos3 digitalWrite(2,HIGH);digitalWrite(3,HIGH);digitalWrite(4,LOW);digitalWrite(5,HIGH);
#define pos4 digitalWrite(2,HIGH);digitalWrite(3,HIGH);digitalWrite(4,HIGH);digitalWrite(5,LOW);
void setup()
{
Serial.begin(9600);
pinMode(2,OUTPUT); //pino 12 display (GND1)
pinMode(3,OUTPUT); //pino 9 display (GND2)
pinMode(4,OUTPUT); //pino 5 display (GND3)
pinMode(5,OUTPUT); //pino 1 display (GND4)
pinMode(6,OUTPUT); //pino 7 seg d
pinMode(7,OUTPUT); //pino 4 seg e
pinMode(8,OUTPUT); //pino 6 seg c
pinMode(9,OUTPUT); //pino 8 seg b
pinMode(10,OUTPUT);//pino 10 seg g
pinMode(11,OUTPUT);//pino 13 seg f
pinMode(12,OUTPUT);//pino 14 seg a
pinMode(13,INPUT_PULLUP);//entada de pulso
pinMode(A0,INPUT);
pinMode(A1,INPUT);
pinMode(A2,INPUT);
pinMode(A3,INPUT);
pinMode(A4,INPUT);
}
void loop()
{
pos4;
dois;
refresh;
pos3;
zero;
refresh;
pos2;
um;
refresh;
pos1;
nove;
refresh;
}
* Display 4x 7 segmentos sem codificador
* versao 1.0
* 14-07-2019
* pedroluand@gmail.com
ligação do display no ci 74hc164
_a_
f| |b
| -g- |
e |___|c
d
descrição dos pinos do display
14 13 12 11 10 09 08
. . . . . . .
display mod.ULH4RC
. . . . . . .
01 02 03 04 05 06 07
pino 01= GND1
pino 02= (seg. d)
pino 03= nc
pino 04= seg. e
pino 05= GND3
pino 06= seg. c
pino 07= seg. d
pino 08= seg. b
pino 09= GND4
pino 10= seg. g
pino 11= divisor de horas
pino 12= GND2
pino 13= seg. f
pino 14= seg. a
*/
#define refresh delay(6)
#define nada digitalWrite(6,LOW);digitalWrite(7,LOW);digitalWrite(8,LOW);digitalWrite(9,LOW);digitalWrite(10,LOW);digitalWrite(11,LOW);digitalWrite(12,LOW);
#define zero digitalWrite(6,HIGH);digitalWrite(7,HIGH);digitalWrite(8,HIGH);digitalWrite(9,HIGH);digitalWrite(10,LOW);digitalWrite(11,HIGH);digitalWrite(12,HIGH);
#define um digitalWrite(6,LOW);digitalWrite(7,LOW);digitalWrite(8,HIGH);digitalWrite(9,HIGH);digitalWrite(10,LOW);digitalWrite(11,LOW);digitalWrite(12,LOW);
#define dois digitalWrite(6,HIGH);digitalWrite(7,HIGH);digitalWrite(8,LOW);digitalWrite(9,HIGH);digitalWrite(10,HIGH);digitalWrite(11,LOW);digitalWrite(12,HIGH);
#define tres digitalWrite(6,HIGH);digitalWrite(7,LOW);digitalWrite(8,HIGH);digitalWrite(9,HIGH);digitalWrite(10,HIGH);digitalWrite(11,LOW);digitalWrite(12,HIGH);
#define quatro digitalWrite(6,LOW);digitalWrite(7,LOW);digitalWrite(8,HIGH);digitalWrite(9,HIGH);digitalWrite(10,HIGH);digitalWrite(11,HIGH);digitalWrite(12,LOW);
#define cinco digitalWrite(6,HIGH);digitalWrite(7,LOW);digitalWrite(8,HIGH);digitalWrite(9,LOW);digitalWrite(10,HIGH);digitalWrite(11,HIGH);digitalWrite(12,HIGH);
#define seis digitalWrite(6,HIGH);digitalWrite(7,HIGH);digitalWrite(8,HIGH);digitalWrite(9,LOW);digitalWrite(10,HIGH);digitalWrite(11,HIGH);digitalWrite(12,HIGH);
#define sete digitalWrite(6,LOW);digitalWrite(7,LOW);digitalWrite(8,HIGH);digitalWrite(9,HIGH);digitalWrite(10,LOW);digitalWrite(11,LOW);digitalWrite(12,HIGH);
#define oito digitalWrite(6,HIGH);digitalWrite(7,HIGH);digitalWrite(8,HIGH);digitalWrite(9,HIGH);digitalWrite(10,HIGH);digitalWrite(11,HIGH);digitalWrite(12,HIGH);
#define nove digitalWrite(6,HIGH);digitalWrite(7,LOW);digitalWrite(8,HIGH);digitalWrite(9,HIGH);digitalWrite(10,HIGH);digitalWrite(11,HIGH);digitalWrite(12,HIGH);
#define pos1 digitalWrite(2,LOW);digitalWrite(3,HIGH);digitalWrite(4,HIGH);digitalWrite(5,HIGH);
#define pos2 digitalWrite(2,HIGH);digitalWrite(3,LOW);digitalWrite(4,HIGH);digitalWrite(5,HIGH);
#define pos3 digitalWrite(2,HIGH);digitalWrite(3,HIGH);digitalWrite(4,LOW);digitalWrite(5,HIGH);
#define pos4 digitalWrite(2,HIGH);digitalWrite(3,HIGH);digitalWrite(4,HIGH);digitalWrite(5,LOW);
void setup()
{
Serial.begin(9600);
pinMode(2,OUTPUT); //pino 12 display (GND1)
pinMode(3,OUTPUT); //pino 9 display (GND2)
pinMode(4,OUTPUT); //pino 5 display (GND3)
pinMode(5,OUTPUT); //pino 1 display (GND4)
pinMode(6,OUTPUT); //pino 7 seg d
pinMode(7,OUTPUT); //pino 4 seg e
pinMode(8,OUTPUT); //pino 6 seg c
pinMode(9,OUTPUT); //pino 8 seg b
pinMode(10,OUTPUT);//pino 10 seg g
pinMode(11,OUTPUT);//pino 13 seg f
pinMode(12,OUTPUT);//pino 14 seg a
pinMode(13,INPUT_PULLUP);//entada de pulso
pinMode(A0,INPUT);
pinMode(A1,INPUT);
pinMode(A2,INPUT);
pinMode(A3,INPUT);
pinMode(A4,INPUT);
}
void loop()
{
pos4;
dois;
refresh;
pos3;
zero;
refresh;
pos2;
um;
refresh;
pos1;
nove;
refresh;
}
Comentários
Postar um comentário