Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Display y Manejo de Display Con Potenciometro
Display y Manejo de Display Con Potenciometro
DE ZAMORA
Ing. Electrónica
MICROCONTROLADORES
Integrantes:
Luis David Ramírez Pérez
Diego Isaac Pacheco Lázaro
8 de abril de 2022
INTRODUCCION
En esta practica implementaremos el uso de un display de 7 segmentos de ánodo
común esto lo usaremos como método de visualización de la salida o resultado
esperado.
OBJETIVO
Aprender a manipular un display de 7 segmentos de ánodo común, con este una
vez aprendido como usarlo haremos un segundero que valla de 0 a 9; también
aprenderemos a manipular rangos de voltaje y verlos en el display que seria de 0
a 9.
MATERIAL
• ATMEGA16
• Protoboard
• 7 resistencias
• Cables
• Programador ISP-ASP
• Potenciómetro
• Display de 7 segmentos AC
EQUIPO
• Computadora
• Programa Code Vision
• Programa AVR Burn-O-Mat
DESARROLLO
DISPLAY
Abrimos el programa de code vision, seleccionamos nuevo proyecto y escogemos
el tipo de microcontrolador (ATMEGA16) y en la pestaña de puertos habilitamos
las salidas D.
Guardamos los 3 archivos con el mismo nombre y recordar la ruta de guardado.
En la pantalla siguiente empezaremos a programar y para esto tendremos que
declarar algunas variables y lo dejaremos de esta manera:
#include <mega16.h>
#include <delay.h>
unsigned char x;
const unsigned char display
[10]={0XC0,0XF9,0XA4,0XB0,0X99,0X92,0X82,0XF8,0X80,0X98};
con estas líneas lo que hacemos es crear una variable llamada X y una tabla
llamada display para saber que va a pasar cada segundo al momento de cambiar
la tabla debemos entender como funciona un display, en la siguiente imagen lo
veremos;
#include <mega16a.h>
#include <delay.h>
unsigned char X;
// Voltage Reference: AVCC pin
#define ADC_VREF_TYPE 0x60
Ahora bajamos hasta el while, y escribiremos:
X=read_adc(0);
if ((X>=0)&&(X<25))
{
PORTD=0X40;
}
if ((X>=26)&&(X<50))
{
PORTD=0X79;
}
if ((X>=51)&&(X<75))
{
PORTD=0XA4;
}
if ((X>=76)&&(X<100))
{
PORTD=0XB0;
}
if ((X>=101)&&(X<125))
{
PORTD=0X99;
}
if ((X>=126)&&(X<150))
{
PORTD=0X92;
}
if ((X>=151)&&(X<175))
{
PORTD=0X82;
}
if ((X>=176)&&(X<200))
{
PORTD=0X78;
}
if ((X>=201)&&(X<225))
{
PORTD=0X80;
}
if ((X>=226)&&(X<255))
{
PORTD=0X98;
}
Con estas líneas el micro podrá leer el rango de voltaje del potenciómetro y lo
podremos apreciar como el display cambia del 0 al 9 dependiendo que voltaje
mande el potenciómetro.
Para armar nuestro circuito colocamos nuestro microcontrolador en la protoboard y
ubicamos las 8 salidas del puerto D