weno pues estuve siguiendo sus consejos y con la ayuda del ccs, modifique el programa asi;
#include <16F877.h>
#fuses HS,NOWDT,NOPROTECT,NOLVP
#use delay(clock=4000000)
#use fast_io(C)
int conta=0;
#int_rtcc
void interrupcion_timer0()
{
if (conta<=3)
{
output_b(conta);
//conta++; cuando lo tengo aki se pierde la sincronia.
}
else
{(conta=0);}
switch(conta)
{
case 1: output_high(pin_c3);
break;
case 2: output_high(pin_c4);
break;
case 3: output_low(pin_c4);
output_high(pin_c5);
break;
default: output_low(pin_c5);
output_low(pin_c3);
output_low(pin_c6);
output_low(pin_b0);
output_low(pin_b1);
}
conta++;
set_rtcc(100);
}
void main()
{
set_tris_c(0x00); //configuro el puerto c como salida
setup_counters(RTCC_INTERNAL,RTCC_DIV_32|RTCC_8_BIT);
set_rtcc(100);
ENABLE_INTERRUPTS(INT_RTCC);
ENABLE_INTERRUPTS(GLOBAL);
while (1) // esto no lo he entendido por ke lo ponen asi, yo solo imito a mis mentores, pero si alguien me explica ke significa , bientoss
{}}
con esta modificacion note algo curioso que si pongo el conta++ por fuera del if como esta me salen en sncronia los pulsos asi, c mo se muestra en la primera grafica ke adjunto, pero si lo pongo dentro del if, las señales de los canales se adelantan 5ms, curioso no, esto se puede ver en la segunda grafica que adjunto...
gracias por la ayudita prestada y que opinan del codigo, lo dejo mejor como estaba antes???
ahhhhhhh, otra pregunta a quien le debo creer???, osea, es que cuando miro estos analisis graficos las ondas salen perfectas, pero cuando le doy play al proteus, se ven las señales como si no estuvieran sincronizadas, se demora una mas ke otra o aveces como ke se salta un led, entonces acual de las dos le creo, no hay una forma mas extacta de ver lo ke pasa???. ahora si gracias por la ayuda.