sábado, 9 de noviembre de 2019

LABORATORIO N°11

LABORATORIO N°11

PROGRAMACIÓN DE UNA PANTALLA LCD
1. COMPETENCIA ESPECIFICA DE LA SESIÓN.
Conocer el Display LCD y su funcionamiento
Programar eficientemente el LCD
Programar HMI para proyecto actual.

2. CAPACIDAD TERMINAL.
Utilizar al microcontrolador en aplicaciones de control electrónico.
Desarrollar y ejecutar programas en un microcontrolador PIC
Programar y configurar interfaces básicas del microcontrolador.

3.SOFTWARE UTILIZADOS.

Pic c compiler:
PIC C es una herramienta que permite programar un microcontrolador por medio de lenguaje C, a diferencia del lenguaje máquina o ensamblador (ASM) que se maneja por defecto, este hace los programas más fáciles de escribir, analizar y comprender.



PICkit 2:
PICkit es una familia de programadores para microcontroladores PIC fabricados por Microchip Technology . Se utilizan para programar y depurar microcontroladores.


4.DESCRIPCIÓN DEL PIC16F877A.
Es un microcontrolador de Microchip Technology fabricado en tecnología CMOS, su consumo de potencia es muy bajo y además es completamente estatico (esto quiere decir que el reloj puede detenerse y los datos de memoria no se pierden) capaz de realizar diferentes actividades que requieran del procesamiento de datos digitales y del control y comunicación digital de diferentes dispositivos.

Principales características:
 Procesador de arquitectura RISC (Reduced Instruction Set Computer) avanzada
 Juego de 35 palabras de instrucción a aprender.
 Velocidad de operación: Frecuencia de entrada 20 Mhz, ciclos de instrucción de 200ns.
 Hasta 8K en palabras de 14 bits para la memoria tipo flash.
 Hasta 368 Bytes de memoria de datos RAM.
 Hasta 256 Bytes de memoria datos EEPROM
 Capacidad de interrupción de hasta 14 fuentes internas y externas
 Power on reset
 Power-up Timer (PWRT) y Oscillator Start-up Timer (OST)
 Compatible modo SLeep
 Protección de código Programable
 Voltaje de operación entre 2.0 y 5.5 voltios
 Corriente máxima 25 mA.
 Bajo consumo.

Puertos del PIC16F887A

5.PANTALLA LCD

Una pantalla de cristal líquido o LCD (sigla del inglés Liquid Crystal Display) es una pantalla delgada y plana formada por un número de píxeles en color o monocromos colocados delante de una fuente de luz o reflectora. A menudo se utiliza en dispositivos electrónicos de pilas, ya que utiliza cantidades muy pequeñas de energía eléctrica.
   
La pantalla LCD tiene la capacidad de imprimir 16 letras y tiene dos filas.



6.VÍDEO DE EVIDENCIA:





6.OBSERVACIONES.

  • Se observó que, al compilar el programa en el PIC, la pantalla LCD perdía el contraste por ello se tuvo que modificar desmontado el entrenador y variar el contraste con el potenciómetro.
  • Se observó que, al presionar el pulsador en el entrenador este hacia como si hubiésemos pulsado dos o tres veces, por ello era necesario aumentar un delay para congelar el tiempo y utilizarlo como un antirebote.                
  • En algunas ocasiones no se escucha correctamente el sonido del zumbador debido al ruido en el salón.

7.CONCLUSIONES.

  • Se logró realizar el programa con las condiciones que se propusieron usando lo aprendido en la clase y la anterior.
  • Se pudo entender y programar correctamente para el funcionamiento de un  LCD.
  • Se logró entender el funcionamiento de los distintos tipos de variables y reservar espacios en el LCD.
  • Para comprobar si el funcionamiento del programa es correcto, primero se simulo en Proteus, para corregir las posibles fallas.

LABORATORIO N°10

LABORATORIO N°10

PROGRAMACIÓN CON DISPLAY DE 7 SEGMENTOS
1. COMPETENCIA ESPECIFICA DE LA SESIÓN.
Conocer el Display de 7 segmentos y su funcionamiento
Conocer las técnicas de multiplexación
Programar HMI para juego de encestar.

2. CAPACIDAD TERMINAL.
Utilizar al microcontrolador en aplicaciones de control electrónico.
Desarrollar y ejecutar programas en un microcontrolador PIC
Programar y configurar interfaces básicas del microcontrolador.

3.SOFTWARE UTILIZADOS.

Pic c compiler:
PIC C es una herramienta que permite programar un microcontrolador por medio de lenguaje C, a diferencia del lenguaje máquina o ensamblador (ASM) que se maneja por defecto, este hace los programas más fáciles de escribir, analizar y comprender.



PICkit 2:
PICkit es una familia de programadores para microcontroladores PIC fabricados por Microchip Technology . Se utilizan para programar y depurar microcontroladores.


4.DESCRIPCIÓN DEL PIC16F877A.
Es un microcontrolador de Microchip Technology fabricado en tecnología CMOS, su consumo de potencia es muy bajo y además es completamente estatico (esto quiere decir que el reloj puede detenerse y los datos de memoria no se pierden) capaz de realizar diferentes actividades que requieran del procesamiento de datos digitales y del control y comunicación digital de diferentes dispositivos.

Principales características:
 Procesador de arquitectura RISC (Reduced Instruction Set Computer) avanzada
 Juego de 35 palabras de instrucción a aprender.
 Velocidad de operación: Frecuencia de entrada 20 Mhz, ciclos de instrucción de 200ns.
 Hasta 8K en palabras de 14 bits para la memoria tipo flash.
 Hasta 368 Bytes de memoria de datos RAM.
 Hasta 256 Bytes de memoria datos EEPROM
 Capacidad de interrupción de hasta 14 fuentes internas y externas
 Power on reset
 Power-up Timer (PWRT) y Oscillator Start-up Timer (OST)
 Compatible modo SLeep
 Protección de código Programable
 Voltaje de operación entre 2.0 y 5.5 voltios
 Corriente máxima 25 mA.
 Bajo consumo.

Puertos del PIC16F887A

5.TIPOS DE VARIABLES:
 Las variables son secciones reservadas en memoria para almacenar datos los cuales pueden cambiar durante la ejecución del programa.

 5.1 Variables enteros (int).
Las variables de tipo entero o int son aquellas que almacenan un número (ya sea positivo o negativo) no decimal . Debido a que cuando creamos una variable reservamos memoria para ella, cada tipo de variable reservará más o menos memoria para representar el dato que almacenarán. Dicho esto, en el caso de variables de tipo int sólo podemos almacenar números que estén dentro del rango -2^31 y 2^31 - 1 . Si intentamos almacenar un número que esté fuera de ese rango nos dará un error de compilación o de ejecución. Por ejemplo, no podríamos almacenar el número 10000000000 en una variable de tipo int. Un ejemplo sería:
int auxiliar = 30;
Tipos de variables enteros:


5.2 Variables enteros con signo
Las variables enteras con signo tienden a tomar valores positivos y negativos por lo cual su valor se divide en dos, una para la parte positivo y otra por la parte negativa.
Además, el lenguaje C hace la distinción de si el entero es con signo (signed) o sin signo (unsigned). En caso de que no se declare si es con signo o sin signo, se toma con signo.

Tipos de variables

6.VÍDEO DE EVIDENCIA:





6.OBSERVACIONES.

  • Se observó que, para simular el código en proteus se tiene que modoficar el código, esto debido a que los números no se dispalayan correctamente.
  • Se observó que, al presionar el pulsador en el entrenador este hacia como si hubiésemos pulsado dos o tres veces, por ello era necesario aumentar un delay para congelar el tiempo y utilizarlo como un antirebote.                
  • En algunas ocasiones no se escucha correctamente el sonido del zumbador.

7.CONCLUSIONES.

  • Se logró realizar el programa con las condiciones que se propusieron usando los aprendido en la clase y la anterior.
  • Se pudo entender y programar correctamente el funcionamiento de un  display de 7 segmentos con 3 dígitos.
  • Se logró entender el funcionamiento de los distintos tipos de variables y aplicarlos en el programa.
  • Para comprobar si el funcionamiento del programa es correcto, primero se simulo en Proteus, para corregir las posibles fallas.

LABORATORIO N°9

LABORATORIO N°9

PROGRAMACIÓN BÁSICA CON BUCLES DE CONTROL
1. COMPETENCIA ESPECIFICA DE LA SESIÓN.
Manejo de puertos de forma grupal e independiente para manejo de luces
Programación de sonidos mediante subrutinas.
Creación de Subrutinas mediante funciones.

Declaración de variables enteras.

2. CAPACIDAD TERMINAL.
Utilizar al microcontrolador en aplicaciones de control electrónico.
Desarrollar y ejecutar programas en un microcontrolador PIC

Programar y configurar interfaces básicas del microcontrolador.

3.SOFTWARE UTILIZADOS.

Pic c compiler:
PIC C es una herramienta que permite programar un microcontrolador por medio de lenguaje C, a diferencia del lenguaje máquina o ensamblador (ASM) que se maneja por defecto, este hace los programas más fáciles de escribir, analizar y comprender.



PICkit 2:
PICkit es una familia de programadores para microcontroladores PIC fabricados por Microchip Technology . Se utilizan para programar y depurar microcontroladores.


4.DESCRIPCIÓN DEL PIC16F877A.
Es un microcontrolador de Microchip Technology fabricado en tecnología CMOS, su consumo de potencia es muy bajo y además es completamente estatico (esto quiere decir que el reloj puede detenerse y los datos de memoria no se pierden) capaz de realizar diferentes actividades que requieran del procesamiento de datos digitales y del control y comunicación digital de diferentes dispositivos.

Principales características:
 Procesador de arquitectura RISC (Reduced Instruction Set Computer) avanzada
 Juego de 35 palabras de instrucción a aprender.
 Velocidad de operación: Frecuencia de entrada 20 Mhz, ciclos de instrucción de 200ns.
 Hasta 8K en palabras de 14 bits para la memoria tipo flash.
 Hasta 368 Bytes de memoria de datos RAM.
 Hasta 256 Bytes de memoria datos EEPROM
 Capacidad de interrupción de hasta 14 fuentes internas y externas
 Power on reset
 Power-up Timer (PWRT) y Oscillator Start-up Timer (OST)
 Compatible modo SLeep
 Protección de código Programable
 Voltaje de operación entre 2.0 y 5.5 voltios
 Corriente máxima 25 mA.
 Bajo consumo.

Puertos del PIC16F887A

5.DESCRIPCIÓN DE LOS PRINCIPALES BUCLES DE CONTROL
5.1 BUCLE WHILE.

El bucle while permite ejecutar una o mas sentencias en tanto se cumpla una condición. Si la condición deja de cumplirse, se dejan de ejecutar la o las instrucciones y se “sale del bloque while para continuar procesando las instrucciones que se encuentran después del mismo.

while (condición) 
sentencia; 
while (condición) 
sentencia1; 
sentencia2; 
sentencia3; 
sentencia4;
 . 
 . 
Senttencia_n;
 }

5.2 BUCLE IF-ELSE.

Forma general:
 if (condición) 
sentencia1;
 else
 sentencia2; 

Si la condición es verdadera (se cumple), se ejecuta la sentencia1, de lo contrario la sentencia2. (esta estructura suena de la siguiente forma: “si la (condición) se cumple, se ejecuta la sentencia1, sino, se ejecuta la sentencia2). También se pueden escalonar los if:

 if (condición)
 Sentencia1; else if
 (condición)
 Sentencia2; 
 else Sentencia3;

5.3 BUCLE FOR.

Esta sentencia nos permite repetir una o varias sentencias una cantidad de veces determinada por 3 parámetros.
 Forma general del for:
 Para una sola sentencia:

for(inicialización; condición; incremento) 
sentencia; 

Para un bloque de sentencias (recordemos que el bloque queda definido por las llaves). 

for(inicialización; condición; incremento) 
sentencias; 


6.VÍDEO DE EVIDENCIA:



6.OBSERVACIONES.

  • Se observó que, después de grabar el programa en el entrenador, los leds de los puertos no utilizados en el programa encendían un poco por ello se tuvo que añadir lo siguiente "output_B(0);" para apagar los demás leds y deshabilitarlos mediante el dip switch.
  • Se observó que, al presionar el pulsador en el entrenador este hacia como si hubiésemos pulsado dos o tres veces, por ello era necesario aumentar un delay para congelar el tiempo.               
  • Se observó que algunos pulsadores no funcionaban de manera correcta, era necesario pulsarlos dos veces para que funcionarán.


7.CONCLUSIONES.

  • Se logró realizar el programa con las condiciones que se propusieron usando los aprendido en la clase y la anterior.
  • Se logró entender el funcionamiento de los bucles de control if, while y for.
  • Para comprobar si el funcionamineto del programa es correcto, primero se simulo en proteus, para corregir las posibles fallas.

LABORATORIO N°8

LABORATORIO N°8

PROGRAMACIÓN BÁSICA CON BUCLES DE CONTROL
1. COMPETENCIA ESPECIFICA DE LA SESIÓN.
Listar las partes internas generales de un microcontrolador.
Identificar las funciones generales de un microcontrolador.
Introducción a la programación en PIC C Compiler.

2. CAPACIDAD TERMINAL.
 Utilizar al microcontrolador en aplicaciones de control electrónico.
 Desarrollar y ejecutar programas en un microcontrolador PIC
 Programar y configurar interfaces básicas del microcontrolador.

3.SOFTWARE UTILIZADOS.

Pic c compiler:
PIC C es una herramienta que permite programar un microcontrolador por medio de lenguaje C, a diferencia del lenguaje máquina o ensamblador (ASM) que se maneja por defecto, este hace los programas más fáciles de escribir, analizar y comprender.



PICkit 2:
PICkit es una familia de programadores para microcontroladores PIC fabricados por Microchip Technology . Se utilizan para programar y depurar microcontroladores.




4.DESCRIPCIÓN DEL PIC16F877A.
Es un microcontrolador de Microchip Technology fabricado en tecnología CMOS, su consumo de potencia es muy bajo y además es completamente estatico (esto quiere decir que el reloj puede detenerse y los datos de memoria no se pierden) capaz de realizar diferentes actividades que requieran del procesamiento de datos digitales y del control y comunicación digital de diferentes dispositivos.

Principales características:
 Procesador de arquitectura RISC (Reduced Instruction Set Computer) avanzada
 Juego de 35 palabras de instrucción a aprender.
 Velocidad de operación: Frecuencia de entrada 20 Mhz, ciclos de instrucción de 200ns.
 Hasta 8K en palabras de 14 bits para la memoria tipo flash.
 Hasta 368 Bytes de memoria de datos RAM.
 Hasta 256 Bytes de memoria datos EEPROM
 Capacidad de interrupción de hasta 14 fuentes internas y externas
 Power on reset
 Power-up Timer (PWRT) y Oscillator Start-up Timer (OST)
 Compatible modo SLeep
 Protección de código Programable
 Voltaje de operación entre 2.0 y 5.5 voltios
 Corriente máxima 25 mA.
 Bajo consumo.

Puertos del PIC16F887A.


Diagrama interno:
5.VÍDEO DE EVIDENCIA:

6.OBSERVACIONES:
  •  Se observó que después de grabar el programa en el entrenador, los leds de los puertos no declarados en el programa encendían un poco por ello se tuvo que añadir lo siguiente "output_B(0);" para apagar los demás leds.
  • Se observó que si se borra el "while" del programa, este solo se ejecuta una sola vez.
  • Para realizar la simulación en Proteus se pueden utilizar los archivos .hex y .cof, pero si cargamos este ultimo, se puede ver las varibles y el programa, mientras que el primero no se pueden realizar esas funciones.
  • Para conocer mejor sus funciones de un comando en el programa, se debe colocar el cursor en el comando y presionar "F1", luego de ello se abrirá una ventana con la explicación.

7.CONCLUSIONES:

  • Se pudo comprender las funciones básicas para programar un PIC, así también compilar el programa en el PIC.
  • Se logro reconocer las principales partes de entrenador de programación y también del PIC.
  • Existen dos maneras de compilar los programas, una de ellas se realiza con "Auto Import Hex" y luego solo se presiona el botón "build" en el PIC C compiler y el programa se subirá automáticamente al PIC.
  • Se logro comprender y analizar los conceptos básicos de programación de PICs, logrando realizar las tareas en el laboratorio.