Академический Документы
Профессиональный Документы
Культура Документы
Ingeniera Electrnica
Microcontroladores
Prctica: Desplazamiento de un led mediante push button
Alumnos
Alegra Alcudia Daniel
Juregui Arreguin Jerardo
Marn Reyes Manuel
Martnez Torres Jos Ivn
Sibaja Ochoa Jess
Profesor
Dr. Jos de Jess Moreno Vzquez
INTRODUCCIN
La programacin de microcontroladores se basa en un cdigo de maquina que es
conocido como cdigo ensamblador, este cdigo contiene una de las instrucciones
del programa, este cdigo ensamblador es minucioso y en algunas ocasiones es
tedioso de editar.
El assembler crea cdigos de programa extensos ( no en tamao de archivo) y de
difcil comprensin.
De ah la idea de usar otros compiladores como el C, ya que este utiliza
estructuras que facilitan la programacin, optimiza las operaciones matemticas y
los procesos, por medio del uso de las funciones predefinidas que el desarrollador
puede crear, asi como el uso de un conjunto de variables, de diferentes tipos
como: entero, y punto decimal.
JUSTIFICACION
En esta prctica se pretende hacer uso de los conocimientos de ensambler,
pero ahora usando el lenguaje en C, para llevar a cabo una prctica en la cual nos
vayamos familiarizando con los elementos que este compilador nos ofrece, en las
anteriores practicas hemos estado trabajando con un puerto y 8 leds conectados
a dicho puerto en este caso el 0.
OBJETIVO
Lograr llevar acabo un barrido en una serie de leds, utilizando programacin en
C,pero en este caso este desplazamiento no es de forma automtica sino que el
recorrido se dara cuando nosotros, mandemos un pulso de seal en este caso
mediante un push button. Utilizando programacin en C ya que como dijimos
antes C es un recurso del cual disponen la mayora de los procesadores y
microcontroladores en el mercado hoy en da,permiten cambiar la continuidad de
ejecucin de un programa, para atender una necesidad, ya sea externa o interna.
OBJETIVO ESPECIFICO
Lograr el desplazamiento del led, atreves de pulsos de seal digital mediante un
push button el cual cada vez que presionemos mandara la seal para que el led se
desplace.
Materiales y mtodos
Los materiales utilizados durante la realizacin de la prctica fueron piezas e
instrumentos que ya tenamos en su mayora como es el caso del multmetro y el
protoboard a continuacin en una tabla se enumeraran los distintos tipos de
materiales que se utilizaron as como su cantidad.
En la tabla 1 se proporcionan los materiales utilizados.
Tabla 1. Materiales utilizados en la prctica.
1 Protoboard.
1 Multmetro.
8 Resistencias de 330
1 Cable UTP
3 Capacitores
1 Cristal
1 Microcontrolador AT89S52
1 Fuente de voltaje de 5V
8 Leds
Como ya se ha mencionado anteriormente algunos materiales son de prcticas
anteriores como en este caso las resistencias solo que ahora se utilizan menos,
por el display haba que regularlas ya que dependiendo el nmero de leds del
display que se encendieran va a variar la corriente as que le pusimos de 330
que funcionaron correctamente segn nuestros clculos deba pasar unos 15mA
para dar una intensidad de luz aceptable.
Resultados
Una interrupcin puede ser inhibida solo si existe otra interrupcin en curso. Esto
se debe a que, una interrupcin est controlada por dos bits que indican la fuente
de la interrupcin, un bit acta como bandera (flag) indicando si se ha producido
una interrupcin y el otro bit, acta como bit de inhibicin o prohibicin de la
interrupcin en su, debido a que existe otra interrupcin en ejecucin y todo esto
se realiza de forma automtica por parte del micro.
Mtodos
Simulacin del circuito en proteus
Figura1. En la imagen de abajo se logra apreciar como quedara nuestro circuito
La parte importante aqu es la simulacin, ya que si esta parte no sale
correctamente pues no tendria sentido empezar la implementacin; gracias a la
interfase del programa proteus podemos cargar los archivos de la programacion
de el lenguaje ensamblador a el micro simulado a continuacin pondremos el
codigo usado, para la practica.
Cdigo hecho en el MCU 8051 IDE.
short numero[8]={0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01};
short cuenta; i;
void main()
{
p1=0x80;
cuenta=1;
while(1)
{
if(p0.f1==0)
{p1=numero[cuenta];
cuenta++;
next: if(p0.F1==0)goto next
}
if (cuenta==8)
{
cuenta=0;
}
}
}
Figura 2. Aqu se muestra ms a detalle el circuito implementado.
Figura 3. Aqu se muestra el barrido
Figura 4. Aqu se muestra un 7
Conclusiones
La misin del microcontrolador es la de realizar un barrido cambiando el valor
del P1 en su salida y haciendo que solo un pin est activado a la vez, se mantiene
en alta la salida de cada led, comenzando de ms significativo a menos
significativo, activndolos en serie de esta manera se logra el efecto deseado.