martes, 15 de agosto de 2023

COMPILADOR PIC CCS

CCS C Compiler es un software ampliamente utilizado para programar microcontroladores PIC utilizando el lenguaje de programación C. Este compilador permite a los desarrolladores escribir código en C en lugar de lenguaje ensamblador, lo que facilita el desarrollo de aplicaciones embebidas y sistemas basados en microcontroladores PIC.

Algunas características y funciones comunes del compilador de PIC CCS C son:

  1. Soporte de Microcontroladores PIC: CCS C Compiler admite una amplia gama de microcontroladores PIC de Microchip, lo que permite a los programadores elegir el microcontrolador adecuado para su aplicación.

  2. Sintaxis C: Permite escribir código en lenguaje C estándar, lo que simplifica la programación en comparación con el uso de lenguaje ensamblador.

  3. Funciones y bibliotecas: Proporciona una serie de bibliotecas y funciones predefinidas que permiten el acceso a las características y periféricos del microcontrolador, como puertos I/O, temporizadores, comunicación serial, ADC, entre otros.

  4. Optimización de código: El compilador optimiza el código C para generar código de máquina eficiente y compacto, lo que ayuda a ahorrar espacio en memoria y a mejorar el rendimiento.

  5. Depuración y simulación: CCS C Compiler ofrece herramientas de depuración y simulación que permiten a los programadores detectar errores y probar el comportamiento del programa antes de cargarlo en el microcontrolador real.

  6. Generación de archivos HEX: El compilador genera archivos HEX que contienen el código binario listo para ser cargado en el microcontrolador a través de programadores y software de programación.

  7. Soporte de periféricos: Facilita la configuración y el uso de periféricos específicos del microcontrolador, como LCDs, sensores, comunicación SPI/I2C, PWM, etc.



  8. Entorno de desarrollo CCS
    El IDE de CCS es una evolución significativa a los entornos para desarrolladores con PIC's, tiene una interfaz amigable y estructurada que facilita la implementación y organización del código.




  9. En la parte lateral izquierdo tiene un panel donde encontramos los últimos proyectos desarrollados.


  10. Panel Projects

  11. En la pestaña de identificadores tenemos las equivalencias entre los periféricos con sus etiquetas y direcciones.


  12. En el panel de proyecto creamos la estructura general de nuestro programa con las librerías y componentes necesarios para la compilación.



  13. Edición: Permite deshacer, cortar, pegar, comentar e indentar nuestro código, con esto se ahorra tiempo en codificar.


  14. Búsqueda: Nos ayuda a localizar palabras en nuestro código y marcar áreas importantes.


  15. Opciones: Permite establecer propiedades del proyecto y del IDE, desde configurar la impresora hasta actualizar el software.


  16. Compilación: Es el panel más importante, aquí generamos los binarios y depuramos los errores, al construir el proyecto se generan los archivos con todas sus dependencias.


  17. Vista: Nos muestra información del microcontrolador que se esta programando, desde su hoja de datos hasta sus registros, interrupciones, etc.


  18. Herramientas: Cuenta con emuladores y utilerías que nos facilitan cálculos de conversión de datos, entrada de valores, comparación de archivos y conexión con hardware de depuración.


  19. Depuración: Permite depurar por medio de ICD (in circuit debugger), para esto debe estar conectada la tarjeta, en nuestro curso no se va a aplicar ICD por la variedad de programadores que se van a utilizar. 
     

  20. Documento: Nos ayuda a generar archivos de documentación general del proyecto, tambíen trae un programa (FlowChart) para crear diagramas de flujo, un editor de archivos de text RTF, etc.

Tipos de dato: 
El lenguaje C para CCS proporciona cinco tipos básico de datos, con cuatro modificadores posibles. Podemos utilizar variables de cualquiera de esos tipos. 
Tipo                Rango 
int1                 0 a 1 
int8, char        0 a 255 
int16               0 a 65535 
int32               0 a 4294967295 
float                1.5x10^-45 to 3.4x10^38

La sintaxis de declaración es la siguiente:

  
    

lunes, 14 de agosto de 2023

INTRODUCCIÓN A LOS MICROCONTROLADORES PIC

Los microcontroladores PIC (Peripheral Interface Controller) son una familia de dispositivos electrónicos altamente versátiles y ampliamente utilizados en el campo de la electrónica y la computación embebida. Estos microcontroladores son producidos por Microchip Technology Inc., una empresa líder en el diseño y fabricación de componentes electrónicos.

Un microcontrolador es un pequeño dispositivo que integra en un solo chip una unidad central de procesamiento (CPU), memoria, puertos de entrada/salida y otros periféricos, lo que lo convierte en una solución completa y compacta para controlar sistemas y procesos en tiempo real.

Los microcontroladores PIC se destacan por su facilidad de uso, bajo costo y eficiencia energética, lo que los hace ideales para una amplia variedad de aplicaciones, desde electrodomésticos y dispositivos móviles hasta sistemas de control industrial, electrónica automotriz, sistemas de seguridad, entre otros.

Algunas características destacadas de los microcontroladores PIC son:

Arquitectura RISC: Los PIC utilizan una arquitectura Reduced Instruction Set Computer (RISC), lo que significa que tienen un conjunto de instrucciones reducido y operan en ciclos de instrucciones simples y rápidos.

Memoria integrada: Los PIC tienen memoria Flash, EEPROM o ROM integrada para almacenar el programa (firmware) y datos necesarios para el funcionamiento del sistema.

Periféricos integrados: Los microcontroladores PIC ofrecen una amplia gama de periféricos integrados, como puertos GPIO (General Purpose Input/Output), módulos de comunicación (UART, SPI, I2C), módulos de temporización, conversores analógico-digitales (ADC), generadores de PWM y mucho más.

Bajo consumo de energía: Estos microcontroladores están diseñados para funcionar con un consumo de energía muy eficiente, lo que los hace adecuados para aplicaciones con limitaciones de energía o alimentadas por baterías.

Amplia variedad de modelos: Microchip ofrece una gran diversidad de modelos PIC, desde aquellos con recursos básicos hasta los más avanzados con mayores capacidades de memoria, velocidad y periféricos.

Para programar y desarrollar aplicaciones para microcontroladores PIC, se utilizan lenguajes de programación como C o ensamblador, y Microchip proporciona un conjunto de herramientas de desarrollo, como compiladores, depuradores y entornos de desarrollo integrados (IDEs), para facilitar el proceso de diseño y programación.

Los microcontroladores PIC continúan siendo una opción popular para diseñadores y desarrolladores debido a su accesibilidad, flexibilidad y amplio soporte de la comunidad de entusiastas y profesionales. Si bien existen otras familias de microcontroladores en el mercado, los PIC han demostrado ser una solución confiable y probada para una variedad de aplicaciones embebidas.


Características Básicas del PIC16f876A
Arquitectura RISC
  • El microcontrolador cuenta con solo 35 instrucciones diferentes
  • Todas las instrucciones son uni-ciclo excepto por las de ramificación
Frecuencia de operación 0-20 MHz
Voltaje de la fuente de alimentación de 2.0V a 5.5V
Ahorro de energía en el Modo de suspensión
22 pines de entrada/salida
memoria ROM de 8K con tecnología FLASH
  •     El chip se puede re-programar hasta 100.000 veces
Opción de programación serial en el circuito
  • El chip se puede programar incluso incorporado en el dispositivo destino.
256 bytes de memoria EEPROM
  • Los datos se pueden grabar más de 1.000.000 veces
368 bytes de memoria RAM
Convertidor A/D:
  • 8 canales
  • resolución de 10 bits
3 temporizadores/contadores independientes
Temporizador perro guardián
Módulo comparador analógico con
  • Dos comparadores analógicos
Módulo PWM incorporado
  • 2 canales PWM
Módulo USART 
Puerto Serie Síncrono Maestro (MSSP)
  • Soporta los modos SPI (solo maestro) e I2C
  • Soporta los modos I2C (Maestro/Esclavo
Forma física del PIC16F876A




Configuración de Pines 

Características Básicas del PIC16f887
arquitectura RISC
  • El microcontrolador cuenta con solo 35 instrucciones diferentes
  • Todas las instrucciones son uni-ciclo excepto por las de ramificación
Frecuencia de operación 0-20 MHz
Oscilador interno de alta precisión
  • Calibrado de fábrica
  • Rango de frecuencia de 8MHz a 31KHz seleccionado por software
Voltaje de la fuente de alimentación de 2.0V a 5.5V
  • Consumo: 220uA (2.0V, 4MHz), 11uA (2.0 V, 32 KHz) 50nA (en modo de espera)
Ahorro de energía en el Modo de suspensión
Brown-out Reset (BOR) con opción para controlar por software
35 pines de entrada/salida
  • alta corriente de fuente y de drenador para manejo de LED
  • resistencias pull-up programables individualmente por software
  • interrupción al cambiar el estado del pin
memoria ROM de 8K con tecnología FLASH
  • El chip se puede re-programar hasta 100.000 veces
Opción de programación serial en el circuito
  • El chip se puede programar incluso incorporado en el dispositivo destino.
256 bytes de memoria EEPROM
  • Los datos se pueden grabar más de 1.000.000 veces
368 bytes de memoria RAM
Convertidor A/D:
  • 14 canales
  • resolución de 10 bits
3 temporizadores/contadores independientes
Temporizador perro guardián
Módulo comparador analógico con
  • Dos comparadores analógicos
  • Referencia de voltaje fija (0.6V)
  • Referencia de voltaje programable en el chip
Módulo PWM incorporado
Módulo USART mejorado
  • Soporta las comunicaciones seriales RS-485, RS-232 y LIN2.0
  • Auto detección de baudios
Puerto Serie Síncrono Maestro (MSSP)
  • Soporta los modos SPI e I2C

Forma física del PIC16F887

Configuración de Pines 

Datos personales