TODOPIC

Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: Medusa en 08 de Junio de 2011, 19:37:10

Título: Duda con respecto a la defincion de una funcion
Publicado por: Medusa en 08 de Junio de 2011, 19:37:10
Hola, alguien me podria decir cual es mi error en la definicion de esta funcion..
Código: [Seleccionar]
#include <18F452.H>
#fuses HS, NOWDT, BROWNOUT, PUT, NOLVP
#use delay(clock=20000000)

#define DAQ0   PIN_C0

void Reset(int DX ){
output_low(DX);
delay_us(500);         
output_float(DX);
delay_us(500);         
}

void main(){

while (1){

Reset(DAQ0);
}
}
Título: Re: Duda con respecto a la defincion de una funcion
Publicado por: Suky en 08 de Junio de 2011, 19:50:33
Ninguno si utilizaras un 16F, en 18F tienes que utilizar long.


EDIT: Fijate en el 18F452.h, #define PIN_C0  31760   ;-)


Saludos!
Título: Re: Duda con respecto a la defincion de una funcion
Publicado por: PalitroqueZ en 08 de Junio de 2011, 23:09:38
yo lo haría así

Código: [Seleccionar]
void Reset(int *DX ){
output_low(DX);
....

..
Reset(DAQ0)
..


Título: Re: Duda con respecto a la defincion de una funcion
Publicado por: Suky en 09 de Junio de 2011, 01:29:29
yo lo haría así

Código: [Seleccionar]
void Reset(int *DX ){
output_low(DX);
....

..
Reset(DAQ0)
..



No va a funcionar, porque PIN_C0 es una definición, una constante, no una variable  ;-)



Saludos!
Título: Re: Duda con respecto a la defincion de una funcion
Publicado por: Medusa en 09 de Junio de 2011, 13:06:45
 :mrgreen:  Gracias...funciona OK..
Título: Re: Duda con respecto a la defincion de una funcion
Publicado por: PalitroqueZ en 09 de Junio de 2011, 20:07:48
yo lo haría así

Código: [Seleccionar]
void Reset(int *DX ){
output_low(DX);
....

..
Reset(DAQ0)
..



No va a funcionar, porque PIN_C0 es una definición, una constante, no una variable  ;-)



Saludos!

umm, a mi me ha funcionado, el ccs lo compila sin problemas