Hola, aqui esta el codigo solamente con el problema que me interesa:
#include <18F4550.h>
#device adc=8
#fuses NOWDT,WDT128,HSPLL, NOPROTECT, BROWNOUT_NOSL, NOBROWNOUT, BORV20, NOPUT, NOCPD, NOSTVREN, NODEBUG, NOLVP, NOWRT, NOWRTD, NOIESO, NOFCMEN, NOPBADEN, NOWRTC, NOWRTB, NOEBTR, NOEBTRB, NOCPB, MCLR, NOLPT1OSC, NOXINST, PLL5, CPUDIV1
#use delay(clock=48000000)
void main()
{
setup_adc_ports(NO_ANALOGS|VSS_VDD);
setup_adc(ADC_OFF);
setup_psp(PSP_DISABLED);
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);
set_tris_c(0x00);
set_tris_d(0x00);
setup_timer_2(T2_DIV_BY_1, 0xFF, 1); // 10 bits, 40Khz, 1020 max aprox
setup_ccp1(CCP_PWM_HALF_BRIDGE|CCP_PWM_H_L);
while(1)
{
set_tris_c(0x00);
set_tris_d(0x00);
set_pwm1_duty(100); // 10% aprox // 3 segundos con PWM P1A y P1B
delay_ms(3000);
set_tris_c(0xFF); // Las quiero en Alta impedancia de entrada por 3 segundos
set_tris_d(0xFF); // P1A en el tris c si se queda en alta impedancia, pero el P1B, de tris D no, ese es mi problema
delay_ms(3000);
}
}
en el foro de proyectos esta completo el codigo de lo que estoy haciendo, por eso no lo vuelvo a poner, saludos y gracias!!!