Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Lab3 502
Lab3 502
Laboratorio n° 3
(DISEÑO DE INTERFASES DE SALIDA PARA
MICROCONTROLADORES PIC)
MATERIA. - Diseño electrónico asistido por computadora
ETN 502
ESTUDIANTE. – Univ. Jhovana Condori Mamani
DOCENTE. - Ing. Eduardo Gunar Rodríguez Mendoza
FECHA DE ENTREGA. - 20/04/2023
Objetivo. -se tiene los siguientes objetivos:
Herramientas y
nomenclatura Hardaware
pic16f628a
-resistencias
-leds de diferentes
colores
Para que este proceso funcione es necesario que el LED esté polarizado
directamente. Es decir, tiene que existir una corriente circular de un término
positivo (ánodo) a uno negativo (cátodo). Es aquí cuando se produce el llamado
“fotón” al desprenderse los electrones y se produce luz.
Es una pantalla de cristal liquido nombrada asi por sus siglas en ingles Liquid
Crystal Display
Software
-pic c compile
-proteus
Funciones
#fuses INTRC con este comando activamos el oscilador interno del pic
#fuses MCLR con este comando activamos el MCLR que es el reset del pic
#use delay (clock=4M) con este comando se busca especificamos el valor del
cristal que usaremos en el circuito como ser el crital de cuarzo
Void Main(){ } este comando indica el inicio del programa principal todo
aquello que este dentro de las llaves es el programa principal y tendrá
prioridad sobre otros subprogramas
Whiel (true){ } usamos este comando para crear un bucle infinito donde se
repita una y otra vez los comandos en su interior este es debido a que el
programa principal se repetirá una sola vez sin mas, de esta manera podremos
realizar que nuestro programa se repita varias veces indefinidamente sin
inconvenientes
Output_low (pin_b0) este comando ponemos en estado bajo un pin, el pin que
esta adentro de los paréntesis se pondrá en estado bajo
#INCLUDE<16F628A.H>
#FUSES INTRC,NOMCLR
#USE DELAY(INTERNAL=4M)
#USE STANDARD_IO(B)
#INCLUDE<LCD.
C> int
TIEMPO=500;
void main()
LCD_INIT();
LCD_PUTC("\f");
while(true)
{
LCD_GOTOXY(1,1);
LCD_PUTC("NUM
DECIMALES");
output_a(0b0000);
LCD_GOTOXY(3,2);
LCD_PUTC("00");
delay_MS(tiempo);
output_a(0b0001);
LCD_GOTOXY(3,2);
LCD_PUTC("01");
delay_MS(tiempo);
output_a(0b0010);
LCD_GOTOXY(3,2);
LCD_PUTC("02");
delay_MS(tiempo);
output_a(0b0011);
LCD_GOTOXY(3,2);
LCD_PUTC("03");
delay_MS(tiempo);
output_a(0b0100);
LCD_GOTOXY(3,2);
LCD_PUTC("04");
delay_MS(tiempo);
output_a(0b0101);
LCD_GOTOXY(3,2);
LCD_PUTC("05");
delay_MS(tiempo);
output_a(0b0110);
LCD_GOTOXY(3,2);
LCD_PUTC("06");
delay_MS(tiempo);
output_a(0b0111);
LCD_GOTOXY(3,2);
LCD_PUTC("07");
delay_MS(tiempo);
output_a(0b1000);
LCD_GOTOXY(3,2);
LCD_PUTC("08");
delay_MS(tiempo);
output_a(0b1001);
LCD_GOTOXY(3,2);
LCD_PUTC("09");
delay_MS(tiempo);
output_a(0b1010);
LCD_GOTOXY(3,2);
LCD_PUTC("10");
delay_MS(tiempo);
output_a(0b1011);
LCD_GOTOXY(3,2);
LCD_PUTC("11");
delay_MS(tiempo);
output_a(0b1100);
LCD_GOTOXY(3,2);
LCD_PUTC("12");
delay_MS(tiempo);
output_a(0b1101);
LCD_GOTOXY(3,2);
LCD_PUTC("13");
delay_MS(tiempo);
output_a(0b1110);
LCD_GOTOXY(3,2);
LCD_PUTC("14");
delay_MS(tiempo);
output_a(0b1111);
LCD_GOTOXY(3,2);
LCD_PUTC("15");
delay_MS(tiempo);
}
Conclusiones