jueves, 31 de marzo de 2016

Conexion Display 7 segmentos

CONEXIÓN DE DISPLAY DE 7 SEGMENTOS

Esta publicación muestra la conexión básica de un decodificador para display de 7 segmentos, tanto para Arduino como Pinguino.
En la siguiente figura se muestra la distribución de terminales de un display de 7 segmentos de cátodo común, el de ánodo común tendrá el terminal central conectado a VCC (5V)

Display de 7 segmentos
 

CONEXIÓN A UN DISPLAY DE CÁTODO COMÚN

Un display de cátodo común tiene su terminal común a tierra (GND).
La conexión aquí mostrada emplea un decodificador BCD para display de 7 segmentos de cátodo común con el circuito integrado cd4511 siendo equivalente también el 74HC48.
El montaje y simulación de este circuito se realizo con la herramienta 123D Circuits al final de este articulo esta el enlace respectivo.

 
Conexión con el cd4511

CONEXIÓN A UN DISPLAY DE ÁNODO COMÚN

Un display de ánodo común tiene su terminal común a VCC (5V).
La conexión aquí mostrada emplea un decodificador BCD para display de 7 segmentos de cátodo común con el circuito integrado 7447.


Conexión Arduino con el 7447

Conexión Pinguino 7447

 

CÓDIGO DE EJEMPLO 1

El siguiente programa emplea escritura directa al puerto D de la tarjeta Arduino con la instrucción PORTD. 
Este programa consiste en un contador cíclico de 0 a 9 incrementando la variable contadora i y asignando su valor al puerto D del microcontroaldor.
char i=0;
void setup(){
 DDRD=B11111111;
}
void loop(){
  PORTD=i;
  delay(1000);
  i++;
  if(i>9)
    i=0;  
}


CÓDIGO DE EJEMPLO 2

El siguiente programa emplea escritura directa al puerto B de la tarjeta Pinguino con la instrucción PORTB. 
Este programa consiste en un contador cíclico de 0 a 9 incrementando la variable contadora i y asignando su valor al puerto B del microcontroaldor.
char i=0;
void setup(){
 TRISB=0;
}
void loop(){
  PORTB=i;
  delay(1000);
  i++;
  if(i>9)
    i=0;  
}

CÓDIGO DE EJEMPLO 3

El siguiente programa visualiza en numero 5 en el display empleando programación tradicional que es compatible tanto para Arduino y Pinguino
void setup(){
 pinMode(0,OUTPUT);

 pinMode(1,OUTPUT);
 pinMode(2,OUTPUT);
 pinMode(3,OUTPUT);
}
void loop(){
 digitalWrite(0,HIGH);

 digitalWrite(1,LOW);
 digitalWrite(2,HIGH);
 digitalWrite(3,LOW);

}

ENLACES DE CONSULTA 

sábado, 12 de marzo de 2016

Pantalla LCD

Montaje Pantalla LCD 16x2 En 123D Circuits 

Los siguientes enlaces muestran el montaje y el código empleado en la simulación sobre el manejo de una pantalla LCD.

LCD con Servo  



Programa de ejemplo LCD con Servo

Este programa incrementa la posición del servo motor incrementando un grado cada vez que se presiona el pulsador que esta mas a la derecha.
En la pantalla se muestra la posicion en grados del servo motor.
 
LiquidCrystal lcd(7, 6, 5, 4, 3, 2);//(RS ENABLE D4 D5 D6 D7)
Servo servo01;
int PosServo01=0;
int PinPulsador01=8;
int PinServo01=12;
void setup() {
  pinMode(PinPulsador01,INPUT);
  lcd.begin(16, 2);//Pantalla de 16 columnas por dos filas
  servo01.attach(PinServo01);
  lcd.print("Control servo");
}
void loop(){
   if(digitalRead(PinPulsador01)==LOW){
    PosServo01=PosServo01+1;
    delay(10);
    lcd.clear();
    lcd.setCursor(0,0);
    lcd.print("Posicion Servo");
    lcd.setCursor(0,1);
    lcd.print(PosServo01);
    lcd.print(" Grados"); 
   }
  servo01.write(PosServo01);
}

Enlace a los circuitos en 123D Circuits 

Los siguientes enlaces muestran diferentes circuitos básicos empleando la pantalla LCD.