TODOPIC

Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: oscarec60 en 20 de Marzo de 2006, 12:27:00

Título: Problemas con el Puerto D
Publicado por: oscarec60 en 20 de Marzo de 2006, 12:27:00
Estoy utilizando el compilador de Ccs y necesito usar el puerto D para escribir paralelamente caracteres de 8bits en un pic 18f4620, pero no puedo configurarlo como los otros puertos como set_tris_d y output_d(), por favor ayudenme para solucionar este problema bien sea utilizando el puerto paralelo o pps.

Gracias por lo que pueda hacer....
Título: RE: Problemas con el Puerto D
Publicado por: oscarec60 en 22 de Marzo de 2006, 09:11:00
AQUI ESTA EL CODIGO QUE ESTOY UTILIZANDO PERO POR ALGUNA RAZON NO ME ACEPTA EL #USE ...., POR FAVOR AYUDENME EN ESTO PORQUE REALMENTE NECESITO PONER A TRABAJAR A ESTE PUERTO...

GRACIAS POR LO QUE PUEDAN HACER


#include <18F4620.h>
#device adc=8
#use delay(clock=20000000)
#fuses NOWDT,WDT128,HS, NOPROTECT, IESO, BROWNOUT, BORV21, NOPUT, NOCPD, NOSTVREN, NODEBUG, NOLVP, NOWRT, NOWRTD, NOEBTR, NOCPB, NOEBTRB, NOWRTC, NOWRTB, NOFCMEN, NOXINST, NOPBADEN, NOLPT1OSC, NOMCLR
#use standard_io(D)
#define output_d

#int_PSP
PSP_isr()
{


}



void main()
{

   setup_adc_ports(NO_ANALOGS|VSS_VDD);
   setup_adc(ADC_OFF);
   setup_psp(PSP_ENABLED);

   setup_spi(FALSE);
 
   setup_wdt(WDT_OFF);
   setup_timer_0(RTCC_INTERNAL);
   setup_timer_1(T1_DISABLED);
   setup_timer_2(T2_DISABLED,0,1);
   setup_timer_3(T3_DISABLED|T3_DIV_BY_1);

   setup_comparator(NC_NC_NC_NC);
   setup_vref(FALSE);

 
while (1)
   {
     delay_ms(500);
     output_d(0x00);
     delay_ms(500);
     output_d(0x3f);

   }



   enable_interrupts(INT_PSP);
   enable_interrupts(GLOBAL);

}
Título: RE: Problemas con el Puerto D
Publicado por: gfp en 22 de Marzo de 2006, 15:26:00
Asi es la cosa:


#include <18F4620.h>
#device adc=8
#use delay(clock=20000000)
#fuses NOWDT,WDT128,HS, NOPROTECT, IESO, BROWNOUT, BORV21, NOPUT, NOCPD, NOSTVREN, NODEBUG, NOLVP, NOWRT, NOWRTD, NOEBTR, NOCPB, NOEBTRB, NOWRTC, NOWRTB, NOFCMEN, NOXINST, NOPBADEN, NOLPT1OSC, NOMCLR
#use standard_io(D)

#int_PSP
PSP_isr()
{
}

void main()
{

set_tris_D(0x00);
setup_adc_ports(NO_ANALOGS|VSS_VDD);
setup_adc(ADC_OFF);
setup_psp(PSP_ENABLED);

setup_spi(FALSE);

setup_wdt(WDT_OFF);
setup_timer_0(RTCC_INTERNAL);
setup_timer_1(T1_DISABLED);
setup_timer_2(T2_DISABLED,0,1);
setup_timer_3(T3_DISABLED|T3_DIV_BY_1);

setup_comparator(NC_NC_NC_NC);
setup_vref(FALSE);


while (1)
{
delay_ms(500);
output_d(0x00);
delay_ms(500);
output_d(0x3f);

}

enable_interrupts(INT_PSP);
enable_interrupts(GLOBAL);

}
Título: RE: Problemas con el Puerto D
Publicado por: oscarec60 en 23 de Marzo de 2006, 14:10:00
pues nop lo correo en el MPLAB Plug-In y todavia no me corre, que sera lo que pasa?? sigo teniendo el mismo problema...

#include <18F4620.h>
#device adc=8
#use delay(clock=20000000)
#fuses NOWDT,WDT128,HS, NOPROTECT, IESO, BROWNOUT, BORV21, NOPUT, NOCPD, NOSTVREN, NODEBUG, NOLVP, NOWRT, NOWRTD, NOEBTR, NOCPB, NOEBTRB, NOWRTC, NOWRTB, NOFCMEN, NOXINST, NOPBADEN, NOLPT1OSC, NOMCLR







void main()
{

setup_adc_ports(NO_ANALOGS|VSS_VDD);
setup_adc(ADC_OFF);
setup_psp(PSP_ENABLED);

setup_spi(FALSE);

setup_wdt(WDT_OFF);
setup_timer_0(RTCC_INTERNAL);
setup_timer_1(T1_DISABLED);
setup_timer_2(T2_DISABLED,0,1);
setup_timer_3(T3_DISABLED|T3_DIV_BY_1);

setup_comparator(NC_NC_NC_NC);
setup_vref(FALSE);


while (1)
{
delay_ms(500);
OUTPUT_D(0x00);
delay_ms(500);
OUTPUT_D(0xff);

}


el error que me da es indefinido el identificador output_d


Título: RE: Problemas con el Puerto D
Publicado por: gfp en 23 de Marzo de 2006, 15:36:00
Que raro en la simulacion que hago en em MPLAB si cambia el puerto D entre 0x00 y 0xFF.

gfp Sonrisa