Está en la página 1de 12

CIRCUITOS ELECTRÓNICOS

DOCENTE: ABRAHAM MALDONADO GARCÍA

INTEGRANTES:
OZNI GABRIEL PEREZ ALONSO
// 202072928
VERÓNICA VIVIANA MELÉNDEZ RODRÍGUEZ
// 202046493
JOSHUA JOFIEL VIRAMONTES CONTRERAS
// 202061637
VICTOR MANUELMARTÍNEZ CRUZ
// 202045499
DISPLAY 7 SEGMENTOS
OBJETIVO:
El objetivo es aprender a
utilizar este tipo de componente
electrónico y comprender su
funcionamiento. El display de 7
segmentos se utiliza
comúnmente para mostrar
números en dispositivos
electrónicos como calculadoras,
relojes, termostatos, entre otros.
¿QUÉ ES UN DISPLAY 7
SEGMENTOS?
Un display de 7 segmentos es un componente
electrónico que se utiliza para mostrar números y
algunas letras. Consiste en siete segmentos LED o LCD
que se pueden encender o apagar individualmente para
formar los dígitos del 0 al 9 y algunas letras como A, B, C,
D, E, F.

Los siete segmentos se organizan en una forma


específica para que cada uno represente una parte del
dígito. Por ejemplo, el segmento superior representa la
parte superior del número o letra, mientras que el
segmento inferior representa la parte inferior.
MATERIALES:
 Protoboard: Es una herramienta simple
que se usa en proyectos de robótica que
permite conectar fácilmente componentes
electrónicos entre sí, sin necesidad de
realizar una soldadura. Puede llamarse
también breadboard o placa de pruebas
 El Arduino Uno es una placa de
microcontrolador de código abierto
basado en el microchip. La placa está
equipada con conjuntos de pines de E/S
digitales y analógicas que pueden
conectarse a varias placas de expansión y
otros circuitos.
MATERIALES:
 El display 7 Segmentos es un dispositivo opto-electrónico que
permite visualizar números del 0 al 9. Existen dos tipos de
display, de cátodo común y de ánodo común. Este tipo de
elemento de salida digital o display, se utilizaba en los primeros
dispositivos electrónicos de la década de los 70's y 80's. Hoy en
día es muy utilizado en proyectos educativos o en sistemas
vintage.
 Resistencia: Se denomina resistencia o resistor al componente
electrónico diseñado para introducir una resistencia eléctrica
determinada entre dos puntos de un circuito eléctrico.
 Cables o alambres de calibre delgado con conectores tipo
dupont en sus extremos, diseñados para conectarse en la
mayoría de conectores tipo header o tiras de pines estándar de
0.1 pulgadas o 2.54 mm de espaciado.
FUNCIONAMIENTO:
CÓDIGO:
// Y encendemos los
// definimos los 7 segmentos y los
segmentos.
asignamos a los pines
void loop() {
int A = 2; digitalWrite(A, HIGH);
digitalWrite(A, HIGH);
int B = 3; digitalWrite(B, HIGH);
delay(300);
int C = 4; digitalWrite(D, LOW); digitalWrite(C, HIGH);
digitalWrite(A, LOW);
int D = 5; delay(300); digitalWrite(D, HIGH);
delay(300);
int E = 6; digitalWrite(E, HIGH);
int F = 7;
digitalWrite(B, HIGH); digitalWrite(E, HIGH);
delay(300); delay(300);
int G = 8; digitalWrite(F, HIGH);
digitalWrite(B, LOW); digitalWrite(E, LOW);
int Dp = 9; delay(300); digitalWrite(G, HIGH);
delay(300);
digitalWrite(F, HIGH); delay(600);
digitalWrite(C, HIGH);
// Configuramos los pines. delay(300); digitalWrite(A, LOW);
delay(300);
void setup() { digitalWrite(F, LOW); digitalWrite(B, LOW);
digitalWrite(C, LOW);
pinMode (A, OUTPUT); delay(300); digitalWrite(C, LOW);
delay(300);
pinMode (B, OUTPUT); digitalWrite(G, HIGH);
pinMode (C, OUTPUT);
digitalWrite(D, HIGH); digitalWrite(D, LOW);
delay(300); delay(300);
pinMode (D, OUTPUT); digitalWrite(E, LOW);
digitalWrite(G, LOW);
pinMode (E, OUTPUT); delay(300); digitalWrite(F, LOW);
pinMode (G, OUTPUT); digitalWrite(Dp, HIGH); digitalWrite(G, LOW);
pinMode (F, OUTPUT); delay(300); delay(600);
pinMode (Dp, OUTPUT); digitalWrite(Dp, LOW); }
} delay(600);
FUNCIONAMIENTO:
CÓDIGO:
// Pines digitales usados Arduino para
// encender
// Doble Didplay siete-segmentos LED con botones // los correspondientes segmentos LED
// del display
// Common Catode digit 1 pin 10 // Composición de los digitos en Segmentos #define A 2
// Common Catode digit 2 pin 5 // 0 => -FEDCBA #define B 3
// // 1 => ----BC- #define C 4
// // 2 => G-ED-BA #define D 5
// Utiliza 2202 bytes con Arduino v0013 // 3 => G--DCBA #define E 6
// 4 => GF--CB- #define F 7
// CA1 G F A B // 5 => GF-DC-A #define G 8
// | | | | | | -> pines y segmentos de control // 6 => GFEDC-A
// --------- --------- // 7 => ----CBA // Pulsadoes boton conectados a pines 9
// | A | | A | // 8 => GFEDCBA y 10
// F| |B F| |B // 9 => GF-DCBA #define BTN1 14
// |---G---| |---G---| #define BTN2 15
// E| |C E| |C #define led 13
// | D | | D | // Pines comunes de cada display de
// --------- --------- anodo comun
// | | | | | | -> pines y segmentos de control #define CA1 9
// D DP E C CA2 #define CA2 10
CÓDIGO:
void loop()
int digit1 = 0;
{
int digit2 = 0;
// Pines para A B C D E F G, en secuencia // chequea boton1. Incrementa
// se pueden usar los que más interesen int val1 = digitalRead(BTN1);
void setup()
const int segs[7] = { 2, 3, 4, 5, 6, 7, 8 }; if (val1 == LOW)
{
{
pinMode(A, OUTPUT);
// Segmentos que componen cada número if (digit2 >= 9 && digit1 >= 9)
pinMode(B, OUTPUT);
// Para CC. {
pinMode(C, OUTPUT);
const byte numbers[10] = { 0b0111111, 0b0000110, digit2 = 0;
pinMode(D, OUTPUT);
0b1011011, 0b1001111, 0b1100110, digit1++;
pinMode(E, OUTPUT);
0b1101101, 0b1111101, 0b0000111, 0b1111111, digit1 %= 10;
pinMode(F, OUTPUT);
0b1101111}; if (digit1 >=9)
pinMode(G, OUTPUT);
// Para CA. descomentar las 2 líneas que siguen. {
pinMode(BTN1, INPUT);
// const byte numbers[10] = { 0b1000000, digit2++;
pinMode(BTN2, INPUT);
0b1111001, 0b0100100, 0b0110000, 0b0011001, }
digitalWrite(BTN1, HIGH); // activa RPA
0b0010010, } else if (digit1 >= 9)
digitalWrite(BTN2, HIGH); // activa RPA
// 0b0000010, 0b1111000, 0b0000000, {
pinMode(CA1, OUTPUT);
0b0010000}; digit2++;
pinMode(CA2, OUTPUT);
digit2 %= 10;
pinMode(led, OUTPUT);
}
digit1++;
// digit1 = 9; digit2 = 9;
digit1 %= 10;
delay(10);
}
}
CÓDIGO:
// cheque boton2. Decrementa
int val2 = digitalRead(BTN2);
if (val2 == LOW)
{
if (digit1 >= 0) // display numero void lightDigit2(byte number)
{ {
unsigned long startTime = millis();
if (digit1 < 0)
{ for (unsigned long elapsed=0; elapsed < digitalWrite(CA1, HIGH);
digit1 = 0; 300; elapsed = millis() - startTime) digitalWrite(CA2, LOW);
} { lightSegments(number);
digit1--; lightDigit1(numbers[digit1]); }
} delay(5);
if(digit1 < 0) void lightSegments(byte number)
lightDigit2(numbers[digit2]);
{
digit1 = 9; delay(5); {
if (digit2 < 0) } for (int i = 0; i < 7; i++)
{ } {
digit2 = 0; int bit = bitRead(number, i);
} void lightDigit1(byte number) digitalWrite(segs[i], bit);
digit2--; }
{
}
if (digit2 < 0) digitalWrite(CA1, LOW); }
{ digitalWrite(CA2, HIGH);
digit2 = 9; lightSegments(number);
} }
}

También podría gustarte