Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

18/07/2010 #1

Avatar de Limbo

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 (Espero no incumplir las normas y que Cacho o Fogonazo tengan que decirme cuatro cosas 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.
19/07/2010 #2

Avatar de Limbo

Respuesta: Ejercicio de PicBasic que no consigo solucionar
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.
19/07/2010 #3


Respuesta: Ejercicio de PicBasic que no consigo solucionar
Que bien que lo solucionaste
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.