SlideShare una empresa de Scribd logo
1 de 26
2010CARLOS OCAMPOFERNANDO ITAS2010-03-12UNIVERSIDAD POLITECNICA SALESIANAPRACTICA #1SISTEMAS MICROPROCESADOS I<br />22288503543300<br />TEMA      Entrada y Salida en el micro controlador PIC.<br />OBJETIVO<br />Utilizar los puertos del micro controlador PIC, como interface digital al<br />             mundo exterior.<br />MARCO TEORICO<br />MIKROBASIC<br />Este compilador es traído gracias a la empresa mikroElectronika, misma que distribuye una serie de compiladores entre los que destacan el ya antes mencionado mikroBasic y mikroC. <br />Probablemente, mikroBasic sea el compilador que soporte más modelos de PICs, ya Que dependiendo del PIC que vayamos a programar existe una versión creada para abarcar la mayoría de PICs de la misma familia.<br />mikroBasic dispone de un extenso grupo de librerías, que están distribuidas en comunicaciones RS-232, RS-485 e I2C; así también como teclados PS/2, conexiones<br />USB, interfaz para LCD, y muchas más.<br />ESCRIBIR EN EL PUERTO B EL VALOR 55H<br />Entradas Número 55h<br />Salidas Código binario del número 55h en el PortB del  microcontrolador.<br />Procesos Escribir el valor 55h en el PortB.<br />               Retardo de 1 segundo.<br />DIAGRAMA DE FLUJO<br />INICIO<br />  <br />RATORDO 1SPORTB= 555CODIGO:<br />program PRACTICA1<br />TRISB=0 'HABILITA EL PUERTO B COMO SALIDA<br />MAIN:      'Parte principal del programa<br />PORTB=$55   'ESCRIBE EN EL PURTO B EL VALOR 55H= 01010101<br />DELAY_MS (1000)  'retardo 1 segundo<br />END.<br />SIMULACION<br />FIGURA #1<br />Ejercicio de aplicación. Escribir en el puerto B el valor AA<br />EntradasNúmero AA<br />SalidasCódigo binario del número AAh en el PortB del microcontrolador.<br />ProcesosEscribir el valor AAh en el PortB.<br />            Retardo de 1 segundo.<br />CODIGO<br />program practica1_2<br />trisb=0<br />main:<br />portb=$AA 'Escribe en el puerto B el valor AAh=10101010<br />delay_ms(1000)<br />end.<br />SIMULACION<br />DIAGRAMA DE FLUJO<br />INICIO<br />  <br />RATORDO 1SPORTB= $AA<br />Ejercicio de aplicación. Escribir en el puerto C el valor F0<br />EntradasNúmero F0<br />SalidasCódigo binario del número F0 en el PortC del microcontrolador.<br />ProcesosEscribir el valor F0 en el PortC.<br />            Retardo de 1 segundo.<br />CODIGO<br />program EJERCICIO1_3<br />TRISC=0 'HABILITA EL PUERTO C COMO SALIDA<br />MAIN:      'Parte principal del programa<br />PORTC=$F0   'ESCRIBE EN EL PURTO C EL VALOR $F0<br />DELAY_MS(1000)  'retardo 1 segundo<br />END.<br />DIAGRAMA DE FLUJO<br />INICIO<br />  <br />RATORDO 1SPORTB= $F0<br />1.4 Leer en el puerto C y escribir en el puerto B<br />EntradasValores de entrada en el PortC.<br />SalidasBits que ingresan por el PortC salen en las patitas del PortB.<br />ProcesosDefinir variable para almacenar los datos ingresados por el PortC.<br />      Habilitar el PortC como entrada y el PortB como salida.<br />Leer bits con el PortC.<br />Guardar los bits que ingresan por el PortC en la variable.<br />Escribir el valor de la variable en el PortB.<br />DIAGRAMA DE FLUJO<br />INICIO<br />DEFINIR VARIABLE<br />trisC=$ff<br />trisB=0<br />portB=valorvalor=portC<br />CODIGO<br />program EJERCICIO1_4<br />dim valor as byte<br />main:<br />lazo:<br />trisC=$ff<br />trisB=0<br />valor=portC<br />portB=valor<br />goto lazo<br />end.<br />SIMULACION<br />1.5 Escribir en un display de 7 segmentos sin utilizar decodificador, un valor ascendente<br />entre 0 y F.<br />EntradasValores de 0 a F<br />SalidasCódigo binario entre 0 y F en el PortB del micro controlador.<br />ProcesosDefinir código binario para cada valor.<br />Escribir el código binario establecido para cada valor en el PortB<br />Retardo 2 segundos.<br />Repetir los tres pasos anteriores hasta llegar a l<br />DIAGRAMA DE FLUJO<br />INICIO<br />PORTB=%00111111<br />   RETARDO 2S <br />                                                          ……………………<br />portb=%01110001<br />    RETARDO 2S<br />CODIGO<br />program practica1_5<br />trisb=$0<br />'a=portb.0, b=portb.1, c=portb.2,'d=portb.3, e=portb.4, f=portb.5, g=portb.6<br />'el display debe ser cátodo común<br />main:<br />lazo:<br />portb=%00111111 'formato para trabajar en binario<br />delay_ms(2000)<br />portb=%00000110<br />delay_ms(2000)<br />portb=%01011011<br />delay_ms(2000)<br />portb=%01001111<br />delay_ms(2000)<br />portb=%01100110<br />delay_ms(2000)<br />portb=%01101101<br />delay_ms(2000)<br />portb=%01111101<br />delay_ms(2000)<br />portb=%00000111<br />delay_ms(2000)<br />portb=%01111111<br />delay_ms(2000)<br />portb=%01100111<br />delay_ms(2000)<br />portb=%01110111<br />delay_ms(2000)<br />portb=%01111100<br />delay_ms(2000)<br />portb=%01011000<br />delay_ms(2000)<br />portb=%01011110<br />delay_ms(2000)<br />portb=%01111001<br />delay_ms(2000)<br />portb=%01110001<br />delay_ms(2000)<br />goto lazo<br />end.<br />SIMULACION<br />1.6 Ejercicio de aplicación. Mediante un display alfanumérico mostrar en orden descendentes las letras del alfabeto de la Z a la A<br />EntradasValores alfanuméricos de la Z a la A<br />SalidasCódigo binario desde la Z a la A en el PortB del microcontrolador.<br />ProcesosDefinir código binario para cada valor.<br />Escribir los 8 primeros bits (a-h) del código binario establecido para cada valor en el PortB.<br />Escribir los últimos bits (i-n) del código binario establecido para cada valor en el PortC.<br />Retardo 1 segundo<br />Repetir los cuatro pasos anteriores hasta llegar a la A<br />DIAGRAMA DE FLUJOINICIO<br />portb=%00001001portc=%00010001<br />   RETARDO 2S <br />                                                          ……………………<br />portb=%00110111portc=%00100010<br />    RETARDO 2S<br />Los leds del display están distribuidos de la siguiente manera:<br />1416050top<br />Los pines del display están distribuidos de la siguiente manera:<br />Los pines del PIC se distribuyen de la siguiente manera:<br />CODIGO<br />program practica1_7<br />trisb=$0<br />trisc=$0<br />main:<br />lazo:<br />portb=%00001001<br />portc=%00010001<br />delay_ms(1000)<br />portb=%01000000<br />portc=%00001001<br />delay_ms(1000)<br />portb=%01000000<br />portc=%00010101<br />delay_ms(1000)<br />portb=%00110110<br />portc=%00010100<br />delay_ms(1000)<br />portb=%00110000<br />portc=%00010001<br />delay_ms(1000)<br />portb=%00111110<br />portc=%00000000<br />delay_ms(1000)<br />portb=%10000001<br />portc=%00001000<br />delay_ms(1000)<br />portb=%00101101<br />portc=%00100010<br />delay_ms(1000)<br />portb=%00110011<br />portc=%00100110<br />delay_ms(1000)<br />portb=%00100111<br />portc=%00100010<br />delay_ms(1000)<br />portb=%00110011<br />portc=%00100010<br />delay_ms(1000)<br />portb=%00111111<br />portc=%00000000<br />delay_ms(1000)<br />portb=%01110110<br />portc=%00000100<br />delay_ms(1000)<br />portb=%01110110<br />portc=%00000001<br />delay_ms(1000)<br />portb=%00111000<br />portc=%00000000<br />delay_ms(1000)<br />portb=%00110000<br />portc=%00100101<br />delay_ms(1000)<br />portb=%00011110<br />portc=%00000000<br />delay_ms(1000)<br />portb=%10001001<br />portc=%00001000<br />delay_ms(1000)<br />portb=%00110110<br />portc=%00100010<br />delay_ms(1000)<br />portb=%00111101<br />portc=%00000010<br />delay_ms(1000)<br />portb=%00110001<br />portc=%00100010<br />delay_ms(1000)<br />portb=%00111001<br />portc=%00100010<br />delay_ms(1000)<br />portb=%00011110<br />portc=%00100010<br />delay_ms(1000)<br />portb=%00111001<br />portc=%00000000<br />delay_ms(1000)<br />portb=%00111100<br />portc=%00100010<br />delay_ms(1000)<br />portb=%00110111<br />portc=%00100010<br />delay_ms(1000)<br />goto lazo<br />end.<br />SIMULACION<br />1.7 Lógica booleana con micro controlador<br />EntradasValores en el PortC<br />SalidasCódigo binario en el PortB del micro controlador.<br />ProcesosDefinir código binario para cada valor.<br />Escribir en el PortB.0 PortC.0 and PortC.1<br />Escribir en el PortB.1 PortC.2 or PortC.3<br />Escribir en el PortB.2 PortC.4 xor PortC.5<br />DIAGRAMA DE FLUJO<br />INICIO<br />PORTB.0=PORTC.0 AND PORTC.1<br />   PORTB.1=PORTC.2 OR PORTC.3<br />PORTB.2=PORTC.4 XOR PORTC.51<br />CODIGO<br />program practica1_8<br />trisc=$FF 'Puerto C como entradas<br />trisb=$0 'Puerto B como salidas<br />main:<br />portb.0=portc.0 and portc.1<br />portb.1=portc.2 or portc.3<br />portb.2=portc.4 xor portc.5<br />goto main<br />end.<br />SIMULACION<br />CONCLUSIONES<br />La programación en mikrobasic maneja un lenguaje secillo de entender lo cual permite  realizar diversas aplicacione.<br />Los puertos del pic pueden ser utilizados como entradas  o como salidas dependiendo el uso que se le quiera dar.<br />La forma de carga el programa hecho en mikrobasic  se lo hace con el archivo .hex y utilizando la programadora de PIC que se tenga.<br />RECOMENDACIONES<br />Para que funcione el PIC es indispensable colocar el cristal de lo contrario asi este cargado el programa en el PIC no se visualizara ningún resultado.<br />Se debe tener el manual del PIC que se utilice para saber la conexión adecuada de los pines, el manual se lo puede bajar de internet.<br />BIBLIOGRAFIA<br />Hoja de practicas de microcontroladores PIC<br />Manual de microcontrolador PIC 16f877a<br />
Entrada y salida digital con PIC16F877A
Entrada y salida digital con PIC16F877A
Entrada y salida digital con PIC16F877A
Entrada y salida digital con PIC16F877A
Entrada y salida digital con PIC16F877A
Entrada y salida digital con PIC16F877A
Entrada y salida digital con PIC16F877A
Entrada y salida digital con PIC16F877A
Entrada y salida digital con PIC16F877A
Entrada y salida digital con PIC16F877A
Entrada y salida digital con PIC16F877A
Entrada y salida digital con PIC16F877A
Entrada y salida digital con PIC16F877A
Entrada y salida digital con PIC16F877A
Entrada y salida digital con PIC16F877A
Entrada y salida digital con PIC16F877A
Entrada y salida digital con PIC16F877A
Entrada y salida digital con PIC16F877A
Entrada y salida digital con PIC16F877A
Entrada y salida digital con PIC16F877A
Entrada y salida digital con PIC16F877A
Entrada y salida digital con PIC16F877A
Entrada y salida digital con PIC16F877A
Entrada y salida digital con PIC16F877A
Entrada y salida digital con PIC16F877A

Más contenido relacionado

Destacado

El argentino n# 2619 22 12-111
El argentino n# 2619 22 12-111El argentino n# 2619 22 12-111
El argentino n# 2619 22 12-111fede_bour
 
Mi autobiografía horacio
Mi          autobiografía horacioMi          autobiografía horacio
Mi autobiografía horacio10uchiha
 
Características neuropsicológicas del trastorno bipolar i
Características neuropsicológicas del trastorno bipolar iCaracterísticas neuropsicológicas del trastorno bipolar i
Características neuropsicológicas del trastorno bipolar ivitriolum
 
The challenges of adolescent girls sexual maturation to educational parity in...
The challenges of adolescent girls sexual maturation to educational parity in...The challenges of adolescent girls sexual maturation to educational parity in...
The challenges of adolescent girls sexual maturation to educational parity in...Alexander Decker
 
Story telling rubric
Story telling rubricStory telling rubric
Story telling rubricdburke75
 
Módulo vi contaminación atmosférica-1
Módulo vi contaminación atmosférica-1Módulo vi contaminación atmosférica-1
Módulo vi contaminación atmosférica-1Vanessa Valdés
 
Barr invshock v2_slides
Barr invshock v2_slidesBarr invshock v2_slides
Barr invshock v2_slidesstephenjbarr
 
Propiedades magnéticas de la materia
Propiedades magnéticas de la materiaPropiedades magnéticas de la materia
Propiedades magnéticas de la materiaeduardo.go
 
Coinfección TB/VIH en el mundo
Coinfección TB/VIH en el mundoCoinfección TB/VIH en el mundo
Coinfección TB/VIH en el mundoAymen76
 
Les 05 Create Bu
Les 05 Create BuLes 05 Create Bu
Les 05 Create Buvivaankumar
 
Los sistemas-de-informacion-de-la-mercadotecnia-sim-100510214403-phpapp02
Los sistemas-de-informacion-de-la-mercadotecnia-sim-100510214403-phpapp02Los sistemas-de-informacion-de-la-mercadotecnia-sim-100510214403-phpapp02
Los sistemas-de-informacion-de-la-mercadotecnia-sim-100510214403-phpapp02Duarte Encarnacion Encarnacion
 
Force Control Basics
Force Control BasicsForce Control Basics
Force Control BasicsWeijun Wang
 
Gestion proyectos ciclosvida-gestiondelcambio-ramoncosta-cip-20101014-pt-valles
Gestion proyectos ciclosvida-gestiondelcambio-ramoncosta-cip-20101014-pt-vallesGestion proyectos ciclosvida-gestiondelcambio-ramoncosta-cip-20101014-pt-valles
Gestion proyectos ciclosvida-gestiondelcambio-ramoncosta-cip-20101014-pt-vallesRamon Costa i Pujol
 
Plataforma de monitoreo zabbix
Plataforma de monitoreo zabbixPlataforma de monitoreo zabbix
Plataforma de monitoreo zabbixDaniel Patiño
 
Relatorio Ap Energias Renovaveis Inquerito
Relatorio Ap Energias Renovaveis InqueritoRelatorio Ap Energias Renovaveis Inquerito
Relatorio Ap Energias Renovaveis InqueritoNuno Santos
 
HCI 2014 (2 of 10): Human Factor. Users
HCI 2014 (2 of 10): Human Factor. UsersHCI 2014 (2 of 10): Human Factor. Users
HCI 2014 (2 of 10): Human Factor. UsersSabin Buraga
 

Destacado (20)

El argentino n# 2619 22 12-111
El argentino n# 2619 22 12-111El argentino n# 2619 22 12-111
El argentino n# 2619 22 12-111
 
Mi autobiografía horacio
Mi          autobiografía horacioMi          autobiografía horacio
Mi autobiografía horacio
 
DBA-HEM 10th Anniversary Simon Marginson
DBA-HEM 10th Anniversary Simon MarginsonDBA-HEM 10th Anniversary Simon Marginson
DBA-HEM 10th Anniversary Simon Marginson
 
Características neuropsicológicas del trastorno bipolar i
Características neuropsicológicas del trastorno bipolar iCaracterísticas neuropsicológicas del trastorno bipolar i
Características neuropsicológicas del trastorno bipolar i
 
The challenges of adolescent girls sexual maturation to educational parity in...
The challenges of adolescent girls sexual maturation to educational parity in...The challenges of adolescent girls sexual maturation to educational parity in...
The challenges of adolescent girls sexual maturation to educational parity in...
 
Story telling rubric
Story telling rubricStory telling rubric
Story telling rubric
 
cromosomas definicion
cromosomas definicioncromosomas definicion
cromosomas definicion
 
Módulo vi contaminación atmosférica-1
Módulo vi contaminación atmosférica-1Módulo vi contaminación atmosférica-1
Módulo vi contaminación atmosférica-1
 
Barr invshock v2_slides
Barr invshock v2_slidesBarr invshock v2_slides
Barr invshock v2_slides
 
Less15 backups
Less15 backupsLess15 backups
Less15 backups
 
Propiedades magnéticas de la materia
Propiedades magnéticas de la materiaPropiedades magnéticas de la materia
Propiedades magnéticas de la materia
 
Coinfección TB/VIH en el mundo
Coinfección TB/VIH en el mundoCoinfección TB/VIH en el mundo
Coinfección TB/VIH en el mundo
 
Les 05 Create Bu
Les 05 Create BuLes 05 Create Bu
Les 05 Create Bu
 
Quality Control for Masonry
Quality Control for MasonryQuality Control for Masonry
Quality Control for Masonry
 
Los sistemas-de-informacion-de-la-mercadotecnia-sim-100510214403-phpapp02
Los sistemas-de-informacion-de-la-mercadotecnia-sim-100510214403-phpapp02Los sistemas-de-informacion-de-la-mercadotecnia-sim-100510214403-phpapp02
Los sistemas-de-informacion-de-la-mercadotecnia-sim-100510214403-phpapp02
 
Force Control Basics
Force Control BasicsForce Control Basics
Force Control Basics
 
Gestion proyectos ciclosvida-gestiondelcambio-ramoncosta-cip-20101014-pt-valles
Gestion proyectos ciclosvida-gestiondelcambio-ramoncosta-cip-20101014-pt-vallesGestion proyectos ciclosvida-gestiondelcambio-ramoncosta-cip-20101014-pt-valles
Gestion proyectos ciclosvida-gestiondelcambio-ramoncosta-cip-20101014-pt-valles
 
Plataforma de monitoreo zabbix
Plataforma de monitoreo zabbixPlataforma de monitoreo zabbix
Plataforma de monitoreo zabbix
 
Relatorio Ap Energias Renovaveis Inquerito
Relatorio Ap Energias Renovaveis InqueritoRelatorio Ap Energias Renovaveis Inquerito
Relatorio Ap Energias Renovaveis Inquerito
 
HCI 2014 (2 of 10): Human Factor. Users
HCI 2014 (2 of 10): Human Factor. UsersHCI 2014 (2 of 10): Human Factor. Users
HCI 2014 (2 of 10): Human Factor. Users
 

Similar a Entrada y salida digital con PIC16F877A

28812521 Practica1 1
28812521 Practica1 128812521 Practica1 1
28812521 Practica1 1carlos
 
Entrada Y Salida En El Microcontrolador Pic
Entrada Y Salida En El Microcontrolador PicEntrada Y Salida En El Microcontrolador Pic
Entrada Y Salida En El Microcontrolador PicLuis Alejandro Hernandez
 
E N T R A D A Y S A L I D A E N E L M I C R O C O N T R O L A D O R P I C
E N T R A D A  Y  S A L I D A  E N  E L  M I C R O C O N T R O L A D O R  P I CE N T R A D A  Y  S A L I D A  E N  E L  M I C R O C O N T R O L A D O R  P I C
E N T R A D A Y S A L I D A E N E L M I C R O C O N T R O L A D O R P I CLuis Alejandro Hernandez
 
Entrada Y Salida En El Microcontrolador Pic
Entrada Y Salida En El Microcontrolador PicEntrada Y Salida En El Microcontrolador Pic
Entrada Y Salida En El Microcontrolador Picguest6ec450
 
Entrada Y Salida En El Microcontrolador Pic
Entrada Y Salida En El Microcontrolador PicEntrada Y Salida En El Microcontrolador Pic
Entrada Y Salida En El Microcontrolador PicLuis Alejandro Hernandez
 
Micc final feb04_2010_soluc
Micc final feb04_2010_solucMicc final feb04_2010_soluc
Micc final feb04_2010_solucJair BG
 
Micc final feb04_2010_soluc
Micc final feb04_2010_solucMicc final feb04_2010_soluc
Micc final feb04_2010_solucJair BG
 
Digitalio config 16f887a_886
Digitalio config 16f887a_886Digitalio config 16f887a_886
Digitalio config 16f887a_886luisvargasquinto
 
Curso de lenguaje c para microcontroladores pic dia 1(2)(2)(2)(2)(2)(2)
Curso de lenguaje c para microcontroladores pic dia 1(2)(2)(2)(2)(2)(2)Curso de lenguaje c para microcontroladores pic dia 1(2)(2)(2)(2)(2)(2)
Curso de lenguaje c para microcontroladores pic dia 1(2)(2)(2)(2)(2)(2)Franz Amaya
 
Micc mej feb18_2010
Micc mej feb18_2010Micc mej feb18_2010
Micc mej feb18_2010Jair BG
 
Micc mej sept16_2010
Micc mej sept16_2010Micc mej sept16_2010
Micc mej sept16_2010Jair BG
 
Micc mejoramiento feb_28_2009_soluc
Micc mejoramiento feb_28_2009_solucMicc mejoramiento feb_28_2009_soluc
Micc mejoramiento feb_28_2009_solucJair BG
 
Micc mej feb18_2010_solucion
Micc mej feb18_2010_solucionMicc mej feb18_2010_solucion
Micc mej feb18_2010_solucionJair BG
 
Micc final feb14_2009
Micc final feb14_2009Micc final feb14_2009
Micc final feb14_2009Jair BG
 
Micc final sept05_2009
Micc final sept05_2009Micc final sept05_2009
Micc final sept05_2009Jair BG
 
Dialnet programando microcontroladorespicenlenguajec-4587553
Dialnet programando microcontroladorespicenlenguajec-4587553Dialnet programando microcontroladorespicenlenguajec-4587553
Dialnet programando microcontroladorespicenlenguajec-4587553RoxanneLamas2
 
Proyecto micro
Proyecto microProyecto micro
Proyecto microjhompix
 

Similar a Entrada y salida digital con PIC16F877A (20)

28812521 Practica1 1
28812521 Practica1 128812521 Practica1 1
28812521 Practica1 1
 
Entrada Y Salida En El Microcontrolador Pic
Entrada Y Salida En El Microcontrolador PicEntrada Y Salida En El Microcontrolador Pic
Entrada Y Salida En El Microcontrolador Pic
 
E N T R A D A Y S A L I D A E N E L M I C R O C O N T R O L A D O R P I C
E N T R A D A  Y  S A L I D A  E N  E L  M I C R O C O N T R O L A D O R  P I CE N T R A D A  Y  S A L I D A  E N  E L  M I C R O C O N T R O L A D O R  P I C
E N T R A D A Y S A L I D A E N E L M I C R O C O N T R O L A D O R P I C
 
Entrada Y Salida En El Microcontrolador Pic
Entrada Y Salida En El Microcontrolador PicEntrada Y Salida En El Microcontrolador Pic
Entrada Y Salida En El Microcontrolador Pic
 
Entrada Y Salida En El Microcontrolador Pic
Entrada Y Salida En El Microcontrolador PicEntrada Y Salida En El Microcontrolador Pic
Entrada Y Salida En El Microcontrolador Pic
 
Micc final feb04_2010_soluc
Micc final feb04_2010_solucMicc final feb04_2010_soluc
Micc final feb04_2010_soluc
 
Micc final feb04_2010_soluc
Micc final feb04_2010_solucMicc final feb04_2010_soluc
Micc final feb04_2010_soluc
 
Digitalio config 16f887a_886
Digitalio config 16f887a_886Digitalio config 16f887a_886
Digitalio config 16f887a_886
 
Curso de lenguaje c para microcontroladores pic dia 1(2)(2)(2)(2)(2)(2)
Curso de lenguaje c para microcontroladores pic dia 1(2)(2)(2)(2)(2)(2)Curso de lenguaje c para microcontroladores pic dia 1(2)(2)(2)(2)(2)(2)
Curso de lenguaje c para microcontroladores pic dia 1(2)(2)(2)(2)(2)(2)
 
Micc mej feb18_2010
Micc mej feb18_2010Micc mej feb18_2010
Micc mej feb18_2010
 
Tarea final
Tarea finalTarea final
Tarea final
 
Micc mej sept16_2010
Micc mej sept16_2010Micc mej sept16_2010
Micc mej sept16_2010
 
Micc mejoramiento feb_28_2009_soluc
Micc mejoramiento feb_28_2009_solucMicc mejoramiento feb_28_2009_soluc
Micc mejoramiento feb_28_2009_soluc
 
Micc mej feb18_2010_solucion
Micc mej feb18_2010_solucionMicc mej feb18_2010_solucion
Micc mej feb18_2010_solucion
 
Micc final feb14_2009
Micc final feb14_2009Micc final feb14_2009
Micc final feb14_2009
 
Micc final sept05_2009
Micc final sept05_2009Micc final sept05_2009
Micc final sept05_2009
 
El conversor adc
El conversor adcEl conversor adc
El conversor adc
 
Dialnet programando microcontroladorespicenlenguajec-4587553
Dialnet programando microcontroladorespicenlenguajec-4587553Dialnet programando microcontroladorespicenlenguajec-4587553
Dialnet programando microcontroladorespicenlenguajec-4587553
 
Proyecto micro
Proyecto microProyecto micro
Proyecto micro
 
Teoria lcd
Teoria lcd Teoria lcd
Teoria lcd
 

Más de carlos

28931236 Practica2
28931236 Practica228931236 Practica2
28931236 Practica2carlos
 
28931236 Practica2
28931236 Practica228931236 Practica2
28931236 Practica2carlos
 
28931236 Practica2
28931236 Practica228931236 Practica2
28931236 Practica2carlos
 
Practica2
Practica2Practica2
Practica2carlos
 
Practica2
Practica2Practica2
Practica2carlos
 
Practica1 1
Practica1 1Practica1 1
Practica1 1carlos
 
Practica1 1
Practica1 1Practica1 1
Practica1 1carlos
 
28307034 La Familia De Micro Control Adores Pic
28307034 La Familia De Micro Control Adores Pic28307034 La Familia De Micro Control Adores Pic
28307034 La Familia De Micro Control Adores Piccarlos
 
28307034 La Familia De Micro Control Adores Pic
28307034 La Familia De Micro Control Adores Pic28307034 La Familia De Micro Control Adores Pic
28307034 La Familia De Micro Control Adores Piccarlos
 

Más de carlos (9)

28931236 Practica2
28931236 Practica228931236 Practica2
28931236 Practica2
 
28931236 Practica2
28931236 Practica228931236 Practica2
28931236 Practica2
 
28931236 Practica2
28931236 Practica228931236 Practica2
28931236 Practica2
 
Practica2
Practica2Practica2
Practica2
 
Practica2
Practica2Practica2
Practica2
 
Practica1 1
Practica1 1Practica1 1
Practica1 1
 
Practica1 1
Practica1 1Practica1 1
Practica1 1
 
28307034 La Familia De Micro Control Adores Pic
28307034 La Familia De Micro Control Adores Pic28307034 La Familia De Micro Control Adores Pic
28307034 La Familia De Micro Control Adores Pic
 
28307034 La Familia De Micro Control Adores Pic
28307034 La Familia De Micro Control Adores Pic28307034 La Familia De Micro Control Adores Pic
28307034 La Familia De Micro Control Adores Pic
 

Entrada y salida digital con PIC16F877A

  • 1. 2010CARLOS OCAMPOFERNANDO ITAS2010-03-12UNIVERSIDAD POLITECNICA SALESIANAPRACTICA #1SISTEMAS MICROPROCESADOS I<br />22288503543300<br />TEMA Entrada y Salida en el micro controlador PIC.<br />OBJETIVO<br />Utilizar los puertos del micro controlador PIC, como interface digital al<br /> mundo exterior.<br />MARCO TEORICO<br />MIKROBASIC<br />Este compilador es traído gracias a la empresa mikroElectronika, misma que distribuye una serie de compiladores entre los que destacan el ya antes mencionado mikroBasic y mikroC. <br />Probablemente, mikroBasic sea el compilador que soporte más modelos de PICs, ya Que dependiendo del PIC que vayamos a programar existe una versión creada para abarcar la mayoría de PICs de la misma familia.<br />mikroBasic dispone de un extenso grupo de librerías, que están distribuidas en comunicaciones RS-232, RS-485 e I2C; así también como teclados PS/2, conexiones<br />USB, interfaz para LCD, y muchas más.<br />ESCRIBIR EN EL PUERTO B EL VALOR 55H<br />Entradas Número 55h<br />Salidas Código binario del número 55h en el PortB del microcontrolador.<br />Procesos Escribir el valor 55h en el PortB.<br /> Retardo de 1 segundo.<br />DIAGRAMA DE FLUJO<br />INICIO<br /> <br />RATORDO 1SPORTB= 555CODIGO:<br />program PRACTICA1<br />TRISB=0 'HABILITA EL PUERTO B COMO SALIDA<br />MAIN: 'Parte principal del programa<br />PORTB=$55 'ESCRIBE EN EL PURTO B EL VALOR 55H= 01010101<br />DELAY_MS (1000) 'retardo 1 segundo<br />END.<br />SIMULACION<br />FIGURA #1<br />Ejercicio de aplicación. Escribir en el puerto B el valor AA<br />EntradasNúmero AA<br />SalidasCódigo binario del número AAh en el PortB del microcontrolador.<br />ProcesosEscribir el valor AAh en el PortB.<br /> Retardo de 1 segundo.<br />CODIGO<br />program practica1_2<br />trisb=0<br />main:<br />portb=$AA 'Escribe en el puerto B el valor AAh=10101010<br />delay_ms(1000)<br />end.<br />SIMULACION<br />DIAGRAMA DE FLUJO<br />INICIO<br /> <br />RATORDO 1SPORTB= $AA<br />Ejercicio de aplicación. Escribir en el puerto C el valor F0<br />EntradasNúmero F0<br />SalidasCódigo binario del número F0 en el PortC del microcontrolador.<br />ProcesosEscribir el valor F0 en el PortC.<br /> Retardo de 1 segundo.<br />CODIGO<br />program EJERCICIO1_3<br />TRISC=0 'HABILITA EL PUERTO C COMO SALIDA<br />MAIN: 'Parte principal del programa<br />PORTC=$F0 'ESCRIBE EN EL PURTO C EL VALOR $F0<br />DELAY_MS(1000) 'retardo 1 segundo<br />END.<br />DIAGRAMA DE FLUJO<br />INICIO<br /> <br />RATORDO 1SPORTB= $F0<br />1.4 Leer en el puerto C y escribir en el puerto B<br />EntradasValores de entrada en el PortC.<br />SalidasBits que ingresan por el PortC salen en las patitas del PortB.<br />ProcesosDefinir variable para almacenar los datos ingresados por el PortC.<br /> Habilitar el PortC como entrada y el PortB como salida.<br />Leer bits con el PortC.<br />Guardar los bits que ingresan por el PortC en la variable.<br />Escribir el valor de la variable en el PortB.<br />DIAGRAMA DE FLUJO<br />INICIO<br />DEFINIR VARIABLE<br />trisC=$ff<br />trisB=0<br />portB=valorvalor=portC<br />CODIGO<br />program EJERCICIO1_4<br />dim valor as byte<br />main:<br />lazo:<br />trisC=$ff<br />trisB=0<br />valor=portC<br />portB=valor<br />goto lazo<br />end.<br />SIMULACION<br />1.5 Escribir en un display de 7 segmentos sin utilizar decodificador, un valor ascendente<br />entre 0 y F.<br />EntradasValores de 0 a F<br />SalidasCódigo binario entre 0 y F en el PortB del micro controlador.<br />ProcesosDefinir código binario para cada valor.<br />Escribir el código binario establecido para cada valor en el PortB<br />Retardo 2 segundos.<br />Repetir los tres pasos anteriores hasta llegar a l<br />DIAGRAMA DE FLUJO<br />INICIO<br />PORTB=%00111111<br /> RETARDO 2S <br /> ……………………<br />portb=%01110001<br /> RETARDO 2S<br />CODIGO<br />program practica1_5<br />trisb=$0<br />'a=portb.0, b=portb.1, c=portb.2,'d=portb.3, e=portb.4, f=portb.5, g=portb.6<br />'el display debe ser cátodo común<br />main:<br />lazo:<br />portb=%00111111 'formato para trabajar en binario<br />delay_ms(2000)<br />portb=%00000110<br />delay_ms(2000)<br />portb=%01011011<br />delay_ms(2000)<br />portb=%01001111<br />delay_ms(2000)<br />portb=%01100110<br />delay_ms(2000)<br />portb=%01101101<br />delay_ms(2000)<br />portb=%01111101<br />delay_ms(2000)<br />portb=%00000111<br />delay_ms(2000)<br />portb=%01111111<br />delay_ms(2000)<br />portb=%01100111<br />delay_ms(2000)<br />portb=%01110111<br />delay_ms(2000)<br />portb=%01111100<br />delay_ms(2000)<br />portb=%01011000<br />delay_ms(2000)<br />portb=%01011110<br />delay_ms(2000)<br />portb=%01111001<br />delay_ms(2000)<br />portb=%01110001<br />delay_ms(2000)<br />goto lazo<br />end.<br />SIMULACION<br />1.6 Ejercicio de aplicación. Mediante un display alfanumérico mostrar en orden descendentes las letras del alfabeto de la Z a la A<br />EntradasValores alfanuméricos de la Z a la A<br />SalidasCódigo binario desde la Z a la A en el PortB del microcontrolador.<br />ProcesosDefinir código binario para cada valor.<br />Escribir los 8 primeros bits (a-h) del código binario establecido para cada valor en el PortB.<br />Escribir los últimos bits (i-n) del código binario establecido para cada valor en el PortC.<br />Retardo 1 segundo<br />Repetir los cuatro pasos anteriores hasta llegar a la A<br />DIAGRAMA DE FLUJOINICIO<br />portb=%00001001portc=%00010001<br /> RETARDO 2S <br /> ……………………<br />portb=%00110111portc=%00100010<br /> RETARDO 2S<br />Los leds del display están distribuidos de la siguiente manera:<br />1416050top<br />Los pines del display están distribuidos de la siguiente manera:<br />Los pines del PIC se distribuyen de la siguiente manera:<br />CODIGO<br />program practica1_7<br />trisb=$0<br />trisc=$0<br />main:<br />lazo:<br />portb=%00001001<br />portc=%00010001<br />delay_ms(1000)<br />portb=%01000000<br />portc=%00001001<br />delay_ms(1000)<br />portb=%01000000<br />portc=%00010101<br />delay_ms(1000)<br />portb=%00110110<br />portc=%00010100<br />delay_ms(1000)<br />portb=%00110000<br />portc=%00010001<br />delay_ms(1000)<br />portb=%00111110<br />portc=%00000000<br />delay_ms(1000)<br />portb=%10000001<br />portc=%00001000<br />delay_ms(1000)<br />portb=%00101101<br />portc=%00100010<br />delay_ms(1000)<br />portb=%00110011<br />portc=%00100110<br />delay_ms(1000)<br />portb=%00100111<br />portc=%00100010<br />delay_ms(1000)<br />portb=%00110011<br />portc=%00100010<br />delay_ms(1000)<br />portb=%00111111<br />portc=%00000000<br />delay_ms(1000)<br />portb=%01110110<br />portc=%00000100<br />delay_ms(1000)<br />portb=%01110110<br />portc=%00000001<br />delay_ms(1000)<br />portb=%00111000<br />portc=%00000000<br />delay_ms(1000)<br />portb=%00110000<br />portc=%00100101<br />delay_ms(1000)<br />portb=%00011110<br />portc=%00000000<br />delay_ms(1000)<br />portb=%10001001<br />portc=%00001000<br />delay_ms(1000)<br />portb=%00110110<br />portc=%00100010<br />delay_ms(1000)<br />portb=%00111101<br />portc=%00000010<br />delay_ms(1000)<br />portb=%00110001<br />portc=%00100010<br />delay_ms(1000)<br />portb=%00111001<br />portc=%00100010<br />delay_ms(1000)<br />portb=%00011110<br />portc=%00100010<br />delay_ms(1000)<br />portb=%00111001<br />portc=%00000000<br />delay_ms(1000)<br />portb=%00111100<br />portc=%00100010<br />delay_ms(1000)<br />portb=%00110111<br />portc=%00100010<br />delay_ms(1000)<br />goto lazo<br />end.<br />SIMULACION<br />1.7 Lógica booleana con micro controlador<br />EntradasValores en el PortC<br />SalidasCódigo binario en el PortB del micro controlador.<br />ProcesosDefinir código binario para cada valor.<br />Escribir en el PortB.0 PortC.0 and PortC.1<br />Escribir en el PortB.1 PortC.2 or PortC.3<br />Escribir en el PortB.2 PortC.4 xor PortC.5<br />DIAGRAMA DE FLUJO<br />INICIO<br />PORTB.0=PORTC.0 AND PORTC.1<br /> PORTB.1=PORTC.2 OR PORTC.3<br />PORTB.2=PORTC.4 XOR PORTC.51<br />CODIGO<br />program practica1_8<br />trisc=$FF 'Puerto C como entradas<br />trisb=$0 'Puerto B como salidas<br />main:<br />portb.0=portc.0 and portc.1<br />portb.1=portc.2 or portc.3<br />portb.2=portc.4 xor portc.5<br />goto main<br />end.<br />SIMULACION<br />CONCLUSIONES<br />La programación en mikrobasic maneja un lenguaje secillo de entender lo cual permite realizar diversas aplicacione.<br />Los puertos del pic pueden ser utilizados como entradas o como salidas dependiendo el uso que se le quiera dar.<br />La forma de carga el programa hecho en mikrobasic se lo hace con el archivo .hex y utilizando la programadora de PIC que se tenga.<br />RECOMENDACIONES<br />Para que funcione el PIC es indispensable colocar el cristal de lo contrario asi este cargado el programa en el PIC no se visualizara ningún resultado.<br />Se debe tener el manual del PIC que se utilice para saber la conexión adecuada de los pines, el manual se lo puede bajar de internet.<br />BIBLIOGRAFIA<br />Hoja de practicas de microcontroladores PIC<br />Manual de microcontrolador PIC 16f877a<br />