You are on page 1of 26

SEPTIEMBRE FEBRERO

10

UNIVERSIDAD POLITCNICA SALESIANA


INFORME DE LA PRCTICA 1
ENTRADA Y SALIDA EN EL MICROCONTROLADOR PIC SISTEMAS MICROPROCESADOS I DOCENTE Ing. Electrnico. Luis Oate INGENIERIA ELECTRNICA FECHA: 28 DE SEPTIEMBRE DE 2010 ESTUDIANTES
RUIZ JUAN DANIEL HUACA LUIS SANGOQUIZA

UNIVERSIDAD POLITCNICA SALESIANA

UNIVERSIDAD POLITCNICA SALESIANA


INFORME PRCTICA 1

TEMA: ENTRADA Y SALIDA EN EL MICROCONTROLADOR PIC


OBJETIVOS: 1. Utilizar los puertos del microcontrolador pic, como interface digital al mundo exterior. DESARROLLO Para esta prctica utilizaremos el PIC16f877A el cual debemos conocer su funcionamiento adems de cmo utilizarlo. El PIC 16F877A se denomina microcontrolador a un dispositivo programable capaz de realizar diferentes actividades que requieran del procesamiento de datos digitales y del control y comunicacin digital de diferentes dispositivos. Los microcontroladores poseen una memoria interna que almacena dos tipos de datos; las instrucciones, que corresponden al programa que se ejecuta, y los registros, es decir, los datos que el usuario maneja, as como registros especiales para el control de las diferentes funciones del microcontrolador. Los microcontroladores se programan en Assembler y cada microcontrolador vara su conjunto de instrucciones de acuerdo a su fabricante y modelo. De acuerdo al nmero de instrucciones que el microcontrolador maneja se le denomina de arquitectura RISC (reducido) o CISC (complejo). DESCRIPCIN DE LOS PUERTOS Puerto A:

Puerto de e/s de 6 pines RA0 RA0 y AN0 RA1 RA1 y AN1 RA2 RA2, AN2 y VrefRA3 RA3, AN3 y Vref+ RA4 RA4 (Salida en colector abierto) y T0CKI(Entrada de reloj del modulo Timer0) RA5 RA5, AN4 y SS (Seleccin esclavo para el puerto serie sncrono)

Puerto B:

Puerto e/s 8 pines Resistencias pull-up programables RB0 Interrupcin externa RB4-7 Interrupcion por cambio de flanco RB5-RB7 y RB3 programacion y debugger in circuit
Ing. Electrnica Informe Analgica II

UNIVERSIDAD POLITCNICA SALESIANA


Puerto C:

Puerto e/s de 8 pines RC0 RC0, T1OSO (Timer1 salida oscilador) y T1CKI (Entrada de reloj del modulo Timer1). RC1-RC2 PWM/COMP/CAPT RC1 T1OSI (entrada osc timer1) RC3-4 IIC RC3-5 SPI RC6-7 USART

Puerto D:

Puerto e/s de 8 pines Bus de datos en PPS (Puerto paralelo esclavo) Puerto E: Puerto de e/s de 3 pines RE0 RE0 y AN5 y Read de PPS RE1 RE1 y AN6 y Write de PPS RE2 RE2 y AN7 y CS de PPS

DIAGRAMA DEL PIC16F877A

Ing. Electrnica Informe Analgica II

UNIVERSIDAD POLITCNICA SALESIANA


Adems debemos utilizar el Programa Mikrobasic el cual es de gran ayuda para la realizacin de la prctica.

Imagen del programa Mikrobasic


PROBLEMA 1. Escribir en el Puerto B el valor 55h PROCESO:
Habilitar el puerto B como una salida ademas escribimos en el puerto B: 55h el cual ponemos un retraso de 1 segundo.

SALIDAS:
El puerto B visualizamos en los leds valor de 55h.

DIAGRAMA DE FLUJO

INICIO

PUERTO B SALIDA Trisb=0 Delay 1seg.

OBSERVAMOS EN EL PUERTO B. 55h


Ing. Electrnica Informe Analgica II

UNIVERSIDAD POLITCNICA SALESIANA


CDIGO DEL PROGRAMA 1 MIKROBASIC
program practica1 ' Declarations section trisb=0 'HABILITA EL PUERTO B COMO SALIDA main: 'PARTE PRINCIPAL DEL PROGRAMA ' Main program portb=$55 'ESCRIBE EN EL PUERTO B EL VALOR 55H=01010101 delay_ms(1000) 'RETARDO DE 1 SEGUNDO end. 'FIN DEL PROGRAMA

SIMULACIN EN PROTEUS

Imagen de la simulacin del problema 1 IMAGEN EN EL PROTOBOARD

Imagen del problema 1 realizado en el Protoboard


Ing. Electrnica Informe Analgica II

UNIVERSIDAD POLITCNICA SALESIANA


PROBLEMA 2. Escribir en el Puerto B el valor AA PROCESO:
Habilitamos el puerto B como una salida adems escribimos en el puerto B: AAh con un retardo de un 1 segundo.

SALIDAS:
El puerto B observamos en los leds el valor AAh.

DIAGRAMA DE FLUJO

INICIO

PUERTO B SALIDA Trisb=0 Delay 1seg.

OBSERVAMOS EN EL PUERTO B. AAh

CDIGO DEL PROGRAMA 2 MIKROBASIC


program practica2 ' Declarations section trisb=0 'HABILITA EL PUERTO B COMO SALIDA

main: 'PARTE PRINCIPAL DEL PROGRAMA ' Main program portb=$AA 'ESCRIBE EN EL PUERTO B EL VALOR AA=10101010 delay_ms(1000) 'RETARDO DE 1 SEGUNDO end. 'FIN DEL PROGRAMA

Ing. Electrnica Informe Analgica II

UNIVERSIDAD POLITCNICA SALESIANA


SIMULACIN EN PROTEUS

Imagen de la simulacin del problema 2 IMAGEN EN EL PROTOBOARD

Imagen del problema 2 realizado en el Protoboard


PROBLEMA 3. En el puerto C escribir el valor F0. PROCESO:
Habilitamos el Puerto B como una salida y escribimos en el puerto C F0h con un retardo de 1 segundo.

SALIDAS:
El puerto C visualizamos en los leds el valor F0h.

Ing. Electrnica Informe Analgica II

UNIVERSIDAD POLITCNICA SALESIANA


DIAGRAMA DE FLUJO

INICIO

PUERTO B SALIDA Trisb=0 Delay 1seg.

OBSERVAMOS EN EL PUERTO C. F0h

CDIGO DEL PROGRAMA 3 MIKROBASIC


program practica3 ' Declarations section trisc=0 'HABILITA EL PUERTO C COMO SALIDA

main: 'PARTE PRINCIPAL DEL PROGRAMA ' Main program portc=$F0 'ESCRIBE EN EL PUERTO C EL VALOR F0=11110000 delay_ms(1000) 'RETARDO DE 1 SEGUNDO end. 'FIN DEL PROGRAMA

Ing. Electrnica Informe Analgica II

UNIVERSIDAD POLITCNICA SALESIANA


SIMULACIN EN PROTEUS

Imagen de la simulacin del problema 3 IMAGEN EN EL PROTOBOARD

Imagen del problema 3 realizado en el Protoboard


PROBLEMA 4. Leer en el puerto C y escribir en el puerto B PROCESO:
Habilitamos en el puerto C como entrada y el puerto B como salida adems definimos una variable. Igualamos la variable en el puerto B para observar el resultado en el puerto B

SALIDAS:
El puerto B observamos en los leds.
Ing. Electrnica Informe Analgica II

UNIVERSIDAD POLITCNICA SALESIANA

DIAGRAMA DE FLUJO

INICIO

PUERTO B SALIDA Trisb=0


valor=portc portb=valor

OBSERVAMOS EL PUERTO C.

EN

CDIGO DEL PROGRAMA 4 MIKROBASIC


program practica4 ' Declarations section dim valor as byte main: 'PARTE PRINCIPAL DEL PROGRAMA lazo: trisc=$ff trisb=0 valor=portc portb=valor goto lazo end.

Ing. Electrnica Informe Analgica II

UNIVERSIDAD POLITCNICA SALESIANA


SIMULACIN EN PROTEUS

Imagen de la simulacin del problema 4 IMAGEN EN EL PROTOBOARD

Imagen del problema 4 realizado en el Protoboard


PROBLEMA 5. Leer en el puerto B y escribir en el puerto D PROCESO:
Habilitamos en el puerto D como entrada y el puerto B como salida para definir una variable. Igualamos la variable en el puerto D en el cual presentamos el resultado en el puerto D.

SALIDAS:
El puerto D observamos en los leds.

Ing. Electrnica Informe Analgica II

UNIVERSIDAD POLITCNICA SALESIANA

DIAGRAMA DE FLUJO

INICIO

PUERTO B SALIDA trisb=$ff trisd=0 valor=portb portd=valor

OBSERVAMOS EL PUERTO C.

EN

CDIGO DEL PROGRAMA 5 MIKROBASIC program practica5 ' Declarations section dim valor as byte main: 'PARTE PRINCIPAL DEL PROGRAMA ' Main program lazo: trisb=$ff trisd=0 valor=portb portd=valor goto lazo end.

Ing. Electrnica Informe Analgica II

UNIVERSIDAD POLITCNICA SALESIANA

SIMULACIN EN PROTEUS

Imagen de la simulacin del problema 5 IMAGEN EN EL PROTOBOARD

Imagen del problema 5 realizado en el Protoboard


PROBLEMA 6. Escribir en un display de 7 segmentos sin utilizar decodificador, un valor ascendente entre 0 y F. PROCESO:
Definimos el cdigo binario para cada valor escribiendo el cdigo en el puerto B. Retardamos 2 segundos el cual se repita el programa hasta F.
Ing. Electrnica Informe Analgica II

UNIVERSIDAD POLITCNICA SALESIANA


SALIDAS:
El cdigo Binario de 0 a F en el puerto B el cual observamos en el display.

DIAGRAMA DE FLUJO

INICIO

PUERTO B COMO SALIDA

RETARDO DE DOS SEGUNDO

VISUALIZACION DE DATOS EN DISPLAY

CDIGO DEL PROGRAMA 6 MIKROBASIC


program practica6 ' Declarations section trisb=$0 'conectar a=portb.0;b=portb.1;c=portb.2;d=portb.3;e=portb.4;f=portb.5; g=portb.6; 'El display debe ser ctodo comun main: ' Main program lazo: portb=%00111111 'formato para trabajar en binario delay_ms(2000) 'retardo 2seg. portb=%00000110 delay_ms(2000) portb=%01011011 delay_ms(2000) portb=%01001111 delay_ms(2000) portb=%01100110 delay_ms(2000) portb=%01101101
Ing. Electrnica Informe Analgica II

UNIVERSIDAD POLITCNICA SALESIANA


delay_ms(2000) portb=%01111101 delay_ms(2000) portb=%00000111 delay_ms(2000) portb=%01111111 delay_ms(2000) portb=%01100111 delay_ms(2000) portb=%01110111 delay_ms(2000) portb=%01111100 delay_ms(2000) portb=%01011000 delay_ms(2000) portb=%01011110 delay_ms(2000) portb=%01111001 delay_ms(2000) portb=%01110001 delay_ms(2000) goto lazo end.

SIMULACIN EN PROTEUS

Imagen de la simulacin del problema 6

Ing. Electrnica Informe Analgica II

UNIVERSIDAD POLITCNICA SALESIANA

Imagen de la simulacin del problema 6 IMAGEN EN EL PROTOBOARD

Imagen del problema 6 realizado en el Protoboard

Imagen del problema 6 realizado en el Protoboard


Ing. Electrnica Informe Analgica II

UNIVERSIDAD POLITCNICA SALESIANA

Imagen del problema 6 realizado en el Protoboard


PROBLEMA 7. Mediante un Display alfanumrico mostrar en orden descendente todas las letras del alfabeto de la Z a la A PROCESO:
Definimos el cdigo binario del alfabeto adems escribimos el cdigo para cada letra en los puertos B y C. Ponemos un retardo de 1 segundo para que se repita el proceso.

SALIDAS:
Las letras desde la Z a la A podemos visualizarlas en el display alfanumrico.

DIAGRAMA DE FLUJO

INICIO

PUERTO B Y C COMO SALIDA

RETARDO DE UN SEGUNDO

VISUALIZACION DE DATOS EN DISPLAY ALFANUMERICO


Ing. Electrnica Informe Analgica II

UNIVERSIDAD POLITCNICA SALESIANA


CDIGO DEL PROGRAMA 7 MIKROBASIC
program practica7 ' Declarations section main: trisb = $0 trisc = $0 ' Main program lazo: portb = %11001011 'z portc = %11010011 delay_ms(1000) portb = %11110111 'y portc = %10110111 delay_ms(1000) portb = %11101101 'x portc = %10110111 delay_ms(1000) portb = %10101100 'w portc = %01111101 delay_ms(1000) portb = %11111111 'v portc = %10110111 delay_ms(1000) portb = %10011010 'u portc = %01111101 delay_ms(1000) portb = %11110111 't portc = %11001011 delay_ms(1000) portb = %01011010 's portc = %01011010 delay_ms(1000) portb = %00111101 'r portc = %01010011 delay_ms(1000) portb = %10011000 'q portc = %01011001 delay_ms(1000) portb = %00111111 'p portc = %01011000 delay_ms(1000) portb = %10011010 'o portc = %01011001 delay_ms(1000) portb = %10111100 'n portc = %00111101 delay_ms(1000) portb = %10111110 'm portc = %00110101 delay_ms(1000) portb = %10011011 'l portc = %01111111 delay_ms(1000) portb = %00111101 'k
Ing. Electrnica Informe Analgica II

UNIVERSIDAD POLITCNICA SALESIANA


portc = %01110111 delay_ms(1000) portb = %10110011 'j portc = %11001011 delay_ms(1000) portb = %11010011 'i portc = %11001011 delay_ms(1000) portb = %00111110 'h portc = %01111100 delay_ms(1000) portb = %00011010 'g portc = %01011010 delay_ms(1000) portb = %00111111 'f portc = %01011011 delay_ms(1000) portb = %00011011 'e portc = %01011010 delay_ms(1000) portb = %00011010 'd portc = %11111100 delay_ms(1000) portb = %10011011'c portc = %01011011 delay_ms(1000) portb = %00011010 'b portc = %01111110 delay_ms(1000) portb = %00111110 'a portc = %01011000 delay_ms(1000) goto lazo end.

SIMULACIN EN PROTEUS

Imagen de la simulacin del problema 7


Ing. Electrnica Informe Analgica II

UNIVERSIDAD POLITCNICA SALESIANA


IMAGEN EN EL PROTOBOARD

Imagen del problema 7 realizado en el Protoboard

Imagen del problema 7 realizado en el Protoboard

Imagen del problema 7 realizado en el Protoboard


Ing. Electrnica Informe Analgica II

UNIVERSIDAD POLITCNICA SALESIANA

Imagen del problema 7 realizado en el Protoboard

Imagen del problema 7 realizado en el Protoboard


PROBLEMA 8. Lgica booleana con microcontrolador PROCESO:
Programamos en el puerto C como entrada y B como salida. La operacin And con las entradas del puertoC 0 y puertoC 1. Los resultados en el puertoB 0. La operacin Or con las entradas del puertoC 2 y puertoC 3. Los resultados en el puertoB 1. La operacin Xor con las entradas del puertoC 4 y puertoC 5. Los resultados en el puertoB 2.

SALIDAS:
El cdigo booleano de las operaciones and, or y xor visualizadas en los leds..

Ing. Electrnica Informe Analgica II

UNIVERSIDAD POLITCNICA SALESIANA


DIAGRAMA DE FLUJO

INICIO

PUERTO C COMO ENTRADA

PUERTO B COMO SALIDA

OPERACIN AND

OPERACIN OR

OPERACIN XOR

VISUALIZACION EN LOS LEDS

CDIGO DEL PROGRAMA 8 MIKROBASIC


program practica8 ' Declarations section trisc=$ff 'puerto c como entradas trisb=$0 'puerto b como salida main: ' Main program portb.0 = portc.0 and portc.1 portb.1 = portc.2 or portc.3 portb.2 = portc.4 xor portc.5
Ing. Electrnica Informe Analgica II

UNIVERSIDAD POLITCNICA SALESIANA


goto main end.

SIMULACIN EN PROTEUS

Imagen de la simulacin del problema 8

Imagen de la simulacin del problema 8


Ing. Electrnica Informe Analgica II

UNIVERSIDAD POLITCNICA SALESIANA

Imagen de la simulacin del problema 8 IMAGEN EN EL PROTOBOARD

Imagen del problema 8 realizado en el Protoboard

Ing. Electrnica Informe Analgica II

UNIVERSIDAD POLITCNICA SALESIANA

Imagen del problema 8 realizado en el Protoboard

Imagen del problema 8 realizado en el Protoboard


OPERACIN AND PUERTO C.0 0 0 1 1 PUERTO C.1 0 1 0 1 PUERTO B.0 0 0 0 1

OPERACIN OR PUERTO C.2 0 0 1 1 PUERTO C.3 0 1 0 1 PUERTO B.1 0 1 1 1


Ing. Electrnica Informe Analgica II

UNIVERSIDAD POLITCNICA SALESIANA


OPERACIN XOR PUERTO C.4 0 0 1 1 PUERTO C.5 0 1 0 1 PUERTO B.2 0 1 1 0

CONCLUSIONES: Al utilizar en programa Mikrobasic la programacin nos resulta ms fcil con el cdigo, para esto debemos aprendernos los cdigos para diferentes procesos. Adems al conocer el funcionamiento del PIC16F877A nos resulta mejor para programar al PIC, sabiendo los pines de los puertos. Al realizar esta prctica pudimos relacionar lo terico con lo prctico al realizar en el programa Mikrobasic con el Protoboard.

BIBLIOGRAFA

Datasheet del PIC16F877A. http://www.monografias.com/trabajos18/descripcion-pic/descripcionpic.shtml#caract. Hojas de prcticas para Laboratorio 1 de Sistemas Microprocesados I.

Ing. Electrnica Informe Analgica II

You might also like

  • Informe Uno
    Informe Uno
    Document8 pages
    Informe Uno
    juan_ruizmp4119580
    No ratings yet
  • Practica 1
    Practica 1
    Document26 pages
    Practica 1
    juan_ruizmp4119580
    No ratings yet
  • Manual básico PDH SDH
    Manual básico PDH SDH
    Document8 pages
    Manual básico PDH SDH
    rodiaz65
    No ratings yet
  • Exposicion PDH SDH
    Exposicion PDH SDH
    Document21 pages
    Exposicion PDH SDH
    fimox
    No ratings yet
  • LM 35
    LM 35
    Document7 pages
    LM 35
    juan_ruizmp4119580
    No ratings yet
  • Inclinometro
    Inclinometro
    Document5 pages
    Inclinometro
    juan_ruizmp4119580
    0% (1)
  • Mapa Conceptual 2
    Mapa Conceptual 2
    Document17 pages
    Mapa Conceptual 2
    juan_ruizmp4119580
    No ratings yet
  • Practica 1
    Practica 1
    Document26 pages
    Practica 1
    juan_ruizmp4119580
    No ratings yet
  • Mapa Conceptual 2
    Mapa Conceptual 2
    Document17 pages
    Mapa Conceptual 2
    juan_ruizmp4119580
    No ratings yet
  • TUTORIAL Carta de Smith
    TUTORIAL Carta de Smith
    Document9 pages
    TUTORIAL Carta de Smith
    Alberto Muñoz
    No ratings yet
  • Mapa Conceptual 2
    Mapa Conceptual 2
    Document17 pages
    Mapa Conceptual 2
    juan_ruizmp4119580
    No ratings yet
  • Osciladores
    Osciladores
    Document12 pages
    Osciladores
    juan_ruizmp4119580
    No ratings yet
  • Texto 3 Etica y Bioetica
    Texto 3 Etica y Bioetica
    Document98 pages
    Texto 3 Etica y Bioetica
    juan_ruizmp4119580
    50% (2)
  • Instrucciones Paper IEEE
    Instrucciones Paper IEEE
    Document3 pages
    Instrucciones Paper IEEE
    NBELTRANCUELLAR
    No ratings yet
  • Carta de Smith
    Carta de Smith
    Document2 pages
    Carta de Smith
    Roberto Canchola
    No ratings yet
  • Radio Frecuencia
    Radio Frecuencia
    Document2 pages
    Radio Frecuencia
    juan_ruizmp4119580
    No ratings yet
  • Informe 9
    Informe 9
    Document9 pages
    Informe 9
    juan_ruizmp4119580
    No ratings yet
  • Informe Filtros
    Informe Filtros
    Document119 pages
    Informe Filtros
    juan_ruizmp4119580
    No ratings yet
  • In For Me 10
    In For Me 10
    Document6 pages
    In For Me 10
    juan_ruizmp4119580
    No ratings yet
  • Informe8 Ya
    Informe8 Ya
    Document11 pages
    Informe8 Ya
    juan_ruizmp4119580
    No ratings yet
  • Practica 2
    Practica 2
    Document23 pages
    Practica 2
    juan_ruizmp4119580
    No ratings yet
  • In For Me 11
    In For Me 11
    Document5 pages
    In For Me 11
    juan_ruizmp4119580
    No ratings yet
  • Test
    Test
    Document10 pages
    Test
    juan_ruizmp4119580
    No ratings yet
  • Informe 1
    Informe 1
    Document34 pages
    Informe 1
    juan_ruizmp4119580
    No ratings yet
  • In For 4
    In For 4
    Document5 pages
    In For 4
    juan_ruizmp4119580
    No ratings yet
  • Informe 1
    Informe 1
    Document34 pages
    Informe 1
    juan_ruizmp4119580
    No ratings yet
  • Informe 1
    Informe 1
    Document34 pages
    Informe 1
    juan_ruizmp4119580
    No ratings yet
  • Informe3 1
    Informe3 1
    Document6 pages
    Informe3 1
    juan_ruizmp4119580
    No ratings yet
  • Informe1 1
    Informe1 1
    Document9 pages
    Informe1 1
    juan_ruizmp4119580
    No ratings yet