viernes, 2 de mayo de 2014

Pasos para compilar un Sketch


En muchos sitios veréis que habitualmente se usa una palabra llamada "compilar".  El código se debe compilar antes de que nuestro Arduino pueda procesar el sketch que hemos escrito. Pero ¿qué es compilar un código? y ¿por qué necesitamos ejecutarlo antes de subir nuestro sketch a nuestro Arduino?

En esta entrada intentaremos explicar las tres fases que el IDE de nuestro microcontrolador necesita ejecutar para poder ejecutar las instrucciones que le hemos dado sin errores.

PROGRAMACIÓN (CODE)

El primer paso es escribir las instrucciones que queremos que lleven a cabo. Al igual que sucede con los seres humanos con los que podemos comunicarnos en distintos idiomas, con los microcontroladores podemos comunicarnos con distintos lenguajes. En nuestro caso nos comunicaremos con un lenguaje concreto de nuestro Arduino. Que está diseñado de una versión simplificada del lenguaje C.

VERIFICACIÓN (VERIFY)

Terminado de escribir nuestro sketch, ahora necesitamos, transformar nuestro código Arduino a un código  C/C++ puro (a este proceso se le llama "preprocesado"). Y ¿por qué no hemos escrito nuestro sketch directamente en C/C++? La razón es muy sencilla, la simplificación. El lenguaje Arduino está pensado para permitirnos escribir comandos e instrucciones de forma muy rápida y simple, para hacer lo mismo con lenguaje C, necesitaríamos haber dedicado bastante tiempo en entender este lenguaje y sus estructuras, y posiblemente muchos de nosotros habríamos abandonado antes de concluir el primer ejemplo.

Una vez terminado el preprocesado, ahora comienza el "enlazado". Y ¿esto que és?, pues básicamente consiste en insertar en nuestro código, no solo la llamada a la librería que hayamos decidido usar en nuestro sketch, sino todo el código de la misma. A fin de cuentas el programa que vamos a subir a nuestro microcontrolador debe estar completo y si por ejemplo vamos a usar una librería para usar una pantalla LCD sin complicarnos en saber cómo funciona, a nuestro Arduino, hay que darle todos estos detalles que sí vienen bien descritos en el interior de la librería que vayamos a usar. En caso contrario no sabría cómo ejecutar las ordenes que les hayamos dado.

En el caso de utilizar el IDE oficial, el código binario generado (ya sea ".hex" o ".bin") solo lo guarda de forma temporal hasta que es cargado (subido) en la memoria del microcontrolador.



SUBIR (UPLOAD)

Si en los pasos anteriores no se ha encontrado ningún error, se carga (se sube) el código binario resultante en la memoria de nuestro Arduino. Eso se realiza mediante el botón "Subir" (Upload).



Cada uno de los pasos anteriores es realizado internamente por una parte separada del IDE de nuestro microcontrolador, que nosotros no vemos. Pero si quisiéramos verlas, podríamos hacerlo de forma manual, ejecutándolas una a una. Si tenéis curiosidad de cómo se podría hacer, en una próxima entrada lo explicaremos paso a paso. Pero tanto manual (que nos llevará algo más de tiempo) como automático (gracias al uso de los botones de nuestro IDE, el resultado será exactamente el mismo.


Esperamos que ahora os quede más claro, qué es y por qué es necesario compilar un sketch.

Pero si tenéis alguna duda o sugerencia, no dudéis en contactar con nosotros intentaremos resolver vuestras dudas tan pronto como podamos.




No hay comentarios:

Publicar un comentario