Vous êtes sur la page 1sur 6

C de CCS paso a paso para 16F84A LED prende apaga

Este es el programa ms simple que se puede hacer para aprender a programar. Y elegimos el PIC que ms informacin tiene en Internet. Suponemos que ya est instalado en la PC el programa para editar lenguaje C de CCS. Lo arrancamos y seleccionamos la pestaa Project. No importa lo que se vea en el editor. Todas las pantallas en este WORD se pueden agrandar para verlas mejor.

En el men seleccionamos PIC Wizard. Esto nos guiar para crear un programa creando la configuracin del PIC.

Nos aparece la pantallita que nos permite elegir el directorio y el nombre que le pondremos a nuestro proyecto. Por ejemplo creamos el directorio 16F84A prende apaga y el nombre de nuestro proyecto ser LED.

Le damos Guardar. 1

En el circulado rojo debemos elegir el PIC de la lista. Tener paciencia porque no aparecen en orden alfabtico.

Elegimos las opciones circuladas. Nombre del PIC, poner frecuencia del cristal de 4 MHz, reloj con cristal exterior de 4 MHz, y el resto en blanco. Le damos OK. Recordar de agrandar las imgenes para leer bien los detalles.

Si elegimos la pestaa Code, veremos el cdigo que va creando. Si tuviramos otras opciones para agregar, las elegimos del circulado de la izquierda. Pero aqu no necesitamos ms, por lo tanto le daremos OK, y termin esta etapa del proyecto.

Este es nuestro cdigo hasta ahora. Como a m me gusta tener todo el cdigo en un solo archivo .C, abrir el archivo 16F84A Prende Apaga\LED y lo copiar al archivo .C en lugar del #include. Lo abrir con la opcin directorios desde el men, circulada en la imagen, elegir el archivo, lo copiar con CTRL C y lo pegar.

Se ve como en esta pantalla. Tenemos el encabezamiento con la configuracin del PIC y el void main() que es obligatorio que exista, por las reglas del cdigo de programacin C. Usando el men, cierro el LED.h y lo borro del directorio. Ahora comenzaremos con el programa, usando el editor del programa CCS. Borramos lo circulado y comenzamos. Eliminamos la lnea del RS232, porque aqu no la usaremos. Es la conexin de entrada salida del puerto serie.

En el directorio se ve un archivo WORD que es este que estoy creando, un archivo .bat que es para limpiar los archivos que se crean al compilar y que no usamos, el LED.c en el que estamos trabajando y el LED.pjt que es el proyecto del CCS.

Elegimos la pestaa Compile y luego Build All, para compular el proyecto y que nos cree el archivo LED.hex, que es lo que grabaremos en el PIC. Por ahora lo hacemos solo para ver si no tenemos errores hasta aqu.

As qued el CCS y el directorio. No marc Errores ni Warnings (Llamadas de atencin) El directorio se limpia haciendo doble click en el .bat. Para hacer el programa usaremos el manual del CCS, que ahora incluyo en este directorio. Usaremos estas funciones. El nmero es la pgina donde estn:
OUTPUT_HIGH(pin) .................. 32; pone a uno la salida especificada. OUTPUT_LOW(pin) ................... 32; pone a cero la salida especificada DELAY_MS(time) ....................... 33; crea un retardo para mantener prendido o apagado el LED. SET_TRIS_X(value) ................... 32; setea el puerto para indicar que pin es salida o entrada.

Esta funcin es propia del lenguaje C, y ejecuta un bucle, donde se ejecuta infinitamente todo lo que est encerrado entre sus llaves. 4

while(true) { } Agregamos: //

// Bucle infinito

76543210

Nmero de PIN del PIC // Todos salida valor cero. Las entradas van con 1.

set_tris_ab(0b00000000);

La primer lnea es un comentario que se comienza con //. Esto es del C. La segunda indica que todos los pines del puerto A se ponen como salida. El nmero de pin se muestra en la lnea de arriba. Si alguno fuera una entrada, como por ejemplo un pulsador, pondramos el nmero 1. Agregamos el bucle infinito: while(true) { } Dentro de el, escribimos las lneas que se ejecutarn hasta que cortemos la alimentacin del PIC. output_high(PIN_A0); delay_ms( 1000 ); output_low(PIN_A0); delay_ms( 1000 ); // enciende el LED en el PIN A0 // demora de 1 segundo // apaga el LED // demora de 1 segundo // Bucle infinito

Este es todo el programa necesario. En esa direccin http://www.programatium.com/c.htm encontrarn un manual de C, muy completo, donde encontrarn al while empleado. Luego de tipeado todo se compila otra vez y hacerlo esto tantas veces como necesiten. Para quienes tengan Proteus, va el archivo para poder simular este programa antes de soldar o armarlo en una tarjeta de pruebas.

Esquema

Vous aimerez peut-être aussi