El documento introduce el compilador Hi-Tech para PIC, destacando sus características como soporte de ANSI C, optimizaciones y librería estándar. Explica la estructura básica de un programa, incluyendo declaraciones, funciones, comentarios y operadores. También cubre conceptos como tipos de datos, variables, constantes y declaraciones de control como if/else, for y while. El objetivo es proporcionar una introducción general a la programación en C usando este compilador para microcontroladores PIC.
Este documento describe un proyecto para visualizar lecturas de un convertidor analógico-digital en 6 displays de 7 segmentos usando multiplexación. Se utilizará un PIC18F2550 para encender secuencialmente cada display a través de interrupciones de timer y mostrar el valor convertido de forma múltiple. El proyecto explica la configuración del microcontrolador, convertidor analógico y timers requeridos para lograr la visualización multiplexada de forma eficiente.
El documento describe cómo crear una matriz LED de 8x8 controlada por un microcontrolador PIC18F2550. Explica que las matrices LED se usan comúnmente para mostrar mensajes publicitarios o informativos de manera dinámica. Luego detalla los pasos para construir el circuito, que incluye el microcontrolador, un registro de desplazamiento 74HC164 para multiplexar las filas y columnas de la matriz, y otros componentes. También incluye el código del programa para el microcontrolador para mostrar letras u otros patrones en la matriz LED.
El documento describe un módulo convertidor analógico-digital (ADC) que puede convertir señales analógicas de entrada a valores digitales de 10 bits. Explica cómo el ADC puede usarse para medir señales físicas con sensores y enviar los datos digitalizados a una computadora para su procesamiento y monitoreo. También proporciona detalles sobre cómo configurar y usar las funciones del ADC, incluido un ejemplo de código para leer el valor analógico de un potenciómetro y enviarlo por puerto serie.
Este documento describe el uso de tarjetas MultiMedia Card (MMC) y Secure Digital (SD) en modo SPI, que es la forma más sencilla de acceder a su contenido desde un microcontrolador. Explica las conexiones y señales necesarias, los comandos y respuestas del protocolo SPI, y los pasos para inicializar, escribir y leer bloques de datos de las tarjetas.
Este documento describe el puerto serial USART (Universal Synchronous Asynchronous Receiver Transmitter) en los microcontroladores. El puerto USART permite la comunicación bidireccional asincrónica simultánea a través de los registros TXREG y RCREG. Puede operar en modo asincrónico o sincrónico. En modo asincrónico es más común y permite comunicaciones a mayor distancia, aunque más lentas. Se requiere un circuito MAX232 para adaptar los niveles lógicos RS-232 del PC a los niveles TTL del microcontrolador.
El documento describe los diferentes modos en que puede configurarse el módulo CCP de un microcontrolador, incluyendo modo comparador, captura y PWM. Explica cómo usar el módulo CCP en modo captura para medir el ancho de pulso de una señal PWM, y en modo PWM para generar una señal PWM. Incluye ejemplos de código para medir el ancho de pulso usando dos canales CCP y para generar una señal PWM de 1 kHz usando un solo canal CCP.
El documento describe el uso de timers en PIC18, incluyendo timers 0-3. Explica cómo funcionan como contadores o temporizadores, y proporciona un ejemplo de código que configura el timer0 para generar interrupciones cada 5 milisegundos usando un prescaler de 16, generando un parpadeo en un LED.
Este documento describe el uso de teclados y LCD con microcontroladores. Explica que los teclados son una forma común de introducir información y que suelen tener un formato matricial para reducir conexiones. También describe la conexión típica de un teclado 4x4 y cómo funcionan los LCD, incluyendo su inicialización y librerías. Finalmente, presenta un proyecto que enciende LEDs usando un teclado 4x4, LCD y un circuito demultiplexor para reducir las salidas necesarias.
Este documento describe un proyecto para visualizar lecturas de un convertidor analógico-digital en 6 displays de 7 segmentos usando multiplexación. Se utilizará un PIC18F2550 para encender secuencialmente cada display a través de interrupciones de timer y mostrar el valor convertido de forma múltiple. El proyecto explica la configuración del microcontrolador, convertidor analógico y timers requeridos para lograr la visualización multiplexada de forma eficiente.
El documento describe cómo crear una matriz LED de 8x8 controlada por un microcontrolador PIC18F2550. Explica que las matrices LED se usan comúnmente para mostrar mensajes publicitarios o informativos de manera dinámica. Luego detalla los pasos para construir el circuito, que incluye el microcontrolador, un registro de desplazamiento 74HC164 para multiplexar las filas y columnas de la matriz, y otros componentes. También incluye el código del programa para el microcontrolador para mostrar letras u otros patrones en la matriz LED.
El documento describe un módulo convertidor analógico-digital (ADC) que puede convertir señales analógicas de entrada a valores digitales de 10 bits. Explica cómo el ADC puede usarse para medir señales físicas con sensores y enviar los datos digitalizados a una computadora para su procesamiento y monitoreo. También proporciona detalles sobre cómo configurar y usar las funciones del ADC, incluido un ejemplo de código para leer el valor analógico de un potenciómetro y enviarlo por puerto serie.
Este documento describe el uso de tarjetas MultiMedia Card (MMC) y Secure Digital (SD) en modo SPI, que es la forma más sencilla de acceder a su contenido desde un microcontrolador. Explica las conexiones y señales necesarias, los comandos y respuestas del protocolo SPI, y los pasos para inicializar, escribir y leer bloques de datos de las tarjetas.
Este documento describe el puerto serial USART (Universal Synchronous Asynchronous Receiver Transmitter) en los microcontroladores. El puerto USART permite la comunicación bidireccional asincrónica simultánea a través de los registros TXREG y RCREG. Puede operar en modo asincrónico o sincrónico. En modo asincrónico es más común y permite comunicaciones a mayor distancia, aunque más lentas. Se requiere un circuito MAX232 para adaptar los niveles lógicos RS-232 del PC a los niveles TTL del microcontrolador.
El documento describe los diferentes modos en que puede configurarse el módulo CCP de un microcontrolador, incluyendo modo comparador, captura y PWM. Explica cómo usar el módulo CCP en modo captura para medir el ancho de pulso de una señal PWM, y en modo PWM para generar una señal PWM. Incluye ejemplos de código para medir el ancho de pulso usando dos canales CCP y para generar una señal PWM de 1 kHz usando un solo canal CCP.
El documento describe el uso de timers en PIC18, incluyendo timers 0-3. Explica cómo funcionan como contadores o temporizadores, y proporciona un ejemplo de código que configura el timer0 para generar interrupciones cada 5 milisegundos usando un prescaler de 16, generando un parpadeo en un LED.
Este documento describe el uso de teclados y LCD con microcontroladores. Explica que los teclados son una forma común de introducir información y que suelen tener un formato matricial para reducir conexiones. También describe la conexión típica de un teclado 4x4 y cómo funcionan los LCD, incluyendo su inicialización y librerías. Finalmente, presenta un proyecto que enciende LEDs usando un teclado 4x4, LCD y un circuito demultiplexor para reducir las salidas necesarias.
El documento describe ejemplos de programación de microcontroladores PIC en C. Explica los componentes básicos necesarios para conectar y hacer funcionar un microcontrolador, como la alimentación, señal de reinicio y señal de reloj. Luego, presenta varios ejemplos de programas que ilustran el uso de funciones y periféricos comunes como temporizadores, E/S, comunicación serial y más.
Este documento describe cómo visualizar imágenes almacenadas en una tarjeta de memoria MMC en un microcontrolador utilizando un visualizador GLCD monocromático. Explica cómo dibujar las imágenes en un software, grabar los datos en formato hexadecimal en la tarjeta MMC y luego leerlos secuencialmente del microcontrolador para mostrarlas en el GLCD.
Este documento describe varios proyectos prácticos con el microcontrolador PIC16F84, incluyendo la conexión de LED y dipswitch, el manejo de un display de siete segmentos para hacer un contador decimal, y la técnica de multiplexaje para leer teclados y mostrar datos en displays utilizando menos líneas de E/S. También se incluyen diagramas esquemáticos, diagramas de flujo y código de programa para cada proyecto.
Este documento trata sobre el módulo USART y la comunicación serial asíncrona. Introduce el protocolo RS-232, explica cómo funcionan el transmisor y receptor asíncronos a nivel de hardware, y describe la configuración y uso del módulo USART en el lenguaje C, incluyendo funciones para la transmisión y recepción de datos.
El documento describe la práctica realizada para la primera evaluación de la asignatura de microprocesadores. Se configuraron y utilizaron periféricos como el TMR0, ADC y USART de un PIC16F887. Se implementó un programa para digitalizar dos canales analógicos y enviarlos a una PC a una velocidad de 500 muestras por segundo usando la transmisión serial USART.
Este documento describe el desarrollo de un sistema de taxímetro utilizando un PIC16F887. Se explica la configuración del temporizador TMR1 para incrementar la tarifa cada 45 segundos y cada 250 metros recorridos. También incluye rutinas para mostrar la tarifa en un LCD de 2 líneas x 16 caracteres controlado por el microcontrolador. El proyecto mide el tiempo y la distancia para calcular dinámicamente el importe a cobrar simulando el funcionamiento de un taxímetro real.
Este documento describe las aplicaciones y el funcionamiento básico del microcontrolador PIC16F84. Explica la organización de la memoria, los registros internos como el contador de programa y la pila, y los puertos de entrada y salida. También resume el conjunto de instrucciones del PIC16F84 incluyendo instrucciones lógicas, aritméticas, de control y especiales.
El documento describe un circuito y programa bootloader que permiten programar PIC16F87X de forma más rápida. El circuito incluye un PIC16F876, cristal, MAX232 y conector DB-9 para conectar al PC. El programa bootloader carga el código hexadecimal del programa de usuario a través de la USART, reduciendo el tiempo de programación. Al pulsar el reset, el bootloader recibe el código; de lo contrario ejecuta el programa de usuario.
El documento describe el módulo convertidor analógico/digital (A/D) de los microcontroladores PIC16F87X. Incluye cinco o ocho entradas analógicas dependiendo del dispositivo. La señal analógica se aplica a un condensador de muestreo y luego al convertidor A/D de aproximaciones sucesivas que produce una palabra de 10 bits. El convertidor A/D puede seleccionar la tensión de referencia interna o externa y tiene cuatro registros asociados: ADRESH, ADRESL, ADCON0 y AD
Este documento proporciona información sobre las características y periféricos de la familia de microcontroladores PIC16F87X, así como sobre el lenguaje C para programar estos microcontroladores. Se describen los tipos de datos, constantes, variables, operadores, funciones y declaraciones de control soportadas por el compilador CCS para esta familia de PICs.
El documento describe la organización de la memoria en los microcontroladores PIC16F87X. Estos dispositivos tienen tres bloques de memoria: memoria de programa, memoria RAM y memoria EEPROM. La memoria RAM se divide en cuatro bancos que contienen registros de propósito general y registros de funciones especiales. Los bits del registro STATUS seleccionan qué banco está activo.
Este documento presenta un curso sobre microcontroladores PIC18F4550 que incluye temas como bootloaders, CCS y Proteus. El curso se enfoca en desarrollar aplicaciones para resolver problemas reales con eficiencia. Incluye capítulos sobre introducción a microcontroladores, lenguaje C y librerías incorporadas.
programacion con microcontrolador pic 16f84guestf09168b
Este documento introduce la programación del microcontrolador PIC 16F84. Explica las características básicas del PIC 16F84 como su memoria, puertos de entrada y salida, y frecuencia de trabajo. También presenta instrucciones básicas de programación en ensamblador como cargar valores, sumar y restar registros. Finalmente, incluye ejemplos de código para sumar números en diferentes sistemas de numeración.
El documento describe los registros PCL y PCLATH que almacenan la dirección del programa counter (PC). También describe la pila de 8 niveles que almacena el valor de PC para las instrucciones CALL y las interrupciones. Finalmente, explica cómo la memoria de programa de 8Kb está paginada en bloques de 2Kb a través de los bits PCLATH<4:3>.
Este documento presenta las normas y los pasos a seguir para la evaluación del proyecto final de Microcontroladores II. Los estudiantes deben diseñar un proyecto que incluya automatización, manejo de periféricos, estructuras de contadores, conversión analógica/digital y comunicación serial. El proyecto será evaluado en 5 pasos: enunciado, diagrama de bloques, diagramas de flujo, programación en C y simulación en Proteus.
Este documento describe el módulo CCP (Captura/Comparación/PWM) de los microcontroladores PIC16F87X. El módulo CCP contiene dos registros de 16 bits que pueden funcionar como registros de captura, comparación o PWM. El módulo CCP1 y CCP2 son idénticos excepto por el modo de disparo especial de CCP2. El documento explica en detalle los modos de funcionamiento de captura, comparación y PWM, así como la configuración y uso de los registros asociados.
El documento introduce los microcontroladores, describiendo que se encuentran presentes en muchos dispositivos cotidianos y áreas como la industria, telecomunicaciones y automóviles. Explica que los microcontroladores son una evolución de los microprocesadores que integran funciones electrónicas en un solo chip. Finalmente, describe la arquitectura interna típica de un microcontrolador, dividiéndola en núcleo, periféricos y características especiales.
El documento describe el módulo TIMER2 del PIC16F87X. El TIMER2 es un temporizador-contador ascendente de 8 bits que puede usarse como base de tiempo para otros módulos. Tiene un registro de periodo PR2 que, cuando coincide con el valor del contador TMR2, genera una interrupción. El preescaler y postescaler permiten dividir la señal de reloj y la interrupción respectivamente.
Este documento presenta un curso sobre los microcontroladores PIC16F87X. Explica que el curso se basa en cuatro microcontroladores de la familia PIC16F87X con diferentes números de pines y capacidades de memoria. También proporciona detalles sobre las características principales y periféricos de los PIC16F87X y concluye con un ejercicio práctico para configurar las entradas y salidas digitales.
Este documento proporciona información técnica detallada sobre el microcontrolador PIC16F84A, incluyendo sus características de CPU y periféricos, diagrama de bloques, pines de entrada/salida, organización de memoria de programa y datos, y descripción de los registros de propósito especial.
Este documento presenta una introducción a la programación en C usando el compilador Hi-Tech para PIC18. Explica las características del compilador, los tipos de datos soportados, constantes, operadores, funciones y declaraciones de control como if-else, for y while. También cubre comentarios y los pasos iniciales para crear y compilar un proyecto en MPLAB usando este compilador.
Este documento presenta un curso de programación en C para microcontroladores PIC16F87XX. Cubre temas como IDEs, bootloaders, plataformas de desarrollo, recordatorios sobre C y programación de módulos como entrada/salida digital, comunicaciones RS232, interrupciones y conversión A/D.
El documento describe ejemplos de programación de microcontroladores PIC en C. Explica los componentes básicos necesarios para conectar y hacer funcionar un microcontrolador, como la alimentación, señal de reinicio y señal de reloj. Luego, presenta varios ejemplos de programas que ilustran el uso de funciones y periféricos comunes como temporizadores, E/S, comunicación serial y más.
Este documento describe cómo visualizar imágenes almacenadas en una tarjeta de memoria MMC en un microcontrolador utilizando un visualizador GLCD monocromático. Explica cómo dibujar las imágenes en un software, grabar los datos en formato hexadecimal en la tarjeta MMC y luego leerlos secuencialmente del microcontrolador para mostrarlas en el GLCD.
Este documento describe varios proyectos prácticos con el microcontrolador PIC16F84, incluyendo la conexión de LED y dipswitch, el manejo de un display de siete segmentos para hacer un contador decimal, y la técnica de multiplexaje para leer teclados y mostrar datos en displays utilizando menos líneas de E/S. También se incluyen diagramas esquemáticos, diagramas de flujo y código de programa para cada proyecto.
Este documento trata sobre el módulo USART y la comunicación serial asíncrona. Introduce el protocolo RS-232, explica cómo funcionan el transmisor y receptor asíncronos a nivel de hardware, y describe la configuración y uso del módulo USART en el lenguaje C, incluyendo funciones para la transmisión y recepción de datos.
El documento describe la práctica realizada para la primera evaluación de la asignatura de microprocesadores. Se configuraron y utilizaron periféricos como el TMR0, ADC y USART de un PIC16F887. Se implementó un programa para digitalizar dos canales analógicos y enviarlos a una PC a una velocidad de 500 muestras por segundo usando la transmisión serial USART.
Este documento describe el desarrollo de un sistema de taxímetro utilizando un PIC16F887. Se explica la configuración del temporizador TMR1 para incrementar la tarifa cada 45 segundos y cada 250 metros recorridos. También incluye rutinas para mostrar la tarifa en un LCD de 2 líneas x 16 caracteres controlado por el microcontrolador. El proyecto mide el tiempo y la distancia para calcular dinámicamente el importe a cobrar simulando el funcionamiento de un taxímetro real.
Este documento describe las aplicaciones y el funcionamiento básico del microcontrolador PIC16F84. Explica la organización de la memoria, los registros internos como el contador de programa y la pila, y los puertos de entrada y salida. También resume el conjunto de instrucciones del PIC16F84 incluyendo instrucciones lógicas, aritméticas, de control y especiales.
El documento describe un circuito y programa bootloader que permiten programar PIC16F87X de forma más rápida. El circuito incluye un PIC16F876, cristal, MAX232 y conector DB-9 para conectar al PC. El programa bootloader carga el código hexadecimal del programa de usuario a través de la USART, reduciendo el tiempo de programación. Al pulsar el reset, el bootloader recibe el código; de lo contrario ejecuta el programa de usuario.
El documento describe el módulo convertidor analógico/digital (A/D) de los microcontroladores PIC16F87X. Incluye cinco o ocho entradas analógicas dependiendo del dispositivo. La señal analógica se aplica a un condensador de muestreo y luego al convertidor A/D de aproximaciones sucesivas que produce una palabra de 10 bits. El convertidor A/D puede seleccionar la tensión de referencia interna o externa y tiene cuatro registros asociados: ADRESH, ADRESL, ADCON0 y AD
Este documento proporciona información sobre las características y periféricos de la familia de microcontroladores PIC16F87X, así como sobre el lenguaje C para programar estos microcontroladores. Se describen los tipos de datos, constantes, variables, operadores, funciones y declaraciones de control soportadas por el compilador CCS para esta familia de PICs.
El documento describe la organización de la memoria en los microcontroladores PIC16F87X. Estos dispositivos tienen tres bloques de memoria: memoria de programa, memoria RAM y memoria EEPROM. La memoria RAM se divide en cuatro bancos que contienen registros de propósito general y registros de funciones especiales. Los bits del registro STATUS seleccionan qué banco está activo.
Este documento presenta un curso sobre microcontroladores PIC18F4550 que incluye temas como bootloaders, CCS y Proteus. El curso se enfoca en desarrollar aplicaciones para resolver problemas reales con eficiencia. Incluye capítulos sobre introducción a microcontroladores, lenguaje C y librerías incorporadas.
programacion con microcontrolador pic 16f84guestf09168b
Este documento introduce la programación del microcontrolador PIC 16F84. Explica las características básicas del PIC 16F84 como su memoria, puertos de entrada y salida, y frecuencia de trabajo. También presenta instrucciones básicas de programación en ensamblador como cargar valores, sumar y restar registros. Finalmente, incluye ejemplos de código para sumar números en diferentes sistemas de numeración.
El documento describe los registros PCL y PCLATH que almacenan la dirección del programa counter (PC). También describe la pila de 8 niveles que almacena el valor de PC para las instrucciones CALL y las interrupciones. Finalmente, explica cómo la memoria de programa de 8Kb está paginada en bloques de 2Kb a través de los bits PCLATH<4:3>.
Este documento presenta las normas y los pasos a seguir para la evaluación del proyecto final de Microcontroladores II. Los estudiantes deben diseñar un proyecto que incluya automatización, manejo de periféricos, estructuras de contadores, conversión analógica/digital y comunicación serial. El proyecto será evaluado en 5 pasos: enunciado, diagrama de bloques, diagramas de flujo, programación en C y simulación en Proteus.
Este documento describe el módulo CCP (Captura/Comparación/PWM) de los microcontroladores PIC16F87X. El módulo CCP contiene dos registros de 16 bits que pueden funcionar como registros de captura, comparación o PWM. El módulo CCP1 y CCP2 son idénticos excepto por el modo de disparo especial de CCP2. El documento explica en detalle los modos de funcionamiento de captura, comparación y PWM, así como la configuración y uso de los registros asociados.
El documento introduce los microcontroladores, describiendo que se encuentran presentes en muchos dispositivos cotidianos y áreas como la industria, telecomunicaciones y automóviles. Explica que los microcontroladores son una evolución de los microprocesadores que integran funciones electrónicas en un solo chip. Finalmente, describe la arquitectura interna típica de un microcontrolador, dividiéndola en núcleo, periféricos y características especiales.
El documento describe el módulo TIMER2 del PIC16F87X. El TIMER2 es un temporizador-contador ascendente de 8 bits que puede usarse como base de tiempo para otros módulos. Tiene un registro de periodo PR2 que, cuando coincide con el valor del contador TMR2, genera una interrupción. El preescaler y postescaler permiten dividir la señal de reloj y la interrupción respectivamente.
Este documento presenta un curso sobre los microcontroladores PIC16F87X. Explica que el curso se basa en cuatro microcontroladores de la familia PIC16F87X con diferentes números de pines y capacidades de memoria. También proporciona detalles sobre las características principales y periféricos de los PIC16F87X y concluye con un ejercicio práctico para configurar las entradas y salidas digitales.
Este documento proporciona información técnica detallada sobre el microcontrolador PIC16F84A, incluyendo sus características de CPU y periféricos, diagrama de bloques, pines de entrada/salida, organización de memoria de programa y datos, y descripción de los registros de propósito especial.
Este documento presenta una introducción a la programación en C usando el compilador Hi-Tech para PIC18. Explica las características del compilador, los tipos de datos soportados, constantes, operadores, funciones y declaraciones de control como if-else, for y while. También cubre comentarios y los pasos iniciales para crear y compilar un proyecto en MPLAB usando este compilador.
Este documento presenta un curso de programación en C para microcontroladores PIC16F87XX. Cubre temas como IDEs, bootloaders, plataformas de desarrollo, recordatorios sobre C y programación de módulos como entrada/salida digital, comunicaciones RS232, interrupciones y conversión A/D.
Curso de programacion en c++ para microcontroladores pic 16 f87xxfreddymadriz
Este documento presenta un curso de programación en C para microcontroladores PIC16F87XX. Cubre temas como IDEs, bootloaders, plataformas de desarrollo, y programación en C de los módulos del PIC16F8XX como E/S digital, comunicaciones RS-232, interrupciones y conversión A/D.
Este documento presenta un curso de programación en C para microcontroladores PIC16F87XX. Cubre temas como IDEs, bootloaders, plataformas de desarrollo, recordatorios sobre C y programación de módulos como entrada/salida digital, comunicaciones RS-232, interrupciones y conversión A/D en C para PIC16F8XX.
Este artículo describe cómo programar microcontroladores PIC usando el compilador PCW, el cual permite programarlos en lenguaje C en lugar de ensamblador. Esto agiliza el desarrollo de programas, ya que el lenguaje C es más sencillo que el ensamblador. Se explican las características y funciones principales del compilador PCW, incluyendo el manejo de puertos, interrupciones, retardos, comunicación serial y módulos LCD. También se incluye un ejemplo de cómo escribir en una pantalla LCD.
El documento proporciona una introducción al lenguaje de programación C y al entorno de desarrollo Turbo C. Explica los tipos de datos básicos en C, operadores, estructuras de control de flujo como if/else y ciclos for y while. También cubre temas como funciones, arreglos, estructuras, manejo de cadenas y E/S. El objetivo es servir como guía para aprender los conceptos fundamentales de C usando el entorno Turbo C.
Este documento contiene información sobre microprocesadores y microcontroladores. Incluye definiciones de variables, programación en lenguaje ensamblador y C, operadores, sentencias condicionales y bucles, manejo de bits, arreglos, interrupciones y teclados matriciales 4x4. Cubre temas como programación, declaración de variables, tipos de datos, comentarios y diferentes estructuras de control de flujo para la programación de microcontroladores.
Este documento contiene información sobre microprocesadores y microcontroladores. Explica conceptos como programación en lenguaje ensamblador y C, uso de registros de configuración, puertos digitales y analógicos, declaración de variables, operadores, sentencias condicionales y bucles. También cubre temas como interrupciones, arreglos y el manejo de teclados matriciales 4x4.
Este documento describe los elementos básicos de programación en C, incluyendo definiciones, palabras clave, tipos de datos, variables, constantes, operadores y estructura general de un programa en C. Explica que un programa en C consta de funciones, con la función principal main() obligatoria, y cubre temas como declaración de variables, tipos de datos fundamentales como enteros y caracteres, y operaciones aritméticas y lógicas básicas.
Este documento presenta una introducción al lenguaje de programación C y C++. Explica que C fue creado en los años 1970 por Dennis Ritchie en los laboratorios Bell y fue usado para crear el sistema operativo UNIX. Luego, C++ fue desarrollado como una extensión orientada a objetos de C. El documento también cubre temas como tipos de datos primitivos, variables, punteros, funciones y aritmética de punteros en C y C++.
El documento explica los componentes básicos de un programa en C++, incluyendo variables, constantes, operadores, funciones y tipos de datos. Describe que C++ es sensible a mayúsculas y minúsculas y es un lenguaje orientado a tipos. Presenta un programa sencillo que calcula el área de un rectángulo para ilustrar estos conceptos.
Este documento presenta una introducción al lenguaje de programación C dirigida a principiantes y avanzados. Explica la estructura básica de un programa en C, incluyendo la función principal, librerías, comentarios, variables, constantes y cadenas de texto. También cubre temas como la definición y uso de variables, incrementos y decrementos, y muestra ejemplos simples de programas en C.
Este documento presenta un manual introductorio sobre programación en C dirigido a principiantes y avanzados. Explica conceptos básicos como estructura de programas en C, tipos de variables, constantes, comentarios, funciones y librerías. También incluye ejemplos simples de código en C para ilustrar estos conceptos.
This document discusses the printf() function for serial RS232 input/output in PIC programming in C. It describes how to use the #use RS232 directive to enable serial communication and the various parameters that can be set. It then provides examples of using printf() to output strings and variable values to the serial port or LCD.
Este documento describe los elementos básicos de la programación en C, incluyendo definiciones clave, estructura de un programa, tipos de datos, variables, constantes, operadores y expresiones. Explica las 32 palabras clave de C, la función principal main(), y las secciones típicas de un programa C. Además, detalla cada tipo de dato fundamental, cómo declarar y definir variables y constantes, y los operadores aritméticos y lógicos.
El documento explica los conceptos básicos de las funciones en C, incluyendo su estructura, sintaxis, diferencias entre paso de parámetros por valor y dirección, y uso de prototipos, implementación, argumentos, parámetros, llamadas, retorno de valores y bibliotecas estándar. También presenta un ejercicio para identificar errores en código de funciones.
Este documento presenta una introducción al lenguaje de programación C. Explica que C es un lenguaje estructurado desarrollado en 1972 y que es ampliamente usado para programar sistemas. Incluye secciones sobre la estructura básica de los programas en C, variables, constantes, funciones, y ejemplos simples. El objetivo es proporcionar una guía para principiantes y avanzados sobre los conceptos fundamentales de la programación en C.
Este documento presenta una introducción a los conceptos básicos del lenguaje de programación C, incluyendo declaración de variables, tipos de datos, estructuras de control, punteros, entrada y salida de datos, y funciones. También cubre cómo trabajar con funciones y variables en múltiples archivos mediante la inclusión de archivos y declaraciones extern. El propósito es servir como material de apoyo para el curso de Metodología y Tecnología de Programación.
El documento describe el lenguaje de programación C. C fue creado a mediados de los años 70 y es un lenguaje estructurado pero no rígido en la comprobación de tipos de datos. El lenguaje C consta de funciones y una función principal llamada main que se ejecuta primero al iniciar el programa.
Similar a Introduccion a la programacion en c 1 (20)
Los puentes son estructuras esenciales en la infraestructura de transporte, permitiendo la conexión entre diferentes
puntos geográficos y facilitando el flujo de bienes y personas.
Estilo Arquitectónico Ecléctico e Histórico, Roberto de la Roche.pdfElisaLen4
Un pequeño resumen de lo que fue el estilo arquitectónico Ecléctico, así como el estilo arquitectónico histórico, sus características, arquitectos reconocidos y edificaciones referenciales de dichas épocas.
Estilo Arquitectónico Ecléctico e Histórico, Roberto de la Roche.pdf
Introduccion a la programacion en c 1
1. 1.-Introduccion
El Hi-Tech para PIC es un compilador
profesional estándar que fue por una compañía
muy bien establecida como un proveedor de
desarrollo de sistemas de herramientas. Hi tech
suministra compiladores en C para un gran
rango de microcontroladores en el Mercado:
PIC16,18,24,32 y dsPIC(Procesadores de señal
digital) como también los microcontroladores
de Motorola (freescale) 68000,ARM,derivados
del 8051, Textas Instruments, Dispositivos
MSP430, y otros productos.
Las características notables son las siguientes:
1.-ANSI C – Completa característica y portable.
2.-Fiable
3.-Multiple niveles de optimizaciones en C
4.-Un optimización por ensamblador
5.-Relocaliza las variables locales para disminuir
el uso de la RAM.
6.-Una buena librería en C.
La optimización lleva a la reducción del tamaño
del código final para remover códigos
redundantes y modifica la versión del
ensamblador para reducir el número de
instrucciones para la mínima.
La más obvia desventaja de este compilador es
que solo las funciones de la librería estándar
para conversión de datos, manejo de la
memoria, operaciones matemáticas y básicas
E/S están proporcionadas.
Esto asume que el usuario fabricara las librerías
de manejo de los periféricos del
microcontrolador.
Diagrama de secuencia de inicialización de compilación
1.1.- Estructura de un Programa
Los procesadores PIC18 tienen algunas
localidades que contienen la configuración de
los bits llamados fuses estos bits pueden ser
establecidos usando el macro de configuración.
El macro tiene el formato:
__CONFIG(n,X);
Donde n es el número de registro de
configuración y X es el valor que es para
establecer la configuración de palabra. El macro
Hi-Tech Compiler for
Introducción a la
programación en C
PIC18
2. Introduccion a la programacion en HI-TECH 2011
2 Introducción a la programación en C en Hi tech Compiler for PIC18
es definido en <htc.h> hay que asegurar incluir
esta librería cada vez que iniciemos un proyecto
con un micro.
Ejemplo
Después podemos definir la velocidad de reloj:
1.2 Tipo de Datos
El compilador Hi tech C PRO para la familia
PIC18 soporta tipo de datos básicos con 1, 2,3 y
4 byte.
1.3 Constantes
El formato de constantes especifica su radix. Hi
tech C PRO para la familia PIC18 soporta el
Radiz estándar ANSI especifica cual establece
constantes binarios en código C.
En la tabla siguiente se observa como son
definidas las constantes.
Formato radix para Constantes
1.4 Tipos de Variables
Las variables pueden ser localizadas como uso
interno en cada función o si se desea ser una
variable visible en todas las funciones.
Por ejemplo:
La función puede usar la variable value ya que
es una variable global, mientras:
La función puede usar la variable value ya que
es una variable interna y solo ella puede usarla,
mientras si existiera otra función no puede
tomar el valor de la variable porque no existiría
en ella.
#include <htc.h>
__CONFIG(1, RC);
__CONFIG(2, BW8 & PWRTDIS & WDTPS1 & WDTEN);
__CONFIG(4, STVRDIS);
#define _XTAL_FREQ 4000000
//Oscilador Interno de 4MHZ
int value;
Void función(void){
Value=100;
}
Void función(void){
Int value;
Value=100;
}
3. Introduccion a la programacion en HI-TECH 2011
3 Introducción a la programación en C en Hi tech Compiler for PIC18
1.5 Operadores
Las asignaciones son de gran ayuda para reducir memoria de programa del microcontrolador ya que
simplifica la manera de ser una operación. Por ejemplo:
var=var+3000;
07DB 0870 MOVF 0x70, W
07DC 3EB8 ADDLW 0xb8
07DD 00F0 MOVWF 0x70
07DE 0871 MOVF 0x71, W
07DF 1803 BTFSC 0x3, 0
07E0 3E01 ADDLW 0x1
07E1 3E0B ADDLW 0xb
07E2 00F1 MOVWF 0x71
var+=3000;
07DD 30B8 MOVLW 0xb8
07DE 07F0 ADDWF 0x70, F
07DF 1803 BTFSC 0x3, 0
07E0 0AF1 INCF 0x71, F
07E1 300B MOVLW 0xb
07E2 07F1 ADDWF 0x71, F
4. Introduccion a la programacion en HI-TECH 2011
4 Introducción a la programación en C en Hi tech Compiler for PIC18
Las operaciones aritméticas son las que están en la tabla siguiente:
+ Suma
- Resta
* Multiplicación
/ División
% Modulo, Resto de una división entera
-- Decremento
++ Incremento
sizeof Determina el tamaño en bytes de un
operando
Ejemplo:
Var=var2+var3; //suma
Unsigned char var[8];
Var2=sizeof(var); //var2=8 ya que es el tamaño del arreglo
Las relaciones sirven para hacer la comparación de una variable con otro donde al cumplir cierta
relación conlleve a una acción.
< Menor que
> Mayor que
>= Mayor o igual que
<= Menor o igual que
== Igual
¡= Distinto
?: Expresión
Condicional
Por ejemplo:
Var=100;
Var2=2200;
Var!=var2?var++:var2--; //Entra a var++ si es cierta la condición sino
entra a var2—
5. Introduccion a la programacion en HI-TECH 2011
5 Introducción a la programación en C en Hi tech Compiler for PIC18
Las operaciones lógicas son usadas para realizar operaciones de comparación entre varios elementos:
! NOT
&& AND
|| OR
Ejemplo:
If(var==100 && var2==2000);
Las operaciones de bits sirven para separar ciertos bits donde se desean solo tener como comparación.
~ Complemento en 1
& AND
^ OR exclusiva
| OR
>> Desplaza a Derecha
<< Desplaza a Izquierda
Ejemplo:
Var=~0xFF; Var=0x00;
Var=0xFF&0Xf0; Var=0Xf0;
1.6 Funciones
Las funciones son bloques de sentencias, todas las sentencias se deben de enmarcar dentro de las
funciones. Al igual que las variables, las funciones deben definirse antes de utilizarse.
Una función puede ser invocada desde una sentencia de otra función. Una función puede devolver un
valor a la sentencia que la ha llamado. El tipo de dato se indica en la definición de la función; en el caso
de no indicarse nada se entiende que es unsigned char y en el caso de no devolver un valor se debe de
especificar el valor VOID. La función, además de devolver un valor, puede recibir parámetros o
argumentos.
La estructura de una función :
Tipo_dato nombre_funcion(tipo parámetro,parametro2…){
(sentencia);
}
6. Introduccion a la programacion en HI-TECH 2011
6 Introducción a la programación en C en Hi tech Compiler for PIC18
Ejemplo:
2.- Declaraciones de Control
Las declaraciones son usadas para controlar el proceso de ejecución del programa.
Hi tech admite las siguientes:
• If-else
• While
• do-while
• for
• switch-case
• return
• break,continue y goto
2.1 if-else
Primero entra a la comparación de la expr si es cierta entra a ejecutar la sentencia sent_1 sino entra a la
sentencia sent_2.
Nota
Los elementos que estén encerrados en corchetes [] son opcionales
void main(void){
Var=suma(10,20);
}
int suma(int x,int y){
int z;
z=x+y;
return z;
}
if (expr){
sent_1;
}[else
sent_2;]
7. Introduccion a la programacion en HI-TECH 2011
7 Introducción a la programación en C en Hi tech Compiler for PIC18
Si al evaluar la expresión expr resulta falsa entonces entrara a la comparación expr2 pero si ninguno de
los dos son ciertas entonce entrara a ejecutar a sent_3.
2.2.- switch-case
Una manera rápida de acceder a una decisión múltiple es usar la sentencia switch-case:
Var=1;
Switch(Var){
case 0://
if (expr){
sent_1;
}[else if(expr2){
sent_2;
} else
sent_3;
]
If(A==10) B=0;
Else b=1;
If(A==0){
If(B==3) A=0;
}else
B=0;
8. Introduccion a la programacion en HI-TECH 2011
8 Introducción a la programación en C en Hi tech Compiler for PIC18
case 1: B=0; break;
default: //
}
Cuando entra a la sentencia switch realiza la búsqueda de valor deseado, en este caso cuando la variable
Var es igual a 1, entra en el case 1 ya que este caso contiene el valor correspondiente a la variable Var
pero si no existe ninguna igualdad en los case simplemente entrara a default.
Nota
No puede haber dos CASE con la misma constante
2.3.- for
En las expresiones del for la inicialización es una variable a la cual se le asigna un valor inicial con el
controlar el bucle. La condición de finalización sirve para evaluar ANTES de ejecutar las sentencias si es
cierta o no, en el caso de ser cierta se ejecutan las sentencias y en caso contrario se sale del for. Por
último, la expresión de incremento o decremento modifica la variable de control DESPUÉS de ejecutar el
bucle.
switch(A){
case 0: B=10; break;
case 1: B=20; break;
case 2: B=40; break;
default: break;
}
9. Introduccion a la programacion en HI-TECH 2011
9 Introducción a la programación en C en Hi tech Compiler for PIC18
2.4 while/do-while
While se usa para repetir sentencias.
while(expresión){
Sentencias;
}
Primero evalua la expresión si es cierta sigue ejecutando la sentencia hasta que la expresión sea
totalmente falsa.
Do-While es diferente de while y for ya que tiene que entrar por lo menos una vez para ejecutar la
sentencia y después evalúa la expresión.
do{
Sentencias;
}while(expresión);
for(n=0;n<10;n++){
Printf(n);
}
10. Introduccion a la programacion en HI-TECH 2011
10 Introducción a la programación en C en Hi tech Compiler for PIC18
return: sirve para devolver datos.
break: Sirve para salir de bucles como son for,while,do-while
goto: Provoca un salto incondicional
while(n<5 || x>10){
b=100;
a=10;
}
do{
b++;
printf(b);
}while(b<100);
11. Introduccion a la programacion en HI-TECH 2011
11 Introducción a la programación en C en Hi tech Compiler for PIC18
3. Comentarios
Los comentarios sirven para facilitar la comprensión del programa, y permite que otros usuarios puedan
entender el programa fácilmente.
• Utilizamos // para poner comentarios a una línea especifica
• Usamos /* y*/ para envolver a dentro de ellos un texto que puede ser por default la explicación
del programa en general.
Ejemplo:
PORTB=0x00; //Apagamos puerto b
*/ Inicializamos el puerto b para que no exista
El efecto rebote o picos cuando incie el micro*/
PORTB=0x00;
Para iniciar en la programación de microcontroladores de PIC18 se debe de tener el software que nos
proporciona gratis la compañía Microchip en su web, www.microchip.com, el programa es MPLAB IDE, al
descargarlo e instalarlo, debemos ahora de descargar el software HI TECH for PIC18 en su página
www.htsoft.com y lo instalamos.
Al tener todo bien instalado, procedemos abrir el software MPLAB IDE.
En HI TECH compiler for PIC18
12. Introduccion a la programacion en HI-TECH 2011
12 Introducción a la programación en C en Hi tech Compiler for PIC18
Software MPLAB
Como ya tenemos abierto el software vallamos a crear un proyecto en C, daremos click en <proyect
Wizard> nos abrirá una venta donde nos saluda, daremos click en <next> aparecerá en seguida el paso
uno a realizar que es seleccionar el
microcontrolador a programar, en
este caso vallamos a elegir el
PIC18F2550, y damos click en
<next> el paso dos es elegir el
compilador a usar, buscaremos el
compilador HI TECH en <Active toolsuite>, y después <next> el paso tres es buscar lugar donde se debe
de guardar nuestro proyecto, entonces buscamos donde queramos archivar nuestro proyecto, y damos
click en <next>, después nos mencionara que si queremos adherir proyectos existentes al nuestro, y
finalizaremos.
Ahora como nuestro lugar del proyecto no contiene ningún archivo, solo
vallamos a agregar una hoja en blanco en <file><new>, después grabamos
la hoja en blanco en el lugar del proyecto y lo agregamos al espacio de
trabajo solo dar click derecho en <Source File> y agregamos la hoja en
blanco que fue antes guardada, y listo hemos hecho una hoja de trabajo,
estamos listo para empezar a programar.
Lo primero que vamos a realizar es el parpadeo de un led, como se va
utilizar un oscilador interno se debe de configurar correctamente los fuses
del micro, para que este pueda ser calibrado con el Oscilador Interno.
El PIC18F2550 contiene un modulo de USB que utiliza algunos bits de
configuración para usarlo, en este caso se deben de configurar de una
forma donde no se utilice estos bits o desactivarlos.
13. Introduccion a la programacion en HI-TECH 2011
13 Introducción a la programación en C en Hi tech Compiler for PIC18
Para la utilización de los fueses y de los registros del Micro, se debe de agregar la librería estándar para
uso de todos los módulos PIC18.
#include<htc.c>
Después definiremos la frecuencia de trabajo para la utilización de __delay_ms para ellos se usa la línea:
//////////////////////////////
//Frecuencia FOSC 8Mhz
//////////////////////////////
#define _XTAL_FREQ 8000000
Ahora ya podemos agregar la función principal, void main (void) como vimos en la configuración de bits
(fuses) en __CONFIG(1,INTIO…) se utilizado un oscilador interno, para el uso de una frecuencia de 8Mhz
se debe de inicializar el registro OSCCON.
/////////////////////////////////////////////////////////////
//Configuracion para trabajar Con oscilador interno de 8Mhz
__CONFIG(1,INTIO & FCMDIS & IESODIS & PLLDIV5 & PLLPOSTDIV2 & CPUDIV1 & USBOSC);
/////////////////////////////////////////////////////////////
__CONFIG(2,VREGDIS & PWRTEN & BORDIS & WDTDIS & BORV45 & WDTPS32K);
__CONFIG(3,PBDIGITAL & LPT1DIS & MCLREN);
__CONFIG(4,STVRDIS & LVPDIS & ICPORTDIS & DEBUGDIS);
__CONFIG(5,UNPROTECT);
__CONFIG(6,UNPROTECT);
__CONFIG(7,UNPROTECT);
14. Introduccion a la programacion en HI-TECH 2011
14 Introducción a la programación en C en Hi tech Compiler for PIC18
Solo basta de cargar el valor de los 3 bits IRCF2:IRCF0.
OSCCON=0x70; //Oscilador a 8Mhz
NOP();NOP();NOP();NOP();
Se utiliza los parámetros NOP() para que pueda establecerse la frecuencia, para hacer el parpadeo de un
led, se debe de configurar correctamente los registros TRIS, como vamos a hacer el parpadeo de un led
en un solo pin del puerto B, los bits que representa al registro de puerto o cualquier registro solo, es
poner el nombre del bit en este caso RB0.
NOTA
Siempre tenga a la mano la hoja de datos del microcontrolador que se vaya a trabajar para estar
siempre informado de los registros y de los bits de cada uno de ellos.
Para un ciclo perpetuo se usa la sentencia while.
////////////////////////////////////////////////
//Configuración del Puerto B ////
////////////////////////////////////////////////
TRISB=0x00;
PORTB=0x00;
/*************************************************/
while(1){
RB0=0;
DELAY1S();
RB0=1;
DELAY1S();
}
Como se ve se usa una función de temporización de 1 segundo como el compilador no ofrece librerías
de retardos tan altos, nosotros debemos de fabricar los, para ellos haremos la función DELAY1S().
Solo basta usar una variable y una sentencia for para repetir tiempos.
//////////////////////////////
//FUNCION DE 1 SEGUNDO
//////////////////////////////
void DELAY1S(void){
unsigned char time;
for(time=0;time<100;time++){
__delay_ms(10);
}
}
15. Introduccion a la programacion en HI-TECH 2011
15 Introducción a la programación en C en Hi tech Compiler for PIC18
El programa completo se muestra a continuación:
////////////////////////////////////////////////////////
// BLINK EN PIN PB0
//Autor: george.manson.69
//Lugar: Mexico
//Compilador: HI TECH PIC18 (LITE MODE)
////////////////////////////////////////////////////////
#include<htc.h>
/////////////////////////////////////////////////////////////
//Configuracion para trabajar Con oscilador interno de 8Mhz
__CONFIG(1,INTIO & FCMDIS & IESODIS & PLLDIV5 & PLLPOSTDIV2 & CPUDIV1 & USBOSC);
/////////////////////////////////////////////////////////////
__CONFIG(2,VREGDIS & PWRTEN & BORDIS & WDTDIS & BORV45 & WDTPS32K);
__CONFIG(3,PBDIGITAL & LPT1DIS & MCLREN);
__CONFIG(4,STVRDIS & LVPDIS & ICPORTDIS & DEBUGDIS);
__CONFIG(5,UNPROTECT);
__CONFIG(6,UNPROTECT);
__CONFIG(7,UNPROTECT);
//////////////////////////////
//Frecuencia FOSC 8Mhz
//////////////////////////////
#define _XTAL_FREQ 8000000
float value;
//////////////////////////////
//FUNCION DE 1 SEGUNDO
//////////////////////////////
void DELAY1S(void){
unsigned char time;
for(time=0;time<100;time++){
__delay_ms(10);
}
}
/////////////////////////////////////////////////
//Funcion de interrupcion
//Si no se usa simplemente no hacemos nada...
//Esto sirve para direccionar lo los datos
//en un lugar muy cercano al Inicio de la memoria
//de datos
////////////////////////////////////////////////
static void interrupt
isr(void){}
//////////////////////////////
//FUNCION PRINCIPAL
//////////////////////////////
void main(void){
/////////////////////////////////////////////////
//Registro para Configurar el Oscilador Interno//
/////////////////////////////////////////////////
OSCCON=0x70;
NOP();NOP();NOP();NOP();//4Ciclos para estabilizar Frecuencia
16. Introduccion a la programacion en HI-TECH 2011
16 Introducción a la programación en C en Hi tech Compiler for PIC18
/////////////////////////////////////////////////
/*************************************************/
////////////////////////////////////////////////
//Configuracion del Puerto B ////
////////////////////////////////////////////////
TRISB=0x00;
PORTB=0x00;
/*************************************************/
while(1){
RB0=0;
DELAY1S();
RB0=1;
DELAY1S();
}
}