En el Quark XLII vimos el software necesario para programar Kinetis con Em::Blocks. Ahora nos pondremos manos a la obra con la configuración del entorno para poder programar.
El primer proyecto con nuestro flamante Em::Blocks lo realizaremos con un MKL05Z32VFK4.
Evidentemente vosotros podéis utilizar el que queráis, simplemente eligiendo los archivos adecuados durante la configuración del proyecto.
Manos a la obra:
Abrimos Em::Blocks.
Pulsamos sobre Create a new project en la pantalla de bienvenida.
Se nos abrirá el configurador de proyectos, donde seleccionaremos Empty y pulsaremos Go.
Elegimos un nombre de proyecto y una carpeta para guardarlo. El mío se llamará EQTest.
Elegiremos nuestro compilador, ARM GCC Compiler, que Em::Blocks ha instalado automáticamente. Seleccionamos crear tanto las configuraciones de Debug como de Release.
Ahora, manualmente, copiamos a la carpeta de nuestro proyecto:
– desde Kinetis\MKL05Z4\Include los archivos MKL05Z4.h y system_MKL05Z4.h
– desde Kinetis\MKL05Z4\Source\Templates el archivo system_MKL05Z4.c
– y desde Kinetis\MKL05Z4\Source\Templates\gcc los archivos startup_MKL05Z4.S y MKL05Z32xxx4_flash.ld.
Todos son genéricos para toda la serie MKL05Z excepto el script para el Linker MKL05Z32xxx4_flash.ld que es exclusivo para cada micro en concreto.
Ahora los añadiremos a nuestro proyecto: Project -> Add files recursively…
Se nos abrirá un diálogo para seleccionar los archivos que queremos incluir en nuestro proyecto. Marcaremos todos excepto el de extensión elay.
Tras pulsar OK Em::Blocks nos pregúntará a qué versión del proyecto queremos añadirlos. Seleccionaremos ambas opciones:
Una vez los archivos hayan sido cargados, la extructura de nuestro proyecto será la siguiente:
Crearemos, ahora, nuestro archivo principal, main. File -> New -> File…
Que será del tipo C/C++ Source.
Concretamente será un archivo de C.
Lo guardamos con el nombre de main en la carpeta de nuestro proyecto.
Igualmente, lo añadimos a nuestro proyecto tanto para la versión Debug como Release.
Y la vista de nuestro proyecto quedará finalmente así:
Para poder comprobar que todo funciona correctamente necesitamos que main no esté vacía, por lo que que creamos una simple función.
Y terminamos de configurar el enterno. Project -> Build options…
Especificamos el tipo de microcontrolador, cortex-m0plus, en EQTest:
Y tres líneas más abajo, indicamos que utilice como Linker script el que hemos añadido previamente: MKL05Z32xxx4_flash.ld.
En EQTest -> Linker settings indicamos que añada los Start files.
Aceptamos y ya podemos comprobar que todo está listo para comenzar el diseño.
Pulsamos en Rebuild.
Y, si todo ha sido configurado correctamente, obtendremos del compilador una salida similar a esta:
Y esta:
Es un proceso algo tedioso, pero una vez que está terminado es muy fácil adaptarlo a cualquier otro Kinetis, simplemente seleccionando los archivos correspondientes durante la configuración del proceso.
En una próxima entrada configuraremos Em::Blocks para poder utilizar un SEGGER J-LINK con él.
Ahora: ¡A programar!