Está en la página 1de 14

Universidad de Guadalajara

Centro Universitario de los Valles

Ingeniería en Instrumentación Electrónica y


Nanosensores

Reporte del proyecto:


2.3: Contador con display de siete segmentos
Presentado por:
Alan Ulises Bañuelos Ruvalcaba

Profesor
Hector Huerta Avila

Ameca, Jalisco, Febrero


Índice
1. Introducción...................................................................................................................1
1.1 Objetivos...............................................................................................................2
1.1.1 Requerimientos técnicos................................................................................2
2. Implementación..............................................................................................................3
3. Conclusiones..................................................................................................................7
Referencias.........................................................................................................................8
Resumen
Los puertos se utilizan como medio de comunicaciones con otros elementos en un
sistema embebido, incluyendo sensores, actuadores, convertidores, otros
microcontroladores, etc. También se utilizan como un medio de comunicación con el
usuario, cuando el proceso a desarrollar requiere de la implementación de las llamadas
interfaces de usuario. Estos elementos son los que despliegan, a través de los puertos, la
información que requiere conocer el usuario en pantallas de diferentes tipos y adquieren la
información necesaria por medio de botones o teclados. Para mostrar información al
usuario, se pueden utilizar diferentes dispositivos, por ejemplo, LED, pantallas de siete
segmentos, matrices de LED, pantallas de LED, pantallas de cristal líquido y pantallas
táctiles, siendo los dos primeros los más sencillo de implementar.

En particular, las pantallas de siete segmentos, están compuestas de siete LED


interconectados, de tal manera que se pueden generar números y letras activando los
segmentos adecuados de la pantalla, una representación de la disposición de los segmentos
se puede ver en la figura 1, mientras que en la figura 2 se ilustra la forma en que aparecen
los números del 0 al 9. Los segmentos se denotan como A, B, C, D, E, F y G. En general, se
incluye un octavo LED para representar el punto decimal. Los LED se interconectan a
partir de la conexión en común de sus ánodos o cátodos, de donde se definen dos tipos de
pantallas, de cátodo común o de ánodo común. De esta manera, la terminal común de la
pantalla se debe conectar a un cero lógico y para activar cada uno de los segmentos, se
deberá utilizar un uno lógico. Por otro lado, en la pantalla de ánodo común, la terminal
común debe tener conectado un uno lógico y para activar los segmentos se debe colocar un
cero lógico. En las tablas 1 y 2, se pueden encontrar las combinaciones que se deben
utilizar para mostrar los números del 0 al 9, en pantallas de cátodo común y ánodo común,
respectivamente.

En esta práctica se utilizarán los puertos del PIC18F4550, para implementar contadores
binarios, el conteo se mostrará en forma decimal en pantallas de siete segmentos.
Índice de figuras.
Incluir un índice de las figuras utilizadas en el documento.

En la imagen de arriba podemos ver la distribución de pines para el PIC18F4550.


Fuente: hoja de datos del microcontrolador.
En la fotografía de abajo esta la tabla para la configuración de entradas analógicas y
digitales en el PIC18F4550.
Disposición de los LED en una pantalla de siete segmentos.

Combinaciones para mostrar los números del 0 al 9 en una pantalla de cátodo común.
Combinaciones para mostrar los números del 0 al 9 en una pantalla de ánodo común.
1

1. Introducción
En esta primera sección se debe incluir la descripción general del problema a resolver y
del proyecto, en este caso tendremos que realizar un contador ascendente de 0 a 99 con el
PIC18F4550 a continuación les mostraremos el objetivo, material y ejemplo de conexiones
para conseguir satisfactoriamente lo que es esta práctica a realiza

1.1Objetivos
2

Objetivo general
Comprender y conocer los distintos tipos de programación el entorno de desarrollo de
MPLAB XIDE como primera práctica se realizar un programa que por medio de un display
unificado muestre un contenido ascendente del 0 a 99, repitiendo el ciclo infinitamente.
1.2 Requerimientos técnicos
En este apartado podemos hablaremos sobre el material que se necesitara
- PIC18F4550
- PROTOBOARD
- CABLE PARA PUENTES
- CRISTAL DE CUARZO
- 8 RESISTENCIAS de 330
- 2 CAPACITORES CERAMICOS 15pf
- 2 DISPLAYS DE 7 SEGMENTOS O UNO DOBLE
3

2. Implementación
Código del programa:
//Realizar un contador de 0 a 99 con un doble display de 7 segmentos de cátodo común.
La cuenta debe ser continua y de 0 a 9 el digito de las decenas debe estar apagado.

#include <18F4550.h>
#USE DELAY(CLOCK=20000000)
#FUSES
HSPLL,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,PLL5,CPUDIV1,VREGE
N,NOBROWNO
UT
#USE fast_IO (B)
#USE fast_IO (A)
byte CONST DISPLAY[10] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
void main(){
byte ud=0,dec=0,f=9,g=0,ud1=0,dec1=0,j=10,k=0;
SET_TRIS_B(0x00);
SET_TRIS_A(12);
OUTPUT_B(0);

for( ;; ){
if(input(pin_a2)==0 ){
for (dec=0;dec<10;dec++){
for (ud=0;ud<10;ud++){
OUTPUT_A(0x02);
k=k+1;
OUTPUT_B(DISPLAY[k]);
if(k==9){
k=0; }
delay_ms(75);
if (dec==0) output_a(0x03);
4

else output_a(0x01);
if(j==10){
j=0;
}
OUTPUT_B(DISPLAY[j]);
delay_ms(75);

if(input(pin_a2)==1 ){

ud=11;
dec=11;
} }
j=j+1;

if(input(pin_a2)==1 ){

f=j;
g=k;
} }}

if(input(pin_a3)==0 ){
for (dec=0;dec<10;dec++){
for (ud=0;ud<10;ud++){
OUTPUT_A(0x02);
g=g-1;
if(g==-1){
g=9;
}
//cat_D=apagado,cat_U=encendido
OUTPUT_B(DISPLAY[g]);
delay_ms(75);
if (dec==9) output_a(0x03);
else output_a(0x01);
5

if(f==-1){
f=9;
}
OUTPUT_B(DISPLAY[f]);

delay_ms(75);

if(input(pin_a3)==1 ){
ud=11;
dec=11;
}
}f=f-1;
if(input(pin_a3)==1 ){ k=g; } } } } }
6

Ejemplo del programa con las conexiones realizadas y con el codigo ya implementado
7

3. Conclusiones
I liked this practice because it was something different from what we normally do in the
workshops, it is interesting how to form the code to carry out the program, at first it was
complicated because I was looking for extra information and found where they used
another PIC different from the one we are using , but in the end I was able to solve it.
8

Referencias
Libros:
[1] [1] Hojas de datos del microcontrolador PIC18F4550, Michochip, disponible en línea
http://ww1.microchip.com/downloads/en/devicedoc/39632c.pdf, última consulta 1 de febrero de 2018.
[2] [2] T. D. Morton, Embedded Microcontrollers, Primera Edición, Prentice Hall, 2001.
[3] T. Wilmshurst, Designing Embedded Systems with PIC Microcontrollers, Principles and
Applications, second edition, Newnes, 2009.

También podría gustarte