bon voila mon probléme j'ai un pic 18f4520 et je voudrai que celui génère un signal de type pwm avec une durer qui varie de 2ms 1.5ms et( 1ms celon des condition externe et cela sur les 2 port ccp1 et ccp2, c'est a dir que pour ccp1 je peut avoir une duret de 2ms et ccp2 de 1.5 ms et tout ca pour commander un moteur je suis arriver a determiner le registre timer 2 et j ai fait un debut de programe que je vous demande de corriger.
Tosc etant de 4mhz et pour avoir des temp de l orde du ms j ai pris la configuration suivante timer2 varier de 0 a 4ms
pr2=255
{
setup_adc_ports(NO_ANALOGS|VSS _VDD);
setup_adc(ADC_OFF|ADC_TAD_MUL_ 0);
setup_psp(PSP_DISABLED);
setup_spi(SPI_SS_DISABLED);
setup_wdt(WDT_OFF);
setup_timer_0(RTCC_INTERNAL);
setup_timer_1(T1_DISABLED);
setup_timer_2(T2_DIV_BY_16,255 ,5);
setup_timer_3(T3_DISABLED|T3_D IV_BY_1);
setup_comparator(NC_NC_NC_NC);
setup_vref(FALSE);
setup_ccp1(ccp_pwm);
setup_ccp2(ccp_pwm);
//Setup_Oscillator parameter not selected from Intr Oscillotar Config tab
// TODO: USER CODE!!
}
int linec,liner,linel;
void ccp1()
{
linec=(input_A()&0x0);
liner=(input_A()&0x1);
linec=(input_A()&0x2);
linec=0;
liner=0;
linel=0;
start:
if(linec=1)
ccp_1=127;
ccp_2=127;
goto start;
}
merci d avance![]()
-----