SlideShare une entreprise Scribd logo
1  sur  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 />
Practica1 1
Practica1 1
Practica1 1
Practica1 1
Practica1 1
Practica1 1
Practica1 1
Practica1 1
Practica1 1
Practica1 1
Practica1 1
Practica1 1
Practica1 1
Practica1 1
Practica1 1
Practica1 1
Practica1 1
Practica1 1
Practica1 1
Practica1 1
Practica1 1
Practica1 1
Practica1 1
Practica1 1
Practica1 1

Contenu connexe

En vedette

Tutorial de programacion en c para pic16 f877a
Tutorial de programacion en c para pic16 f877aTutorial de programacion en c para pic16 f877a
Tutorial de programacion en c para pic16 f877aCarlos Buitron Quispe
 
Curso de programacion en c++ para microcontroladores pic 16 f87xx
Curso de programacion en c++ para microcontroladores pic 16 f87xxCurso de programacion en c++ para microcontroladores pic 16 f87xx
Curso de programacion en c++ para microcontroladores pic 16 f87xxfreddymadriz
 
Microcontroladores pic (josé mª angulo usategui, ignacio angulo martínez)
Microcontroladores pic (josé mª angulo usategui, ignacio angulo martínez)Microcontroladores pic (josé mª angulo usategui, ignacio angulo martínez)
Microcontroladores pic (josé mª angulo usategui, ignacio angulo martínez)Miguel Angel Corona Lòpez
 
Microcontroladores pic diseño practico de aplicaciones
Microcontroladores pic diseño practico de aplicacionesMicrocontroladores pic diseño practico de aplicaciones
Microcontroladores pic diseño practico de aplicacionesCarlos Tovar
 
Deteccion-y-comprobacion-de-errores-mediante-comprobacion-ciclica
Deteccion-y-comprobacion-de-errores-mediante-comprobacion-ciclicaDeteccion-y-comprobacion-de-errores-mediante-comprobacion-ciclica
Deteccion-y-comprobacion-de-errores-mediante-comprobacion-ciclicaSabino Chalen Balon
 
Microcontroladores 101108114327-phpapp01
Microcontroladores 101108114327-phpapp01Microcontroladores 101108114327-phpapp01
Microcontroladores 101108114327-phpapp01MARTO3000
 
catálogo de componentes electrónicos
 catálogo de componentes electrónicos  catálogo de componentes electrónicos
catálogo de componentes electrónicos Andres Fallas
 
Presentación1
Presentación1Presentación1
Presentación1Mitch Rc
 
Electricidad electrónica
Electricidad electrónicaElectricidad electrónica
Electricidad electrónicaalmocsif
 
Minicursoelectricidaddomestica05julio2013 150712052554-lva1-app6891
Minicursoelectricidaddomestica05julio2013 150712052554-lva1-app6891Minicursoelectricidaddomestica05julio2013 150712052554-lva1-app6891
Minicursoelectricidaddomestica05julio2013 150712052554-lva1-app6891jhair salas
 
CONTROL DE LA VELOCIDAD DE UN MOTOR DC CON ENCODER
CONTROL DE LA VELOCIDAD DE UN MOTOR DC CON ENCODERCONTROL DE LA VELOCIDAD DE UN MOTOR DC CON ENCODER
CONTROL DE LA VELOCIDAD DE UN MOTOR DC CON ENCODERJuan Manuel Espinoza Bullon
 
137343953 lectura-e-interpretacion-de-planos-electricos(1)
137343953 lectura-e-interpretacion-de-planos-electricos(1)137343953 lectura-e-interpretacion-de-planos-electricos(1)
137343953 lectura-e-interpretacion-de-planos-electricos(1)Arqui Tecto Papudo
 
Introducción a La Programación En C
Introducción a La Programación En CIntroducción a La Programación En C
Introducción a La Programación En Cpainni
 
Puertos de entrada/salida
Puertos de entrada/salidaPuertos de entrada/salida
Puertos de entrada/salidatecautind
 
Interfas rs 232
Interfas rs 232Interfas rs 232
Interfas rs 232tgcuysito
 

En vedette (20)

Tutorial de programacion en c para pic16 f877a
Tutorial de programacion en c para pic16 f877aTutorial de programacion en c para pic16 f877a
Tutorial de programacion en c para pic16 f877a
 
Curso de programacion en c++ para microcontroladores pic 16 f87xx
Curso de programacion en c++ para microcontroladores pic 16 f87xxCurso de programacion en c++ para microcontroladores pic 16 f87xx
Curso de programacion en c++ para microcontroladores pic 16 f87xx
 
Microcontroladores pic (josé mª angulo usategui, ignacio angulo martínez)
Microcontroladores pic (josé mª angulo usategui, ignacio angulo martínez)Microcontroladores pic (josé mª angulo usategui, ignacio angulo martínez)
Microcontroladores pic (josé mª angulo usategui, ignacio angulo martínez)
 
Microcontroladores pic diseño practico de aplicaciones
Microcontroladores pic diseño practico de aplicacionesMicrocontroladores pic diseño practico de aplicaciones
Microcontroladores pic diseño practico de aplicaciones
 
La contaminacion del agua
La contaminacion del aguaLa contaminacion del agua
La contaminacion del agua
 
Deteccion-y-comprobacion-de-errores-mediante-comprobacion-ciclica
Deteccion-y-comprobacion-de-errores-mediante-comprobacion-ciclicaDeteccion-y-comprobacion-de-errores-mediante-comprobacion-ciclica
Deteccion-y-comprobacion-de-errores-mediante-comprobacion-ciclica
 
Microcontroladores 101108114327-phpapp01
Microcontroladores 101108114327-phpapp01Microcontroladores 101108114327-phpapp01
Microcontroladores 101108114327-phpapp01
 
catálogo de componentes electrónicos
 catálogo de componentes electrónicos  catálogo de componentes electrónicos
catálogo de componentes electrónicos
 
Guia de robotica v2
Guia de robotica v2Guia de robotica v2
Guia de robotica v2
 
Presentación1
Presentación1Presentación1
Presentación1
 
1 er bimestre manual de robotica
1 er bimestre   manual de robotica1 er bimestre   manual de robotica
1 er bimestre manual de robotica
 
Electricidad electrónica
Electricidad electrónicaElectricidad electrónica
Electricidad electrónica
 
232
232232
232
 
Minicursoelectricidaddomestica05julio2013 150712052554-lva1-app6891
Minicursoelectricidaddomestica05julio2013 150712052554-lva1-app6891Minicursoelectricidaddomestica05julio2013 150712052554-lva1-app6891
Minicursoelectricidaddomestica05julio2013 150712052554-lva1-app6891
 
1. introduccion a la electronica
1. introduccion a la electronica1. introduccion a la electronica
1. introduccion a la electronica
 
CONTROL DE LA VELOCIDAD DE UN MOTOR DC CON ENCODER
CONTROL DE LA VELOCIDAD DE UN MOTOR DC CON ENCODERCONTROL DE LA VELOCIDAD DE UN MOTOR DC CON ENCODER
CONTROL DE LA VELOCIDAD DE UN MOTOR DC CON ENCODER
 
137343953 lectura-e-interpretacion-de-planos-electricos(1)
137343953 lectura-e-interpretacion-de-planos-electricos(1)137343953 lectura-e-interpretacion-de-planos-electricos(1)
137343953 lectura-e-interpretacion-de-planos-electricos(1)
 
Introducción a La Programación En C
Introducción a La Programación En CIntroducción a La Programación En C
Introducción a La Programación En C
 
Puertos de entrada/salida
Puertos de entrada/salidaPuertos de entrada/salida
Puertos de entrada/salida
 
Interfas rs 232
Interfas rs 232Interfas rs 232
Interfas rs 232
 

Similaire à Practica1 1

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
 

Similaire à Practica1 1 (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
 

Plus 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
 

Plus 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
 

Practica1 1

  • 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 />