Autor Tema: Ruleta  (Leído 3947 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado sanchoweb

  • PIC10
  • *
  • Mensajes: 13
Ruleta
« en: 27 de Julio de 2003, 10:24:00 »
Gente, yo se que para ustedes esto es muy fácil, pero para mi que recien empiezo se me complica.

Lo que necesito hacer es una ruleta, que este compuesta por 10 leds (usando el PIC 16F84), y que cuando el usuario presione un boton empieze a girar (va rotando la tensión por todos los leds en forma secuiencial y con un cierto retardo entre ambas a si se peude apreciar) y que después de un cierto tiempo pare aleatoreamente en algún led.

Esa es la primera parte, luego, si se puede tambien asignarle un "valor" a cada led, y dependiendo de este se va a representar la ganancia o la pérdida de "créditos" en un display de 7 segmentos. Se entiende?

Si hay algun alma caritativa que me diga aunque sea una puntita del programa en asembler se lo agradecería muchisimo.

Sancho

Desconectado todopic

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3495
    • http://www.todopicelectronica.com.ar
RE: Ruleta
« Respuesta #1 en: 27 de Julio de 2003, 17:54:00 »
Hola Sancho, basicamente, tu programa se resuelve con una  tabla

yo lo pensaria de la siguiente forma

primero: un contador, que estaria en un loop, esperando a que alguien pulse...

al pulsar, saltaria el programa a la parte de presentacion de ruleta... y el n umero ya lo tendrias asignado segun el valor en que quedo el contador...

presentacion:
un retardo o delay que seria con tiempos en incremento para simular la perdida de velocidad, creo que en un principio, siempre tendria que dar unas vueltas muy rapidamente (por si el primer contador es uno, solo prenderia la proxima lampara!!!)


la tabla de presentacion seria por ejemplo
movf  contador
addwf pcl,f
retlw b"00000001"
retlw b"00000010"
retlw b"00000100"
retlw b"00001000"
"
"
"
retlw b"10000000"


pero como tienes que trabajar con 2 puerto y ademas el contador no puede superar el valor de 10 (9)

podrias hacerlo

movf  contador
addwf pcl,f
goto uno
goto dos
goto tres
"
"
"
goto diez



uno  clrf porta
        clrf portb
        bsf portb,0
retlw 0

dos clrf porta
        clrf portb
        bsf portb,1
retlw 0

tres clrf porta
        clrf portb
        bsf portb,2
retlw 0
"
"
"
nueve clrf porta
        clrf portb
        bsf portA,0
retlw 0

diez clrf porta
        clrf portb
        bsf portA,1
retlw 0



bueno, espero lo interpretes...

un abrazo

Norberto


Firmat - Santa Fe - Argentina

www.TodoPic.net

Solo se tiran piedras, al arbol que tiene frutos...

Desconectado todopic

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3495
    • http://www.todopicelectronica.com.ar
RE: Ruleta
« Respuesta #2 en: 27 de Julio de 2003, 18:04:00 »


               #DEFINE PULSADOR  PORTA,4



RULETA
                MOVLW .10   ;CARGO EL NUMERO 10
                MOVWF  CONTADOR,F

RESTAR              DECFSZ CONTADOR
               GOTO DISPARO
               GOTO   RULETA

DISPARO  BTFSC  PULSADOR ;  PULSARON Y ES CERO?
                GOTO   RESTAR

PRESENTAR

Firmat - Santa Fe - Argentina

www.TodoPic.net

Solo se tiran piedras, al arbol que tiene frutos...

Desconectado todopic

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3495
    • http://www.todopicelectronica.com.ar
RE: Ruleta
« Respuesta #3 en: 29 de Julio de 2003, 21:09:00 »
Ok Sancho, esperamos que al terminar tu proyecto, lo compartas aqui!

suerte!

Norberto
Firmat - Santa Fe - Argentina

www.TodoPic.net

Solo se tiran piedras, al arbol que tiene frutos...