Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Laboratório 01
ACTIVIDAD No 1
a) Tipo de arquitectura:
b) CPU :
c) Memorias :
d) Buses :
e) Puertos de entrada/salida
EJERCICIO 1
{
while(1)// mientras la condición sea verdadera o true
{
output_high(pin_b0);// coloca en alto el pin b0
delay_ms(500);// mantiene encendido el pin b0 durante 0.5 segundo
output_low(pin_b0);// coloca en bajo el pin b0
delay_ms(500);// mantiene apagado el pin b0 durante 0.5 segundo
}
}
2
Ing.Miguel Lévano S. mlevano@gmail.com
¿Qué función realiza el circuito?
Ejercicio 2
#include<16f877a.h>
#fuses XT,NOWDT,PUT,NOPROTECT
#USE delay(clock=4000000)
#use fast_io(B)
void main()
{
set_tris_B(0);
{
output_high(PIN_B0);
output_low(PIN_B1);
delay_ms(1000);
output_low(PIN_B0);
output_high(PIN_B1);
delay_ms(1000);
}
}
3
Ing.Miguel Lévano S. mlevano@gmail.com
3. Compila el programa y cárgalo en la configuración mostrada en el simulador Proteus
¿Qué función realiza el circuito?
Ejercicio 3
#include <16f877a.h>
//configura los fusibles
#FUSES XT //No watch Dog Timer
#use delay(clock=4000000)//OSCILADOR <=4MHZ
#FUSES NOWDT//No watch Dog Timer
#FUSES NOPUT//No power up Timer,no espera
#FUSES NOPROTECT//No protegemos el código.
#FUSES NOBROWNOUT//No Brown out reset, no se resetea si cae la tension
#FUSES NOLVP//No programacion en bajo voltaje
#FUSES NOCPD//No EE protection
//#fuse intrc_io,nowdt,noput,noprotected
void main()
{
set_tris_b(0);//indica que el puerto b sera de salida
output_b(0); //indica que todas las lineas del puerto b estarán en cero.
do
{
output_high(pin_b0);//pongo el pin b0 en alto
delay_ms(500); // por un tiempo de 500 ms (introduce un retardo de 500ms)
4
Ing.Miguel Lévano S. mlevano@gmail.com
output_low(pin_b0);//se apaga el pin b0
delay_ms(500);//por un tiempo de 500 ms
}
WHILE(TRUE);
}
4. Modifica el programa de tal manera que se enciendan los 8 leds se prendan secuencialmente
de b0 a b7.
TRABAJO PRÁCTICO 1
1. ¿Qué modificaciones realizarías en el programa del ejercicio 1 para que el led se prenda y
encienda solo una vez?, adjunta la simulación.
2. ¿Qué modificaciones realizarías en el programa del ejercicio 1 para realizar la misma
función pero utilizando el PIC 16F877A? , adjunta la simulación.
3. Modifica el código del ejercicio 3 de tal manera que el desplazamiento de encendido de
los leds sea tenga el sentido contrario. Adjunta la simulación.
4. Basado en la experiencia del ejercicio 3, diseña un programa que realice la secuenciación de
8 leds de izquierda a derecha y derecha izquierda en forma continua (“Auto fantástico”) en
implementa el circuito correspondiente cuya presentación será la próxima semana.
5
Ing.Miguel Lévano S. mlevano@gmail.com