tecmikro logo
Programación de microcontroladores PIC en mikroC PRO
Email: tecmikro@gmail.com   Cel. 098 743 8877   Telf. 243 0352 Quito-Ecuador


Artículos

 

Esta es una introducción a los principales temas acerca de proyectos con microcontroladores PIC en lenguaje C, con el compilador mikroC PRO, que se pueden crear con los microcontroladores PIC y dispositivos de propósito general disponibles actualmente y de fácil acceso. Los temas con microcontroladores PIC que se describen cubren múltiples áreas de aplicación y están organizados de menor a mayor complejidad. Se utiliza el lenguaje C (sintaxis de mikroC PRO) para la programación y se han añadido los ejemplos necesarios que permitirán al lector comprender rápidamente el uso de los diferentes módulos internos y externos de los microcontroladores PIC. Con los ejemplos aquí expuestos, el lector estará en capacidad de emprender el diseño y construcción de sus propios proyectos en diversos campos de aplicación.

Conceptos básicos

Los bits de configuración

Los bits de configuración (Device Configuration Bits) tienen importancia capital en la operación de un proyecto. Sin la configuración adecuada el diseño jamás funcionará. Muchos diseñadores se esmeran por escribir un código fuente con las mejores características técnicas y estéticas, dedican largas horas al diseño del esquema eléctrico, del circuito impreso y multitud de detalles, pero suelen pasar por alto uno de los puntos de mayor significado: la selección de los bits de configuración. La omisión de este detalle les acarrea muchos dolores de cabeza, intentando hallar alguna falla en el lugar equivocado; es por eso que recomendamos que como paso previo a la escritura del código fuente, primero se configuren los bits del dispositivo para establecer el modo correcto de funcionamiento. Ver más...

Lenguaje C (mikroC PRO)

El lenguaje C (mikroC PRO) para programación de microcontroladores PIC está basaso en el lenguaje C empleado en la programación de computadoras, por lo tanto se encontrará que hay sólo unas pequeñas diferencias propias de la aplicación en el campo de los microcontroladores. Para aprender lenguaje C lo más recomendable es conocer los elementos básicos de la programación, los cuales se emplean en la solución de la gran mayoría de problemas de programación. Ver más...

Simulador Proteus ISIS

ISIS es uno de los componentes del sistema PROTEUS de la empresa Labcenter Electronics. ISIS permite crear esquemas electrónicos empleando una amplia variedad de dispositivos de todos los fabricantes de renombre mundial. Los circuitos electrónicos con microcontroladores pueden ser simulados por medio del simulador incorporado PROTEUS VSM. También existe la posibilidad de diseñar circuitos impresos con el el programa ARES que es otro de los componentes del sistema PROTEUS. Ver más...

PICkit2 Clone: Programador de microcontroladores PIC

El PICkit2 Clone es un programador de microcontroladores PIC (conocido también como grabador de PIC o quemador de PIC) que se basa en el original PICkit2 de Microchip y trabaja con el software de aplicación (driver) PICkit2 v2.61 de Microchip. Este programador de PIC está diseñado para el puerto USB que se encuentra actualmente en la gran mayoría de computadoras personales. Puede operar correctamente en Windows XP, Windows Vista, Windows 7, Windows 8 y Windows 8.1. Está diseñado para programar una gran cantidad de microcontroladores flash, memorias EEPROM y otros dispositivos fabricados por Microchip. Ver más...

PICkit2 Clone: Programador de memorias EEPROM

El PICkit2 Clone es un programador de microcontroladores PIC y también puede emplearse como programador (grabador o quemador) de memorias EEPROM de Microchip. Está diseñado para el puerto USB que se encuentra actualmente en la gran mayoría de computadoras personales. Puede operar correctamente en Windows XP, Windows Vista, Windows 7, Windows 8 y Windows 8.1. Ver más...

Solución de problemas y errores con los microcontroladores PIC

Las condiciones de funcionamiento en un ambiente real (no simulado) suelen ocasionar problemas inesperados, fundamentalmente debido al ruido eléctrico y algunos errores comunes en el uso de los microcontroladores PIC; estas dificultades pueden convertirse en autenticos quebraderos de cabeza ocasionando pérdidas de recursos y valioso tiempo. Ver más...

Temas avanzados

LCD 16x2 (LCD 2x16)

La pantalla LCD 16x2 (LCD 2x16) se ha popularizado mucho en los últimos años, debido a su gran versatilidad para presentar mensajes de texto (fijos y en movimiento), valores numéricos y símbolos especiales, su precio reducido, su bajo consumo de potencia, el requerimiento de solo 6 pines del PIC para su conexión y su facilidad de programación en lenguajes de alto nivel (por ejemplo, lenguaje C). Ver más...

Memoria EEPROM de datos

La memoria EEPROM interna tiene la capacidad para ser programada y reprogramada por la CPU del PIC, para asegurar que en caso de una falla o desconexión de la energía los valores o variables críticas se puedan mantener en una memoria no volátil. Ver más...

Timer 0: Temporizador y contador

El Timer 0 del microcontrolador PIC se utiliza cuando el sistema necesita un control estricto del tiempo. Normalmente esto se suele realizar empleando código que genera retardos de tiempo, pero la manera más óptima y precisa de hacerlo es por medio de la programación del Timer 0 del PIC. Ver más...

Watchdog timer WDT

Los dispositivos de Microchip disponen de una amplia variedad de recursos incorporados para que el desarrollo de aplicaciones y proyectos sea más sencillo y eficiente para el Ingeniero o Diseñador. Estos recursos contribuyen a mejorar la confiabilidad, reducir los costos en componentes electrónicos, el tamaño de los circuitos electrónicos y el consumo de energía. Los recursos más sobresalientes son: Varias clases o tipos de reset (reset maestro, reset al encendido POR, reset por desvanecimiento BOR, etc), watchdog timer WDT (perro guardián), encendido de doble velocidad, oscilador de seguridad y modo de bajo consumo (sleep). Ver más...

Interrupciones en mikroC PRO

Las interrupciones son eventos que ocasionan que el microcontrolador deje de realizar la tarea actual y pase a efectuar otra actividad. Al finalizar la segunda actividad retorna a la primera y continúa a partir del punto donde se produjo la interrupción. Las interrupciones permiten que un solo microcontrolador ejecute varias tareas (no exactamente al mismo tiempo) dependiendo del evento que desencadene la interrupción. Estos dispositivos tienen desde 10 hasta 15 fuentes de interrupción dependiendo del tipo específico de PIC. El manejo de las interrupciones se programa por medio de registros especiales que controlan el comportamiento del microcontrolador bajo determinadas circunstancias. Ver más...

Teclado matricial (teclado 4x4)

El teclado matricial (teclado 4x4) es muy empleado en el desarrollo de proyectos y encuentra aplicación en el ingreso de datos alfanuméricos de manera manual, en aquellos casos en que el uso de pulsadores simples (botones) no es lo más apropiado, ya sea por la presentación final del producto o por la restricción del número de líneas de entrada del microcontrolador. Recibe el nombre debido a que tiene 16 teclas formando una matriz que normalmente representan las cifras del sistema de numeración hexadecimal. Ver más...

Periféricos: PWM

Son módulos que trabajan en coordinación con la CPU del microcontrolador y que le añaden gran poder y versatilidad. Los periféricos se encuentran incorporados dentro del propio microcontrolador y contribuyen a simplificar enormemente el proceso de diseño, tanto en hardware como en software, de una determinada aplicación. Entre los periféricos más importantes se encuentran los módulos PWM (Modulación de Ancho de Pulso) , los convertidores analógico/digital (Convertidor A/D), los módulos de comunicación serial SSP y AUSART (SCI) y los comparadores. Ver más...

USART (UART): Comunicación con el computador

Una rasgo de gran importancia que poseen los microcontroladores PIC es la capacidad de comunicarse con el computador a través de un módulo incorporado que tiene las características apropiadas para el intercambio de información. Este módulo se llama USART (Universal Synchronous Asynchronous Receiver Transmitter) y opera de acuerdo al estándar RS232 que también es muy utilizado en las computadoras personales u ordenadores. Como interfaz entre los niveles TTL del PIC y RS232 del computador se suele utilizar el circuito integrado MAX232. Ver más...

Bus I2C

El bus I2C (Inter-Integrated Circuit) o Interconexión de Circuitos Integrados es una tecnología para comunicación serie por medio de dos conductores en una configuración maestro-esclavo (master-slave) con velocidades de transmisión que van desde los 100kbps (modo Estándar) hasta los 400kbps (modo Rápido). Los dispositivos con modo Estándar o Rápido pueden operar en el mismo bus, siempre y cuando el bus trabaje a la velocidad del dispositivo más lento. Se ha desarrollado un protocolo para el bus I2C para asegurar que la transferencia de datos sea confiable (libre de errores). Ver más...

Motores DC y motores paso a paso PAP con el driver L293D-B

Los motores eléctricos se emplean ampliamente en el área de la automatización, desde los juguetes hasta la robótica industrial, pasando por la medicina, las aplicaciones militares, la investigación espacial y submarina, los electrodomésticos, las computadoras, los dispositivos de entretenimiento, los simuladores, las máquinas herramientas, los automóviles, etc. Los más utilizados son los motores DC y los motores PAP (paso a paso) en los cuales se puede controlar el sentido de giro, la velocidad y la posición angular. Ver más...

Qué es un servomotor y cómo se utiliza?

Los servomotores (también conocidos como servos) se controlan por medio de un pulso de ancho variable y frecuencia constante (PWM). El terminal de control se utiliza para el ingreso de este pulso. De acuerdo a las restricciones de rotación del servo motor, la posición neutral se define como aquella en la que el servomotor dispone del mismo ángulo de giro hacia la izquierda y hacia la derecha, es decir es una posición central a partir de la cual el eje puede girar el mismo ángulo en ambos sentidos. Ver más...

Radiofrecuencia: sistema TX/RX a 433MHz

Este sistema TX/RX (Transmisor/Receptor) permite la implementación de enlaces de datos de radiofrecuencia, de forma muy simple, alcanzando distancias de hasta 80 metros dentro de edificaciones o 350 metros en campo abierto cuando opera con la fuente de 12V. Opera en el rango de los 433MHz (UHF) con modulación por desplazamiento de amplitud (ASK). Ver más...

Comunicación PIC a PIC

La comunicacion alámbrica entre microcontroladores PIC es de suma importancia pues permite tener sistemas con multiples microcontroladores ejecutando distintas tareas en forma coordinada. La transmision de datos se puede lograr de forma bidireccional usando el modulo USART incorporado o funciones propias del compilador mikroC PRO. Ver más...

LCD grafico GLCD 128x64

El GLCD 128x64 brinda mucha flexibilidad para el desarrollo de aplicaciones en las que sea necesario presentar texto o imágenes. Se compone de una matriz de pixeles dispuestos en filas y columnas. Cada pixel puede manejarse individualmente y permite mostrar texto, gráficos o una combinación de ambos.Se emplea en aquellos casos en los que es necesario tener un control total del área de la pantalla. Actualmente se han popularizado los módulos GLCD 128x64 que incorporan un controlador especial para este propósito (el circuito integrado T6963C de Toshiba es uno de los más utilizados actualmente). Ver más...

Pantalla táctil 128x64 (GLCD 128x64 táctil)

La pantalla táctil es una combinación de una pantalla gráfica estándar GLCD 128x64 y un panel táctil (touch panel TP). La tecnología táctil es lo más moderno que existe actualmente para la interacción entre el usuario y un dispositivo electrónico y se usa ampliamente en teléfonos celulares, tablets, computadoras personales y otros artefactos electrónicos. Normalmente para convertir una pantalla gráfica (GLCD 128x64) a la tecnología táctil se coloca sobre aquélla un panel táctil (se lo puede comprar por separado o incorporado al GLCD). El control del panel táctil se logra actuando sobre sus cuatro terminales de conexión a través de un pequeño circuito transistorizado y un microcontrolador. La pantalla táctil se conecta de la manera convencional al microcontrolador, y debido al número relativamente alto de conexiones necesarias se debe utilizar un microcontrolador con la cantidad suficiente de pines disponibles, por ejemplo puede ser el 16F877A o el 16F887. Ver más...

Ethernet con PIC

Ethernet es un protocolo de capa de enlace de datos y capa física definido por la especificación IEEE 802.3. Ethernet utiliza topologías de bus o estrella y soporta velocidades de transferencia de datos de 10 Mbps (10-BaseT), 100 Mbps (10/100Base-T) o 1.000 Mbps (1Gbps). Utiliza el método de acceso CSMA/CD para manejar las demandas simultáneas y es uno de los estándares LAN más ampliamente implementados. Para aplicaciones integradas, Ethernet se utiliza normalmente para el monitoreo remoto o el control de datos, con velocidades de transferencia de 10 y 100 Mbps. Ver más...

Ejemplos adicionales

Circuito de un reloj digital con PIC16F877A

Circuito de un reloj digital con PIC16F877A y display de 7 segmentos. La hora se muestra en formato de 24 horas; por ejemplo 14:35 (dos de la tarde y 35 minutos). Dispone de botones para ajuste de horas y minutos. Un botón adicional permite activar la presentación (encender el display) por un lapso de 1 segundo para ver la hora actual; esta funcion apaga el display de forma automatica con el proposito de reducir el consumo y ahorrar energia, muy util si la alimentacion se obtiene de una bateria. Ver más...

Motor paso a paso unipolar de 12V

Este motor PAP unipolar cuenta con un conector de cinco terminales, cuatro de los cuales corresponden a las bobinas y el quinto se utiliza para la conexión de la fuente de alimentación. Incorpora un mecanismo reductor de velocidad (esto incrementa enormemente su fuerza), lo que hace necesario ejecutar una cantidad bastante grande de pasos para obtener un movimiento apreciable del eje externo (ver ejemplo de programación). Es un motor de bajo costo y puede ser utilizado en múltiples proyectos tanto básicos como avanzados. Ver más...

Tacómetro digital con microcontrolador PIC

El tacómetro digital con PIC consta de un PIC16F88, una pantalla LCD 2x16 , un sensor tipo herradura GP3S62 de Sharp, y un regulador de 5V/100mA. El Timer0 del PIC trabaja como contador de las transiciones alto-bajo en el pin RA4/T0CKI durante 1 segundo. Ver más...

Decodificador DTMF MT8870 con PIC16F628A

El decodificador DTMF MT8870 consta de un PIC16F628A operando a partir de su oscilador interno de 4MHz. Se genera una interrupción debida al Timer0 cada 50 ms (0,050 segundos) que se toma como base de tiempo para contabilizar los diferentes intervalos necesarios para el funcionamiento del circuito. Ver más...

Motor paso a paso con driver L298N y PIC16F628A

El driver L298N es un driver de alta potencia para el control de motores de pasos (motores PAP) de hasta 2A. Este driver puede soportar hasta 46V con una salida total de corriente de hasta 4A. El siguiente circuito tiene el propósito de ser utilizado para la prueba de cualquier motor pap unipolar o bipolar de manera rápida, para constatar su funcionamiento. Ver más...

Semáforo básico con PIC16F88

Este es sólo un ejemplo muy básico de un semáforo con PIC. El propósito es presentar al lector las líneas iniciales de la programación de microcontroladores en lenguaje C. El lector debe tener en cuenta que a partir de este ejemplo, y una vez que comprenda los fundamentos, podrá ir creando sus propios diseños. Ver más...

Discador telefónico DTMF

El discador telefónico W91314A genera llamadas automáticamente controladas por un PIC16F628A que remplaza al teclado hexadecimal convencional. Las llamadas se generan por medio de los tonos DTMF producidos por el discador de forma segura y efectiva. Este circuito permite automatizar de forma muy sencilla y económica la generación de llamadas en aplicaciones de vigilancia remota. Ver más...

 


eBook en formato PDF "Cómo programar microcontroladores PIC"

Guía básica para programar microcontroladores PIC en mikroC PRO. Disponible en formato PDF. A la venta por tan sólo US$12.00

¡Cómpralo ya!