muchas gracias amigo LordLafebre, yo he estado haciendo este, haver silo puedes chequear y em avisas en que estoy fallando:
cont1 var word
cont2 var word
cont3 var word
unid1 var byte
dece1 var byte
unid2 var byte
dece2 var byte
unid3 var byte
dece3 var byte
i var byte
TRISB=%11000000'RB7yRB6ponerhora)entradas;RB5,RB4,RB3,RB2,RB1,RB0salidas(multi)
TRISA=0'todas salidas para el dato
cont1=0'comienzo reseteando segundos
cont2=0'comienzo reseteando minutos
cont3=0'comienzo reseteando horas
inicio:
for i=0 to 34
unid1= cont1 dig 0
PORTB=%00000001
PORTA= unid1
PAUSE 5'pause para el tiempo de muestreo 5 milisegundos
dece1= cont1 dig 1
PORTB=%00000010
PORTA= dece1
PAUSE 5
unid2= cont2 dig 0
PORTB=%00000100
PORTA= unid2
PAUSE 5
dece2= cont2 dig 1
PORTB=%00001000
PORTA= dece2
PAUSE 5
unid3= cont3 dig 0
PORTB=%00010000
PORTA= unid3
PAUSE 5'pause para el tiempo de muestreo
dece3= cont3 dig 1
PORTB=%00100000
PORTA= dece3
PAUSE 5
next i
cont1=cont1+1
if cont1>59 OR PORTB.7=1 then'pregunta si segundero terminó
cont2=cont2+1'aumenta minutero
cont1=0' y resetea segundero
endif
if cont2>59 or PORTB.6=1 then'pregunta si minutero terminó
cont3=cont3+1'aumenta hora
cont2=0'y resetea minutero
endif
if cont3>25 then'pregunta si hora terminó
cont1=0'resetea segundero
cont2=0'resetea minutero
cont3=0'resetea hora
endif
GOTO INICIO
gracias de antemano................
atte antonioUNPRG