Ejercicio de PicBasic que no consigo solucionar

Buenas,

El titulo del mensaje lo he dejado así porque el titulo descriptivo que tenia pensado poner no me cabia :rolleyes: (Espero no incumplir las normas y que Cacho o Fogonazo tengan que decirme cuatro cosas :LOL: O aun peor, que me den tabla!)

Al grano. Me estoy leyendo un libro dedicado al PIC16F628A que abarca la programacion tambien y en él se dan unos ejercicios para realizar. Todo bien hasta que llego este y me quede atascado:
"Haga un proyecto con dos pulsadores, P1 y P2, y un led. Si presiona P1 y luego P2, el LED solo debe de parpadear una vez, si presiona P1 3 veces y luego presiona P2, el LED debe parpadear 3 veces y asi succesivamente las veces que presione P1, P2 funciona como arranque del parpadeo."

Esta copiado literalmente.
He probado toda la tarde y no hay forma posible de que pueda conseguir que guarde una variable con las veces que se pulso el pulsador P1.
En principio pensé en crear dicha variable que la llamé contador e ir añadiendo una unidad por cada vez que se pulsa P1 y despues hacer un FOR del parpadeo con la variable en lugar de un digito, es decir, FOR x = 1 TO contador, pero no funciona. Despues he probado mas cosas pero sin exito.

A ver si alguien me hecha un cable para solucionarlo.

Gracias.
Saludos.
 
Hola de nuevo,

Ya esta solucionado. Creo que era por lo que se llama antirebote del boton que contaba.
Dejo el codigo por si a alguien le interesa la respuesta:
Código:
I var byte
cuenta var byte
boton1 var porta.0
boton2 var porta.1
led var portb.1
 adicion:
    if boton1 = 0 then soltar
    if boton2 = 0 then parpadeo
     goto adicion
 soltar:
  if boton1 = 1 then cuenta = cuenta + 1 : goto adicion
  goto soltar
 parpadeo:
    for I = 1 to cuenta
        high led
        pause 50
        low led
        pause 50
        next
  cuenta = 0
goto adicion
end

Saludos.
 
Atrás
Arriba