Microcontroladores
Enviado por omar0027 • 4 de Marzo de 2013 • 254 Palabras (2 Páginas) • 302 Visitas
TITULAR: FAUSTO VIRGEN PONCE
ALUMNO: OMAR VICTORIANO RAMIREZ
NUMERO DE CONTROL: 09070509
ESPECIALIDAD: ING. ELECTRONICA
MATERIA: APLICACIÓN DE MICROCONTROLADORES
TRABAJO:PRACTICAS EN LENGUAJE C
CUIDAD MADERO TAMAULIPAS, NOVIEMBRE DEL 2012
En esta ocasión realizaremos una práctica en la cual trataremos de programar y hacer un circuito que cumpla una cuenta ya sea ascendente o descendente.
Para esto conectamos un display del tipo ánodo común con un integrado 74LS47 al microcontrolodor ATMEGA8535L, además le tendremos que conectar dos interruptores en el puerto B para de ahí ordenar de acuerdo a la entrada si queremos una cuenta ascendente o descendente del 0 al 9.
Una vez mencionado lo anterior tenemos que ilustrar el circuito en la figura de abajo, en el cual mostramos el circuito que se armó para esta respectiva práctica.
Ahora mostramos el cuerpo del programa que se elaboró en lenguaje C para posteriormente ensamblarlo en el mircocontrolador.
//declaración de frecuencia de trabajo
#define F_CPU 1000000UL
//declaración de librerías
#include<avr/io.h>
#include<avr/iom8535.h>
#include<util/delay.h>
/***********************************************************/
//declaracion de rutinas
int IncDisp();
int DecDisp();
//declaracion de varias variables
volatile int8_t cont=0x00;
/************************************************************/
//rutina principal
int main(void)
{
DDRA=0xFF; //puerto A salida
DDRB=0x00; //puerto B entrada
while(1)
{
PORTA=cont;
if(bit_is_clear(PINB,0)) //si PINB es 0 llama al incremento
{
IncDisp();
}
if(bit_is_clear(PINB,1)) //si PINB es 1 llama al decremento
{
DecDisp();
}
_delay_ms(500);
}
return 0;
}
/*****************************************************************/
//rutina de incremento
int IncDisp()
{
cont++; //incrementa cont
if(cont>0x09) //si cont es mayor q 9 le asignan el 0
{
cont=0x00;
}
}
/******************************************************************/
//rutina de decremento
int DecDisp()
{
cont--; //decremento de cont
if(cont<0x00) //si cont es menor q 0 le asignan el 9
{
cont=0x09;
}
}
/******************************************************************/
En
...