El microcontrolador es un circuito o dispositivo
programable capaz de realizar diferentes actividades que requieran del
procesamiento de datos digitales y
del control y comunicación digital de
diferentes dispositivos.
Este microcontrolador es fabricado por
MicroChip familia a la cual se le
denomina PIC. El modelo 16F877 posee varias características que hacen a este
microcontrolador un dispositivo muy versátil, eficiente y practico.
Estos 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.
Cada microcontrolador varía su conjunto de
instrucciones de acuerdo a su fabricante y modelo. De acuerdo al número
de instrucciones que el microcontrolador maneja se le denomina de arquitectura RISC (reducido) o
CISC (complejo).
Los
microcontroladores poseen principalmente una ALU (Unidad Lógico Aritmética),
memoria del programa, memoria de registros, y pines I/O (entrada y/0 salida).
La ALU es la encargada de procesar los datos dependiendo de las instrucciones
que se ejecuten (ADD, OR, AND), mientras que los pines son los que se encargan
de comunicar al microcontrolador con el medio externo; la función de
los pines puede ser de transmisión de datos, alimentación de corriente
para l funcionamiento de este o pines de control especifico.
Hoja de datos del PIC16F877A: http://ww1.microchip.com/downloads/en/devicedoc/30292c.pdf
1.1. PRINCIPALES CARACTERÍSTICAS
- Procesador de arquitectura RISC avanzada.
- Juego de 35 instrucciones con 14 bits de longitud. Todas ellas se ejecutan en un ciclo de instrucción menos las de salto que tardan 2.
- Frecuencia de 20 Mhz.
- Hasta 8K palabras de 14 bits para la memoria de codigo, tipo flash.
- Hasta 368 bytes de memoria de datos RAM.
- Hasta 256 bytes de memoria de datos EEPROM.
- Hasta 14 fuentes de interrupción internas y externas.
- Pila con 8 niveles.
- Modos de direccionamiento directo, indirecto y relativo.
- Perro guardian (WDT).
- Código de protección programable.
- Modo Sleep de bajo consumo.
- Programación serie en circuito con 2 pins.
- Voltaje de alimentación entre 2 y 5.5 voltios.
- Bajo consumo (menos de 2 mA a 5 V y 5 Mhz).
- Soporta modo de comunicación serial, posee dos pines para ello.
- Amplia memoria para datos y programa.
- Memoria reprogramable: La memoria en este PIC es la que se denomina FLASH; este tipo de memoria se puede borrar electrónicamente (esto corresponde a la "F" en el modelo).
- Set de instrucciones reducido (tipo RISC), pero con las instrucciones necesarias para facilitar su manejo.
Los pines I/O (Input/Output) están organizados en 5
puertos:
- Puerto A: 6 pines
- Puerto B: 8 pines
- Puerto C: 8 pines
- Puerto D: 8 pines
- Puerto E: 3 pines
1.2 DIAGRAMA INTERNO
El PIC16F877A
es un procesador tipo RICS que es un procesador de instrucciones reducidas, por
su pequeño número de instrucciones, además casi todas se realiza en la misma
cantidad de tiempo, posee unidades que trabajan en paralelo conectadas por
pipes. Este procesador emplea una arquitectura Harvard lo que significa que el programa y
los datos se pueden trabajar con buses (un bus es un conjunto de líneas que
transportan información entre 2 o más módulos) y memorias separadas, lo cual
permite que las instrucciones y los datos tengan longitudes diferentes.
PIC C Compiler contienen operadores estándar del lenguaje C y funciones
incorporados en bibliotecas que son específicas a los registros de PIC, proporcionando
a los desarrolladores una herramienta poderosa para el acceso al hardware las
funciones del dispositivo desde el nivel de lenguaje C.
El compilador de CCS
(Custom Computer Services) contiene más de 307 funciones integradas que
simplifiquen el acceso al hardware, mientras que la producción eficiente y
altamente optimizado código. Se incluyen funciones de hardware del dispositivo
de características tales como:
- Temporizadores y módulos PWM
- Convertidores A / D de datos on-chip EEPROM
- LCD controladores
- Memoria externa buses
- Entre otras...
- Extensión .c Este es el archivo de código fuente que contiene el código en C.
- Extensión .h Se trata de archivos estándar o personalizados de cabecera utilizados para definir pines, registros, funciones y directivas del µprocesador.
- Extensión .hex El compilador genera archivos HEX estándar que son compatibles con todos los programadores.
Más información en: http://batiz9.blogspot.pe/2014/06/programar-en-pic-c-compiler-ccs-pic-c.html
2.1 CREANDO MI PRIMER PROGRAMA: PARPADEO DE UN LED
2.1.1 EJEMPLO 01
Código C Compiler
Simulación en Proteus
2.1.2 EJEMPLO 02
Código en C Compiler
![]() |
Código en C Compiler |
Simulación en Proteus
![]() |
Secuencia de Led´s en Proteus |
PICkit es una familia de programadores para microcontroladores PIC fabricados por Microchip Technology . Se utilizan para programar y depurar microcontroladores, así como el programa EEPROM. Algunos modelos también cuentan con una herramienta de análisis lógico y comunicaciones en serie ( UART ).
El PICkit 2 utiliza un PIC18F2550 interno con USB FullSpeed. El último firmware de PICkit 2 permite al usuario programar y depurar la mayoría de los miembros PICmicro y dsPIC de 8 y 16 bits de la línea de productos Microchip.
El PICkit 2 está abierto al público, incluyendo su esquema de hardware, código fuente del firmware (en lenguaje C) y programas de aplicación (en lenguaje C #). Los usuarios finales y terceros pueden modificar fácilmente tanto el hardware como el software para funciones mejoradas. Por ejemplo, la versión Linux del software de aplicación PICkit 2, el soporte CMD de estilo DOS, etc.
El PICkit 2 dispone de una función de programación que permite descargar el archivo hexadecimal y las instrucciones de programación en la memoria incorporada (EEPROM de 128 KB I²C o EEPROM de 256 KB I²C), por lo que no se requiere PC al final solicitud.
La versión Microchip de PICkit 2 tiene una memoria estándar de 128 KB. 256 KB de memoria se puede lograr mediante la modificación del hardware o de terceros clones.
Adicionalmente, un analizador lógico de tres canales de 500 kHz y una herramienta UART están incorporados en el PICkit 2. Estas características faltan en el PICkit 3.
Desde la liberación de V2.61, el software para PC PICkit 2 ahora soporta un máximo de 4 megabytes de memoria para la característica de programador para ir. Esta modificación hace que el PICkit 2 soporte ocho veces más memoria que el PICkit 3. Esta mejora ha sido aportada por Au Group Electronics y el firmware de PICkit 2 también se informa que se enviará al equipo de Microchip PICkit 2 a mediados de marzo de 2009. Esto Mejora también se puede integrar en futuras versiones de firmware.
4. VÍDEO DEL ENTRENADOR- MUESTRA DE LABORATORIO
5. OBSERVACIONES Y CONCLUSIONES:
5.1 OBSERVACIONES
- Se observo que al momento de mandar nuestro archivo .hex de nuestro programa al pickit2 teníamos que ver que la fecha de compilación del archivo concuerde con la fecha mostrada del archivo a subir.
- Es necesario conocer un poco acerca del lenguaje de programación C para poder entender la programación en microcontroladores PIC.
- Algunos de los programas creados por nosotros al ser simulados en Proteus funcionaban correctamente, pero al momento de mandar al entrenador, nuestro programa no corría correctamente.
- Cuando hacemos un cambio en nuestro programa y nos dirigimos al simulador, no es necesario seleccionar nuevamente el archivo ya que el simulador actualiza automáticamente el programa modificado.
- La opción MCLR del pickit2 nos permite modificar nuestro programa o cambiar a otro archivo sin necesidad de desconectar el entrenador.
5.2 CONCLUSIONES
- En conclusión, podemos afirmar que el microcontrolador y el entrenador nos permiten desarrollar diferentes circuitos con gran variedad de aplicaciones en la industria.
- Proteus nos permite ver los resultados de nuestra programación, poder modificar si es que hay algún error, corregir para finalmente subirlo al entrenador.
- Podemos afirmar que el microcontrolador es una computadora debido a las características que posee ya que nos permite desarrollar circuitos y aplicaciones con solo programación.
6. INTEGRANTES
- Cruz Diaz, Jesús Andrée
- Chara Velazco, Juan Carlos
- Granda Alvarez, Waldir Andrée
Muy bien jóvenes... sigan ADELANTE!!!!!
ResponderBorrar