Está en la página 1de 5

Buscar

Men Principal

Inicio
Actualidad / Noticias
Por qu donar?
Registrarse
Enlaces Web
Foros

Siguenos en ...

ltimos Tutoriales

ndice Programacin PIC en C


ndice prcticas PIC C
ndice Sistemas Embebidos
ndice prcticas Arduino
Curso PIC32
SDCC (Small Device C Compiler) en Windows
Actualizar a Ubuntu 9.10 (Karmic Koala)
Programacin de Microcontroladores PIC en C con Ubuntu utilizando el ICD2
Particiones y sistemas de archivos en Linux

Algunas razones para probar Ubuntu


Instalacin de Ubuntu 9.04 paso a paso
Compilador PCW CCS
Compiladores C para PIC
Programacin PIC en C
X - 10
Comandos Unix/Linux
Autmatas Secuenciales Finitos
CAD Electrnico
Fabricacin de circuitos impresos a doble cara (Mtodo Insolado)
Mini-cmara VC0706 con interfaz serie 3.3v TTL

Licencia

Todo el contenido de este sitio est bajo unalicencia de Creative Commons


Inicio

Programacin PIC en C

Programacin PIC en C
Detalles
ltima actualizacin el Lunes, 25 Noviembre 2013 20:44
Escrito por biblioman

Pgina 1 de 18
Curso para aprender a programar en lenguaje C utilizando un compilador para PIC, en
concreto el PCW compiler de la casa CCS. Cursos sobre C en Internet a miles, pero
todos los que yo he visto estn realizados sobre compiladores de propsito general,
como Vicual C++ de Microsoft Builder C++ de Borlan, sin duda son excelentes
compiladores que nos permiten realizar aplicaciones para
ordenadores de escritorio tanto en C como en C++ (la versin orientada
a objetos de C), pero no sirven para programar PIC, es decir con el
ejecutable que generan al compilar no se puede programar un
Microcontrolador.
Lo habitual hasta ahora es que los usuarios que se inician en este apasionante mundo
de la programacin de Microcontroladores, sea de la marca que sea, primero lo hacan
utilizando el lenguaje ensamblador, especifico no solo ya para cada marca de
microcontrolador sino para cada modelo, ya que hay que conocer perfectamente los
recursos de cada Microcontrolador (Nmero de puertos de Entrada/Salida Relojes
internos, etc. ). Al principio de los tiempos de estos dispositivos esto era obligatorio ya
que los recursos de memoria y velocidad de procesamiento no eran muy grandes y
haba que optimizar el cdigo al mximo, esto implicaba que haba que utilizar a la
fuerza un lenguaje de programacin de bajo nivel que bien utilizado explotara los
recursos de estos dispositivos sin desperdiciar memoria y velocidad de procesamiento,
pero al igual que ha ocurrido con los ordenadores personales las prestaciones de estos
dispositivos ha ido creciendo exponencialmente con el tiempo, siendo ya perfectamente
factible el utilizar un lenguaje de alto nivel para programar estos dispositivos y

aprovecharnos de las ventajas de portabilidad que ofrecen este tipo de lenguajes, de


esta manera por ejemplo podemos hacer un programa para un PIC en concreto y
utilizarlo en otro de mayores prestaciones sin modificar apenas nada del cdigo fuente.
Quien puede sacar provecho de este curso?. Este curso es para ti si:
Has programado PIC en Ensamblador y quieres hacerlo en un lenguaje
de alto nivel como el C.
No has programado nunca Microcontroladores pero conoces el lenguaje
de programacin C de haberlo utilizado para otros propsitos.
No has programado nunca un PIC en Ensamblador, ni conoces ningn
lenguaje de alto nivel como el C. Es decir, no tienes ni idea de
Microcontroladores ni de programacin (Esto es posible porque el curso
va ha empezar desde cero es decir con el clsico Hola Mundo con el que
empiezan todos los libros de iniciacin a la programacin.
Bueno alguno pensar que para aprender a programar en C vale cualquier compilador
de uso general
y lo que realmente interesa es saber las instrucciones de C que tengo que utilizar para
configurar por ejemplo un puerto como entrada o salida, o que cdigo tengo que
utilizar para utilizar los convertidores A/D que incorporan ya casi todos los
PIC, indudablemente ese es el propsito final de este curso y para ello
paralelamente a l va haber otro donde se van a ver aplicaciones prcticas. Pero hay
que tener en cuenta que los compiladores para Microcontroladores son especficos para
estos dispositivos embebidos y no cumplen con el Estndar ANSI C al 100 %, por lo
que cuando ests programando lo ms seguro es que te vayas dando cuenta que una
funcin que en el C estndar funciona perfectamente aqu te da un error al compilar.
Adems te irs quedando con mucho cdigo que lo has probado y sabes que te
funciona perfectamente, cuando tengas que hacer una aplicacin prctica no tendrs la
duda si puedes usar una determinada estructura en tu programa si es posible utilizar
punteros o no y como hacerlo, porque ya lo sabrs a la vez que has ido aprendiendo el
lenguaje de programacin y no solo eso, te irs familiarizando con las instrucciones
especficas del compilador: de que herramientas dispone, sus funciones precompiladas,
su sistema de depuracin de errores, etc.
Que herramientas voy a necesitar para realizar el curso?.
El compilador CCS seguro, vaya es de pago ya empezamos con problemas te puedes
bajar una versin de Evaluacin por 30 das desde aqu:
http://www.ccsinfo.com/ccsfreedemo.php

Despus de rellenar el formulario te descargas el programa de instalacin y lo instalas


en tu ordenador como un programa ms de Windows, aunque tienes que tener en
cuenta que solo podrs programar un pequeo conjunto de PIC de cada familia, otro
inconveniente es que tienes que estar conectado a Internet para que te funcione si no
te aparecer esta ventanita poco amigable:

Otra limitacin es que el tamao del programa no puede superar los 2K de memoria,
aunque para los ejemplos que vamos a hacer aqu te sobra. Bien ya tenemos
solucionado el tema del compilador, bien sea por que con la demo nos apaamos o
porque tengo un amigo cojonudo que me va ha prestar uno con licencia para que
pueda realizar el curso (je,je..
).
Bien ya tengo el compilador y puedo empezar a programar y a crear mis .HEX (para el
que no lo sepa es el archivo que tenemos que cargar en nuestro PIC para que
funcione). Todo esto es muy elemental para el que lo sabe, pero como dije al principio
este curso est pensado tambin para el que no tiene ni idea de programar
microcontroladores. As es que sigamos.
Una vez que tenemos nuestro .HEX tendremos que comprobar que funciona realmente
para ello tenemos dos opciones:
Montar nuestro circuito con todos sus componentes, programar el PIC
con un programador comercial como el PICSTART de Microchip o con
uno de los muchos que hay en Internet que sirven perfectamente para
empezar a programar estos dispositivos.
Utilizar un programa de simulacin electrnica como Proteus que tiene la
ventaja de disponer de una extensa biblioteca de microcontroladores PIC
junto con los componentes auxiliares que normalmente utilizan estos
dispositivos: leds, pantallas LCD, teclados, memorias, etc.
Bien nosotros utilizaremos la segunda opcin, aunque en una prctica veremos como
hacerlo de la primera forma.
La versin de evaluacin de Proteus te la puedes descargar desde aqu:

http://www.labcenter.co.uk/download/prodemo_download.cfm
Claro que tiene limitaciones, sino no sera una demo, la principal es que no podemos
guardar nuestros
trabajos y la segunda es que no lleva incorporado muchas de las libreras dinmicas
necesarias
para realizar la simulacin de algunos microcontrloladores. Mira a ver si el amigo que
te dejo el compilador te puede dejar tambin una licencia para este magnfico
Simulador.
Nota: en este sitio est prohibido el mostrar facilitar enlaces a lugares de descarga
de dudosa reputacin. Lo digo tambien para que se tenga en cuenta en el foro que
prximamente estar a vuestra disposicin y donde podremos exponer nuestras dudas
experiencias sobre este tema y sobre otros que irn saliendo.
Otra cosa que quiero aclarar es que el curso va a ser todo lo prctico que pueda y la
forma de proceder ser
la siguiente: ir mostrando uno varios ejemplos de cada tema y posteriormente har
una Explicacin de los mismos. Yo no se vosotros pero yo cada vez que he querido
aprender algo nuevo lo primero que he hecho a sido mirar los ejemplos, despus
vosotros tendris que comprobar que lo que he dicho es cierto y que el ejemplo
compila y funciona sin errores.
Para facilitar la navegacin el prximo da presentar el ndice de los tems que va a
tratar el curso
Aunque puede que lo vaya modificando segn vallamos avanzando.
Un saludo y hasta el prximo da.

Volver al ndice

Inici

También podría gustarte