Anda di halaman 1dari 4

Implementacin de un juego de leds

accionado por medio de un pulsador.


Escuela de Electrnica y Telecomunicaciones, Facultad de Ingeniera,
Universidad Nacional de Chimborazo,
Riobamba, Ecuador.
Samaniego Tello Ral Arturo
rast20@hotmail.com

Resumen: En el presente informe explicaremos como se


implementar varias secuencia de luces led accionadas por
un pulsador , dicha secuencia ser implementada con un pic
16f877A .

I.

INTRODUCCIN:
III.

En la actualidad el uso de microcontroladores en un aspecto


muy importante en la rama de diseo e implementacin de
soluciones
embebidas,
centrndonos
en
los
microcontroladores, los ms comnmente utilizados, son los
de la familia microchip debido a su bajo costo y tolerancia a
errores de implementacin, la siguiente prctica servir como
introductoria, para desarrollar el programa para controlar el
pic nos basaremos en el lenguaje ensamblador , el cual es un
lenguaje de bajo nivel que nos permite trabajar a nivel de
operaciones de bits directamente en el pic.

II.

OBJETIVOS

Objetivo General:

Disear el control bsico de pulsadores y leds en un


PIC.

Implementar el control de una secuencia de leds


utilizando el PIC 16f877A.

Objetivos Especficos:

Aprender a utilizar las funciones bsicas del pic


utilizando lenguaje ensamblador.

Implementar el circuito fsico en un protoboard.

MARCO TERICO

El PIC16F877 es un microcontrolador con memoria de


programa tipo FLASH, lo que representa gran facilidad en el
desarrollo de prototipos y en su aprendizaje ya que no se
requiere borrarlo con luz ultravioleta como las versiones
EPROM, sino que permite reprogramarlo nuevamente sin ser
borrado con anterioridad. El PIC16F877 es un
microcontrolador de Microchip Technology fabricado en
tecnologa CMOS, su consumo de potencia es muy bajo y
adems es completamente esttico, esto quiere decir que el
reloj puede detenerse y los datos de la memoria no se pierden.
El encapsulado ms comn para este microcontrolador es el
DIP (Dual In-line Pin) de 40 pines, propio para usarlo en
experimentacin. La referencia completa es PIC16F877-04
para el dispositivo que utiliza cristal oscilador de hasta 4
MHz, PIC16F877-20 para el dispositivo que utiliza cristal
oscilador de hasta 20 MHz o PIC16F877A-I para el
dispositivo tipo industrial que puede trabajar hasta a 20 MHz.
Sin embargo, hay otros tipos de encapsulado que se pueden
utilizar segn el diseo y la aplicacin que se quiere realizar.
Por ejemplo, el encapsulado tipo surface mount (montaje
superficial) tiene un reducido tamao y bajo costo, que lo
hace propio para producciones en serie o para utilizarlo en
lugares de espacio muy reducido.
DISTRIBUCION DE PINES:

}
RB0_bit=0;
RB6_bit=0;
if (opn==1)
{
RB7_bit=0;

//Pin B7 apagado

RB7_bit=1;

//Pin B7 encendido

Delay_Ms(1500);

PROGRAMACIN

//retardo 1500 ms

RB7_bit=0;

//Pin B7 apagado

RB0_bit=1;

//Pin B0 encendido

int i;

delay_ms(1500);

int opn;

RB0_bit=0;

//Pin B0 apagado

int var;

RB3_bit=1;

//Pin B3 encendido

void main() {
TRISB=0;

//funcin principal

delay_ms(1500);

//Puerto de salida

RB3_bit=0;

//Pin B3 apagado

RB1_bit=1;

//Pin B1 encendido

TRISB.RB5=1;
PORTB=0;

//Puerto B apagado

while(1){

//retardo 1500 ms

delay_ms(1500);

//retardo 1500 ms

//Bucle infinito

for(i=0 ; i<4 ; i++)

//retardo 1500 ms

RB1_bit=0;

//Pin B1 apagado

RB2_bit=1;

//Pin B2 encendido

delay_ms(1500);

//retardo 1500 ms

RB2_bit=0;

//Pin B2 apagado

RB6_bit=1;

RB7_bit=1;

//Pin B7 encendido

var=RB5_bit;

Delay_Ms(1500);

if (var==1)

RB7_bit=0;

RB1_bit=1;
RB0_bit=1;

opn=opn+1;

if (opn==2)

Delay_Ms(500);

{
RB7_bit=0;

}
Delay_Ms(500);

RB0_bit=1;

//retardo 1500 ms
//Pin B7 apagado

RB1_bit=1;

RB1_bit=0;

RB2_bit=1;

RB2_bit=0;

RB3_bit=1;

RB3_bit=0;

RB4_bit=1;

RB4_bit=0;

Delay_Ms(1500);

Delay_Ms(1500);

RB0_bit=0;

RB0_bit=0;

RB1_bit=0;

RB1_bit=0;

RB2_bit=0;

RB2_bit=0;

RB3_bit=0;

RB3_bit=1;

RB4_bit=0;

RB4_bit=1;

Delay_Ms(1500);

Delay_Ms(1500);

RB0_bit=0;

RB0_bit=0;

RB1_bit=1;

RB1_bit=0;

RB2_bit=1;

RB2_bit=0;

RB3_bit=1;

RB3_bit=0;

RB4_bit=1;

RB4_bit=0;

Delay_Ms(1500);

Delay_Ms(1500);

RB0_bit=0;

RB0_bit=0;

RB1_bit=0;

RB1_bit=0;

RB2_bit=0;

RB2_bit=0;

RB3_bit=0;

RB3_bit=0;

RB4_bit=0;

RB4_bit=1;

Delay_Ms(1500);

Delay_Ms(1500);

RB0_bit=0;

RB0_bit=0;

RB1_bit=0;

RB1_bit=0;

RB2_bit=1;

RB2_bit=0;

RB3_bit=1;

RB3_bit=0;

RB4_bit=1;

RB4_bit=0;

Delay_Ms(1500);
RB0_bit=0;

Delay_Ms(500);

RB1_bit=0;
RB2_bit=0;

V.

opn=0;

El momento de implementar y armar el circuito


debemos tomar en cuenta cada uno de los pines
tanto del microcontrolador como del dispositivo.

BIBLIOGRAFA:

}
}

http://es.scribd.com/doc/442526
80/LCD-16X2#scribd
http://www.mikroe.com/chapters
/view/80/capitulo-2programacion-de-losmicrocontroladores/

http://es.wikipedia.org/wiki/
Microcontrolador

VI.

IV.

CONCLUSIONES Y RECOMENDACIONES

CONCLUSIONES:

La velocidad de la secuencia de bits depende de los


fuses que se agregen en la programacin.
Es importante tener en cuenta los tiempos de
ejecucin de las secuencias.

RECOMENDACIONES:

Implementar el boton con un circuito pull up o pull


down .

Realizar un control anti rebotes para asi evitar saltos


en la secuencia de los leds..

http://earchivo.uc3m.es/bitstream/handle/10016/13553/PF
C%20Jorge%20Gomez%20Marcos.pdf?
sequence=1
http://wiki.pinguino.cc/index.php/PIC18F2550_Pin
guino/es

BIOGRAFA:

Ral Samaniego, naci en Quito Ecuador el 29 de Octubre


de 1985. Realiz sus estudios Secundarios en el Colegio
Experimental Pedro Vicente Maldonado. Actualmente se
encuentra estudiando en quinto semestre de Ingeniera en
Electrnica y Telecomunicaciones de la Universidad
Nacional de Chimborazo.

Anda mungkin juga menyukai