Ejemplo C

=Ejemplo=

A continacion se expone un programa base donde se realizan todas las linea necesarias para la compilacion y programacion de un programa en c. Este ejemplo es realizado para un microcontrolador Atmega16:

/* * LED.c  * Hello World RoboBoard * Created: 6/24/2012 10:31:21 AM *  Author: Sergio Gomez */ //Definicion de clock y librerias a agregar //Definiciones int main(void) { //=====Configuracion de Puertos=======// DDRLEDS|=(LED1|LED2|LED3|LED4); //===================================// //========Rutina Principal===========// for { 	PORTLEDS=(LED1|LED2|LED3|LED4); _delay_ms(500); PORTLEDS=(LED1|LED2|LED3); _delay_ms(500); PORTLEDS=(LED1|LED2); _delay_ms(500); PORTLEDS=(LED1); _delay_ms(500); PORTLEDS=(0x00); _delay_ms(500); } //====================================// }
 * 1) define F_CPU 1000000UL
 * 2) include 
 * 3) include 
 * 1) define PORTLEDS PORTA
 * 2) define DDRLEDS	 DDRA
 * 3) define LED1	 (1<<PINA4)
 * 4) define LED2	 (1<<PINA5)
 * 5) define LED3	 (1<<PINA6)
 * 6) define LED4	 (1<<PINA7)

Aca puede conseguir el archivo

=Creacion de un proyecto=

Para la creacion de un nuevo proyecto, se debe empezar con la creacion un directorio de trabajo donde se vayan a guardar todos los archivos, por Ejemplo:

Se abre una terminal desde el home y se ejecuta:

mkdir Prueba

Se dirige a la nueva carpeta llamada "Prueba" y abrimos gedit:

cd Prueba gedit &

En gedit se crea un nuevo archivo y lo guarda con el nombre que desee con la extension .c.

Makefile
El makefile es un archivo constructor el cual esta diseñado para compilar, generar los .hex e instalar su programa dentro del microcontrolador. Este arcihvo tambien debe estar en la carpeta contenedora de los archivos .c usados en su proyecto. En este espacio se explicara algunas lineas las cuales debe modificar segun su proyecto y dispositivo usado:

En este link puede descargar el Makefile

En la linea, MCU=atmega16 Se debe colocar el microcontrolador con el cual se trabajara, en este caso 'atmega16'

En la linea, PROGRAMMER_MCU=m16 Debe colocar la referencia de su microcontrolador para el avrdude, en este caso 'm16'

En la linea, PROJECTNAME=Prueba Debe colocar el nombre de su proyecto, en este caso 'Prueba'

En la linea, PRJSRC=main.c Debe colocar todos los archivos .c que hagan parte de su proyecto y se encuentren en la carpeta del proyecto. Separe con un espacio si tiene mas de un archivo.

=Compilacion y Programacion=

Para la compilacion y programacion del dispositivo, se abre una terminal desde la carpeta de proyecto y se pueden ejecutar las siguientes instrucciones:

Para compilar y generar los archivos .hex make hex

Para programar el dispositivo por medio de avrdude sudo make install

Para limpiar la carpeta de los archivos generados make clean

Nota: Si desea modificar los FUSES dirijase a VUSBTINY en la seccion de Acerca de los Fusibles

Por lo tanto si tiene conectado el programador, usted puede programar su proyecto usando:

make hex sudo make install

by