Escolar Documentos
Profissional Documentos
Cultura Documentos
Gabriela Abilene Ayala Salazar Tania Indira Campos de Hoyos Mara Guadalupe Montaez de la Rosa Stefani Guadalupe Zavala Garca
Tabla de contenido
Prctica 1: Parpadeo de un led. ........................................................................................................ 5 Prctica 2: Secuencia de led intermitente: ....................................................................................... 7 Prctica 3: Ida y vuelta en una secuencia de Leds: ....................................................................... 11 Prctica 4: Encendido de un led mediante un botn de presin. ................................................. 15 Prctica 5: Botn de presin de cuatro estados. ........................................................................... 19 Prctica 6: Interruptor en escalera: ................................................................................................ 23 Prctica 7: Contador de 0 a 9 con display de 7 segmentos: ......................................................... 25 Prctica 8: contador de pulsaciones de 00 a 99............................................................................. 28
ITESRC
Pgina 2 de 35
ITESRC
Pgina 3 de 35
Durante esta unidad, la materia se enfoca en la introduccin a la programacin de microcircuitos que permitan el diseo y la implementacin de interfaces que favorezcan la relacin hombre-mquina, para la optimizacin de un sistema. En esta la unidad nmero 2 se nos dio a conocer las principales instrucciones y funciones de un lenguaje ensamblador, la forma en que un programa debe de estar estructurado y los parmetros que se deben de tomar en cuenta, con el desarrollo de 10 prcticas sencillas pero bsicas. A continuacin se presentar un reporte detallado de estas 10 prcticas, que se realizaron en la segunda unidad de lenguajes de interfaces, especificando los objetivos de las mismas, as como la lista de materiales, la solucin en cdigo y la demostracin de resultados en forma de fotografas, anexo a este documento podrn encontrar la simulacin de cada circuito, hecha en el software proteus, y los videos que evidencian su realizacin.
ITESRC
Pgina 4 de 35
Lista de material:
Protoboard Cables de cobre para puentes y dems conexiones Led Pic 16f887 Resistencia de por lo menos 330 ohms Batera de 9 volts Regulador a 5 volts
#include<16F887.h> #use delay(clock=40000) Void main() { Set_tris_a(0); while(true) { Output_high(pin_a0); delay_ms(5000); Output_low(pia_a0); delay_ms(5000); }
ITESRC
Pgina 5 de 35
Demostracin de resultados:
ITESRC
Pgina 6 de 35
Crear un programa que al tener 8 leds, enciendan 4, se apaguen y enciendan los otros cuatro, colocados intercaladamente, usando el pic 16f887.
Lista de material:
Protoboard Cables de cobre para puentes y dems conexiones Leds Pic 16f887 Resistencia de por lo menos 330 ohms Batera de 9 volts Regulador a 5 volts
ITESRC
Pgina 7 de 35
ITESRC UNIDAD 2 output_high(pin_a2); output_high(pin_a4); output_high(pin_b0); delay_ms(50000); Output_low(pin_a0); output_low(pin_a2); output_low(pin_a4); output_low(pin_b0); delay_ms(50000); Output_high(pin_a1); output_high(pin_a3); output_high(pin_a5); output_high(pin_b1); delay_ms(50000); Output_low(pin_a1); output_low(pin_a3); output_low(pin_a5); output_low(pin_b1); delay_ms(50000); } } LENGUAJE DE INTERFACES
ITESRC
Pgina 8 de 35
Demostracin de resultados:
ITESRC
Pgina 9 de 35
ITESRC
Pgina 10 de 35
Escribir un programa que realice una secuencia de ida y vuelta con 8 leds utilizando el pic 16f887. El primer led se enciende, se apaga y enciende el siguiente, se apaga el segundo y enciende el tercero, y as hasta llegar al ltimo led, y del ltimo led hacer lo mismo de reversa.
Lista de material:
Protoboard Cables de cobre para puentes y dems conexiones Leds Pic 16f887 Resistencia de por lo menos 330 ohms Batera de 9 volts Regulador a 5 volts
ITESRC
Pgina 11 de 35
ITESRC UNIDAD 2
} } void moverder() { long x; for(x=64;x>=2;x/=2) { pb=x; delay_ms(1000); } }
LENGUAJE DE INTERFACES
ITESRC
Pgina 12 de 35
Demostracin de resultados:
ITESRC
Pgina 13 de 35
ITESRC
Pgina 14 de 35
Crear un programa que permita el encendido de un solo led mediante un botn de presin.
Lista de materiales:
Protoboard Cables de cobre para puentes y dems conexiones Led Pic 16f887 Batera de 9 volts Regulador a 5 volts Botn de presin.
ITESRC
Pgina 15 de 35
Demostracin de Resultados:
ITESRC
Pgina 16 de 35
ITESRC
Pgina 17 de 35
ITESRC
Pgina 18 de 35
Crear un programa que permita el encendido de una serie de leds de la siguiente manera: Cuando oprimamos 1 vez se prende el primer led, la segunda vez se apaga el primero y enciende el segundo, la tercera vez apaga el segundo enciende el tercero, la cuarta vez se apagan todos y comienza de nuevo el ciclo.
Lista de materiales:
Protoboard Cables de cobre para puentes y dems conexiones Leds Pic 16f887 Batera de 9 volts Regulador a 5 volts Botn de presin.
ITESRC
Pgina 19 de 35
ITESRC UNIDAD 2 { if(input(pin_b0)==1) { x++; switch(x) { case 1: pb=1;x=0; break; case 2: pb=3; break; case 3: pb=5; break; case 4: pb=9;x=0; break; } while(input(pin_b0)==1); } } } LENGUAJE DE INTERFACES
ITESRC
Pgina 20 de 35
Demostracin de Resultados:
ITESRC
Pgina 21 de 35
ITESRC
Pgina 22 de 35
Crear un programa que permita el encendido de un led usando dos switches, de manera que al activar uno el led encienda, pero al estar los dos activados el led permanezca apagado.
Lista de materiales:
Protoboard Cables de cobre para puentes y dems conexiones Led Pic 16f887 Batera de 9 volts Regulador a 5 volts Switch
#include<16f887.h> #use delay(clock=4000000) //#byte pa=0x01 void main() { set_tris_a(0x01); while(true) { if((input(pin_a0) && !input(pin_a1)) || (!input(pin_a0) && input(pin_a1))) {
ITESRC
Pgina 23 de 35
ITESRC UNIDAD 2 output_high(pin_a2); } else if (input(pin_a0)&& input (pin_a1)) { output_low(pin_a2); } else { output_low(pin_a2);} } } LENGUAJE DE INTERFACES
Demostracin de Resultados:
ITESRC
Pgina 24 de 35
Crear un programa que cuente de 0 a 9 en intervalos de un segundo y muestre los nmeros en un display de 7 segmentos. Y como extra que cada medio segundo encienda el punto del display.
Lista de materiales:
Protoboard Cables de cobre para puentes y dems conexiones Pic 16f887 Batera de 9 volts Regulador a 5 volts Display de 7 segmentos
ITESRC
Pgina 25 de 35
set_tris_d(0x00);
do {
i=0;
numero2=0; while(i <= 9) { output_d(mostrar[numero2]); delay_ms(500); output_d(mostrar2[numero2]); delay_ms(500); i++; numero2++; } } while(true); }
Demostracin de Resultados:
ITESRC
Pgina 26 de 35
ITESRC
Pgina 27 de 35
Crear un programa que cuente de 00 a 99 con la pulsacin de un botn de presin. Una pulsacin por cada nmero.
Lista de materiales:
Protoboard Cables de cobre para puentes y dems conexiones Pic 16f887 Batera de 9 volts Regulador a 5 volts Dos display de 7 segmentos Botn de presin
void main() { int mostrar[]={0b00111111,0b00000110,0b01011011,0b01001111,0b01100110,0b01101101,0b01111101,0 b00000111,0b01111111,0b01101111}; int numero1 = 0; int numero2 =0;
ITESRC
Pgina 28 de 35
while(true) {
i=0; numero1=0; numero2=0; while(i <= 99) { if (input(pin_b0)==1) { if(i == 10) { numero1++; numero2=0; output_c(mostrar[numero1]); output_d(mostrar[numero2]);
ITESRC
Pgina 29 de 35
ITESRC UNIDAD 2 } else if(i == 20) { numero1++; numero2=0; output_c(mostrar[numero1]); output_d(mostrar[numero2]); } else if(i == 30) { numero1++; numero2=0; output_c(mostrar[numero1]); output_d(mostrar[numero2]); } else if(i == 40) { numero1++; numero2=0; output_c(mostrar[numero1]); output_d(mostrar[numero2]); } else if(i == 50) { numero1++; LENGUAJE DE INTERFACES
ITESRC
Pgina 30 de 35
ITESRC UNIDAD 2 numero2=0; output_c(mostrar[numero1]); output_d(mostrar[numero2]); } else if(i == 60) { numero1++; numero2=0; output_c(mostrar[numero1]); output_d(mostrar[numero2]); } else if(i == 70) { numero1++; numero2=0; output_c(mostrar[numero1]); output_d(mostrar[numero2]); } else if(i == 80) { numero1++; numero2=0; output_c(mostrar[numero1]); output_d(mostrar[numero2]); } LENGUAJE DE INTERFACES
ITESRC
Pgina 31 de 35
ITESRC UNIDAD 2 else if(i == 90) { numero1++; numero2=0; output_c(mostrar[numero1]); output_d(mostrar[numero2]); } else { output_c(mostrar[numero1]); output_d(mostrar[numero2]); } delay_ms(500); i++; numero2++; LENGUAJE DE INTERFACES
} } while(input(pin_b0)==1);
ITESRC
Pgina 32 de 35
Demostracin de Resultados:
ITESRC
Pgina 33 de 35
ITESRC
Pgina 34 de 35
Ingeniera en Sistemas Computacionales; Lenguaje de interfaces, Grupo 6.1 G Ing. Hctor Padilla.
ITESRC
Pgina 35 de 35