Hola! Primeramente agradezco de antemano su atención y espero que esto no sea un repost,
no hace mucho que empezé a meterle a esto y bueno, me quede trabado
y no encuentro mucha info al respecto.
Resulta que tengo el siguiente problema; estoy programando con microcode en PBP un pic16f628a y quiero activar ocho leds mediante ocho pulsadores, que cada led quede encendido o apagado cada vez que se presiona un pulsador, (a su vez que apague los otros si es que estan encendidos , en fin) pero la unica forma que encontre de usar esto es usando la funciones IF THEN TOOGLE PAUSE, pero tengo dos problemas; el primero es que si mantengo apretado el pulsador por mas del tiempo de PAUSE este comienza a parpadear, segundo si doy mucho tiempo de PAUSE tengo que esperar todo ese tiempo para poder acceder a pulsar otro botón, si no no responde.
Preferiria mas bien que el programa ejecute la operación y espere a que suelte el pulsador para continuar con el programa, es posble esto? este es el programita que arme, con cosas que fui viendo en la web.
;cmcon=7
trisA = 255 'todos como entrada
trisB = 0 'todos como salida
;configuracion de pines
led1 var portb.0
led2 var portb.1
led3 var portb.2
led4 var portb.3
led5 var portb.4
led6 var portb.5
led7 var portb.6
led8 var portb.7
p1 var porta.0
p2 var porta.1
p3 var porta.2
p4 var porta.3
p5 var porta.4
p6 var porta.5
p7 var porta.6
p8 var porta.7
inicio:
if P1 then toggle Led1:led2=0:led3=0:led4=0:led5=0:led6=0:led7=0:led8=0:pause 500
if P2 then toggle Led2:led1=0:led3=0:led4=0:led5=0:led6=0:led7=0:led8=0:pause 500
if P3 then toggle Led3:led2=0:led1=0:led4=0:led5=0:led6=0:led7=0:led8=0:pause 500
if P4 then toggle Led4:led2=0:led3=0:led1=0:led5=0:led6=0:led7=0:led8=0:pause 500
if P5 then toggle Led5:led1=0:led2=0:led3=0:led4=0:pause 500
if P6 then toggle Led6:led1=0:led2=0:led3=0:led4=0:pause 500
if P7 then toggle Led7:led1=0:led2=0:led3=0:led4=0:pause 500
if P8 then toggle Led8:led1=0:led2=0:led3=0:led4=0:pause 500
goto inicio
Agradezco nuevamente desde ya todos sus aportes!