Autor Tema: Problemas de programacion en c  (Leído 1546 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado waltermop

  • PIC10
  • *
  • Mensajes: 1
Problemas de programacion en c
« en: 03 de Diciembre de 2014, 19:08:25 »
hola, como estan?. me llamo Walter y me estoy iniciando en el mundo de los pic y su programacion.
estoy utilizando el programa proteus y el PIC C COMPILER.
mi primer programa es encender y apagar un led con un pic 16f877a
el progrma es el siguiente:

#include <encendido de un led.h>
#fuses XT,NOWDT
#use delay(clok=4000000)

//DECLARACION DE VARIBLES GLOBALES
#define led pin_b0//nombra al pin_b0 como led
#define retardo delay_ms(500)//nombra delay_ms() como retardo
#define inicio//incio del programa

//PROGRAMA PRINCIPAL
void main(void)
{

//CONFIGURACION DEL PUERTO E/S
SET_TRIS_B(0*00)//configura el puerto B:0=salida; 1=entrada
output_b(0*00)//limpia el registro del puerto

//ESTRUCTURA PROGRAMA PRINCIPAL
inicio;//inicio del programa
output_high(led);//enciende el led
retardo;//demora
output_low(led);//apaga el led
retardo;//demora
goto inicio

}

el error es el 76 en output_b(0*00)
otro error es el 28 en } carece de un identificador.

les agradeceria mucho su ayuda.

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re: Problemas de programacion en c
« Respuesta #1 en: 03 de Diciembre de 2014, 20:26:01 »
Tenes problemas con el lenguaje C, creo que lo primero seria leerte un tutorial basico de lenguaje C para empezar, y luego te vas a algunas funciones de CCS.

Citar
#include <16f877a.h> //Creo que asi es el include, hay uno para cada integrado, deberias buscarlo. o es sin la a al ultimo, es decir 16f877.h
#fuses XT,NOWDT                             // Te faltan definir fuses un ejemplo que vi usa XT,NOWDT,NOPROTECT,NOLVP,PUT,BROWNOUT , XT es para cristales de 4 Mhz o menos
#use delay(clock=4000000)   // Te falto una c
#use FAST_IO (B)                                 // Hace que el compilador no revise si es entrada o salida, disminuyendo el codigo para prender el led y queda criterio del usuario, tenes standar y fixed. en standar el compilador agrega un par de instrucciones mas, haciendolo entrada o salida segun si pedis leer o escribir.
 
//DECLARACION DE VARIBLES GLOBALES

#define led pin_b0         //nombra al pin_b0 como led

//PROGRAMA PRINCIPAL
void main(void)
{

//CONFIGURACION DEL PUERTO E/S

SET_TRIS_B(0x00);  // Para poner en hexadecimal es 0x , para binario 0b00000000 , decimal es sin nada 0
output_b(0x00);               //limpia el registro del puerto

//ESTRUCTURA PROGRAMA PRINCIPAL

while(1) {        // Usamos un while , y mientras sea verdadera ( true ) o 1 la condicion va a continuar ejecutandose.
output_high(led); //enciende el led
delay_ms(500);
output_low(led); //apaga el led
delay_ms(500);
}

}
« Última modificación: 03 de Diciembre de 2014, 20:33:44 por KILLERJC »