Gama media.
PIC16CXXX con instrucciones de 14 bits
Es la gama más variada y completa de los PIC. Abarca modelos con encapsulado desde 18
patitas hasta 68, cubriendo varias opciones que integran abundantes periféricos. Dentro de esta
gama se halla el «fabuloso PIC16X84» y sus variantes.
En esta gama sus componentes añaden nuevas prestaciones a las que poseían los de la
gama baja, haciéndoles más adecuados en las aplicaciones complejas. Admiten interrupciones,
poseen comparadores de magnitudes analógicas, convertidores A/D, puertos serie y diversos
temporizadores.
El repertorio de instrucciones es de 35, de 14 bits cada una y compatible con el de la gama
baja. Sus distintos modelos contienen todos los recursos que se precisan en las aplicaciones de los
microcontroladores de 8 bits. También dispone de interrupciones y una Pila de 8 niveles que
permite el anidamiento de subrutinas.
Encuadrado en la gama media también se halla la versión PIC14C000, que soporta el diseño
de controladores inteligentes para cargadores de baterías, pilas pequeñas, fuentes de
alimentación ininterrumpibles y cualquier sistema de adquisición y procesamiento de señales que
requiera gestión de la energía de alimentación. Los PIC 14C000 admiten cualquier tecnología de las
baterías como Li-Ion, NiMH, NiCd, Ph y Zinc.
El temporizador TMR1 que hay en esta gama tiene un circuito oscilador que puede trabajar
asíncronamente y que puede incrementarse, aunque el microcontrolador se halle en el modo de
reposo (“sleep”), posibilitando la implementación de un reloj en tiempo real. Las líneas de E/S
presentan una carga “pull-up” activada por software.
¿Qué es un programador (grabador o quemador) de PIC?
En el contexto del hardware, es una tarjeta electrónica en la cual se inserta el microcontrolador
PIC con el propósito de transferir el código del programa (en formato binario) desde el
computador del usuario y grabarlo en la memoria interna del microcontrolador. Esta tarjeta se
conecta a un puerto (LPT1, USB, etc.) del computador y por medio del software de control se
realiza la transferencia (programación) del código ejecutable *.hex de una determinada aplicación
hacia el PIC. Programador también es el nombre que se le da a la persona encargada de escribir un
programa en un lenguaje de programación con el fin de dar solución a un determinado problema.
El resultado del proceso de programación es una aplicación.
Cuánto tiempo me tomará aprender a programar los PIC? Por supuesto no hay una respuesta
exacta, lo que sí se puede afirmar es que mientras más perseverancia y dedicación se pongan de
parte del lector, el tiempo necesario para el aprendizaje se reducirá. Si se dedican unas 2 horas al
día el avance será vertiginoso y en unas 4 semanas ya tendrá un dominio aceptable de la
programación de PIC en lenguaje C.
Cuáles son los pasos a seguir para realizar una aplicación real con un PIC?
1. Construir o comprar un programador de PIC compatible con los dispositivos a programar y
con el sistema operativo disponible.
2. Descargar el software de control (software de programación) del programador e instalarlo:
por ejemplo, PICkit2 v2.61, etc.
3. Descargar e instalar el ambiente de desarrollo de programación de PIC en lenguaje C
(mikroC).
4. Seguir las indicaciones del libro para crear un nuevo proyecto, configurarlo, escribir el
código fuente en lenguaje C y compilarlo para obtener el ejecutable *.hex (aplicación).
5. Descargar el fichero ejecutable al PIC por medio del software de programación y del
programador conectado a la computadora personal.
6. Retirar el PIC del programador y colocarlo en el circuito de aplicación y, ¡a disfrutar con los
maravillosos resultados! La siguiente figura muestra la secuencia de programación:
Un microcontrolador está compuesto de varios bloques funcionales, los cuales cumplen una tarea
específica; incluye en su interior las tres principales unidades funcionales de una computadora:
Unidad central de procesamiento (CPU): se encarga de ejecutar las instrucciones y
realizar las operaciones con los datos.
Memorias: FLASH para las instrucciones del programa, EEPROM (de almacenamiento
permanente) para datos y RAM (de almacenamiento temporal) para datos.
Periféricos de entrada/salida: permiten la comunicación del microcontrolador con su
entorno físico recibiendo y entregando datos en forma de señales eléctricas. La conexión a
los periféricos se realiza por medio de las patillas (alfileres o pines) del circuito integrado
que conforma el microcontrolador.
Adicionalmente existe otra terminología que conviene conocer y entender ya que se emplea con
mucha frecuencia en el mundo de la programación de microcontroladores:
Compilador: Software que se encarga de convertir el código escrito en lenguaje C
(lenguaje humano) a código de maquina (lenguaje de maquina). El código en lenguaje C se
conoce como código fuente mientras que el código de maquina se conoce como código
ejecutable.
IDE (Integrated Development Environment) Ambiente de desarrollo Integrado: software
de computador que sirve para el desarrollo de programas para microcontroladores PIC.
mikroC PRO for PIC es un IDE. Básicamente un IDE está conformado por dos partes: a) Un
editor de texto para escribir el código fuente y b) Un compilador.
Programador: es un dispositivo de hardware electrónico diseñado para transferir el código
ejecutable (código de maquina) desde el computador hacia la memoria de programa del
microcontrolador PIC. La conexión entre el computador y el programador se realiza por
medio del puerto USB; el proceso se conoce como programación, grabación o quemado
(por esta razón el programador también se suele llamar grabador o quemador). También
recibe el nombre de programador la persona que se encarga de escribir programas para
microcontroladores.
Pin: cada una de las patillas o alfileres del microcontrolador. Por ejemplo, el PIC16F628A
tiene 18 pines (encapsulado DIP18).
Sintaxis: Conjunto de reglas definidas para escribir correctamente un lenguaje de
programación. mikroC PRO para PIC tiene su propia sintaxis que es muy similar a la sintaxis
del lenguaje C de computadoras (ANSI C).
Programa: Es una secuencia de instrucciones, escritas en un determinado lenguaje de
programación para realizar una tarea específica en un microcontrolador. En este curso se
escribirán los programas de acuerdo a la sintaxis propia de mikroC PRO for PIC.
El Proton Plus IDE es un elemento de programación basado en Basic estructurado
orientado a la entrada y salida de señales. La utilización de sencillas instrucciones
de alto nivel, permite programar los microcontroladores para controlar cualquier
aplicación llevada a cabo por un proceso. Las instrucciones de PBASIC PROTON
PLUS IDE permiten controlar las líneas de (entrada/salida) de un microcontrolador
PIC, realizar temporizadores, realizar transmisiones serie asíncrona, utilizar el
protocolo SPI, programar pantallas LCD, capturar señales analógicas, emitir
sonidos, etc... Y todo ello en un sencillo entorno de programación que facilita la
creación de estructuras condicionales y repetitivas con instrucciones como IF
THEN o FOR…NEXT y la creación de etiquetas de referencia.
l compilador Proton Basic es un lenguaje de programación de nueva generación
que hace más fácil y rápido el manejo de microcontroladores Pic micro de
Microchip. El lenguaje Basic es mucho más fácil de leer y escribir que el lenguaje
ensamblador Microchip.
El Proton Basic produce un código que puede ser programado para una variedad
de micro controladores PIC que tengan de 8 a 68 pins y varias opciones en el chip
incluyendo convertidores A/D, temporizadores y puertos seriales.
IDENTIFICADORES
Un identificador es simplemente un nombre. Son usados en Proton Basic como
etiquetas de líneas y nombres de variables. Un identificador es cualquier
secuencia de letras, dígitos y símbolos, aunque no deben comenzar con un dígito.
Los identificadores no distinguen las letras mayúsculas de las minúsculas, por lo
que etiqueta, ETIQUETA, etiqueta son todas tratadas como equivalentes. Aunque
las etiquetas pueden tener cualquier número de caracteres de longitud, Protón
Basic solamente reconoce los primeros 32.
ETIQUETAS
Para marcar líneas que el programa puede desear referenciar con comandos
GOTO ó GOSUB, Proton BAsic usa etiquetas de línea y no permite número de
línea y no requiere que cada línea sea etiquetada. Cualquier línea puede
comenzar con una etiqueta de línea que es simplemente un identificador seguido
por dos puntos (:)
END.
Detiene la ejecución del proceso y entra en modo de baja potencia .Todos los
pins de I/O permanecen en el estado en que se encuentran, END trabaja
ejecutando una instrucción SLEEP continua dentro de un loop. Un END, STOP ó
GOTO deben ser colocados al final de un programa para evitar pasar del límite de
la misma u comience nuevamente.