Autor Tema: Ayuda con teclado matricial y display de 7seg con pic 16f84  (Leído 6751 veces)

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

Desconectado ivan13

  • PIC10
  • *
  • Mensajes: 2
Ayuda con teclado matricial y display de 7seg con pic 16f84
« en: 16 de Octubre de 2006, 17:44:38 »
Hola

 Me pueden ayudar a crear el codigo para un tablero de cambio de jugador, lo diseñe por proteus pero tengo problemas para
programar el pic, si alguien puede ayudarme con el codigo  :P   se lo agradeceria mucho.

« Última modificación: 19 de Octubre de 2006, 23:51:37 por ivan13 »

Desconectado microcom

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 568
Re: Ayuda con teclado marcial y display de 7seg con pic 16f84
« Respuesta #1 en: 17 de Octubre de 2006, 16:11:19 »
puedes anexar el codigo de otra manera ya que no he podido verlo.

saludos

Desconectado micro_cadaver

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2102
    • blog microembebidos
Re: Ayuda con teclado marcial y display de 7seg con pic 16f84
« Respuesta #2 en: 17 de Octubre de 2006, 18:08:36 »
 :-/ hola tio, te puedo ayudar pero pon el archivo asm o c de tu proyecto porq el archivo proteus tiene una version mas antigua q el mio, y no puedo ver nada, ademas pon una imagen de tu circuito del proteus pa no imaginar mucho pex, chau.
a cosechar!!!... :P
pic32... ahi voy....
aguante el micro 16f84  !!!!

visita mi pagina: http://www.microembebidos.wordpress.com

Desconectado micro_cadaver

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2102
    • blog microembebidos
Re: Ayuda con teclado matricial y display de 7seg con pic 16f84
« Respuesta #3 en: 18 de Octubre de 2006, 02:19:59 »
manda el codigo y una imagen de tu circuito, para ayudarte mejor. :o
a cosechar!!!... :P
pic32... ahi voy....
aguante el micro 16f84  !!!!

visita mi pagina: http://www.microembebidos.wordpress.com

Desconectado Astaroth_25

  • PIC12
  • **
  • Mensajes: 52
Re: Ayuda con teclado matricial y display de 7seg con pic 16f84
« Respuesta #4 en: 18 de Octubre de 2006, 22:23:27 »
Hola

 Me pueden ayudar a crear el codigo para un tablero de cambio de jugador, lo diseñe por proteus pero tengo problemas para
programar el pic, si alguien puede ayudarme con el codigo  :P   se lo agradeceria mucho.

Quetal...Adjunta el codigo y una imagen de tu circuito ... para poder tener una mejor idea de tu problema....

Saludos  :-)
HEAVY - METAL ..por siempre  Ψ Ω Ψ

Desconectado micro_cadaver

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2102
    • blog microembebidos
Re: Ayuda con teclado matricial y display de 7seg con pic 16f84
« Respuesta #5 en: 19 de Octubre de 2006, 01:07:15 »
amigo ivan no te desanimes, necesitamos esos archivos para ayudarte mejor :-).
a cosechar!!!... :P
pic32... ahi voy....
aguante el micro 16f84  !!!!

visita mi pagina: http://www.microembebidos.wordpress.com

Desconectado BrunoF

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3865
Re: Ayuda con teclado matricial y display de 7seg con pic 16f84
« Respuesta #6 en: 19 de Octubre de 2006, 02:22:06 »
Hola. Solo veo 2 displays rojos en tu diseño. ¿Pensas hacerlo con 1 solo color? Saludos.
"All of the books in the world contain no more information than is broadcast as video in a single large American city in a single year. Not all bits have equal value."  -- Carl Sagan

Sólo responderé a mensajes personales, por asuntos personales. El resto de las consultas DEBEN ser escritas en el foro público. Gracias.

Desconectado ivan13

  • PIC10
  • *
  • Mensajes: 2
Re: Ayuda con teclado matricial y display de 7seg con pic 16f84
« Respuesta #7 en: 20 de Octubre de 2006, 00:19:08 »
holas gracias por ofrecerse a ayudar :P

Aca dejo el diseño del circuito


la idea es ocuparlo para el intercambio de un jugador y digitalizar el número del jugador en unos displays gigantes por medio de transistores, y luego de pulsarlos realizar un retardo de 10 a 20 segundos por el número pulsado.

;teclado matricial y display de 7seg con pic 16f84
      LIST P=16F84A
      #INCLUDE<P16F84A.INC>
   
;DECLARACION DE VARIABLES
MEMORIA   EQU   10
REG1   EQU   11
REG2   EQU   12
REG3   EQU   13

   ORG   00
   GOTO   INICIO

RETARDO   MOVLW   .9
   MOVWF   REG1
DEC3   MOVLW   .9
   MOVWF   REG2
DEC2   MOVLW   .5
   MOVWF   REG3
DEC1   DECFSZ   REG3,1
   GOTO   DEC1
   DECFSZ   REG2,1
   GOTO   DEC2
   DECFSZ   REG1,1
   GOTO   DEC3
   RETURN
   
;CONFIGURACION DE PUERTOS

INICIO   
   BSF   STATUS,5
   MOVLW   0F
   MOVWF   PORTA
   CLRF   PORTB
   BCF   STATUS,5
   CLRF   PORTA
   CLRF   PORTB
   


COLUMNA   
   CLRF   PORTB
   BSF   PORTB,0
   BTFSC   PORTB,4
   GOTO   UNO
   BTFSC   PORTB,5
   GOTO   DOS
   BTFSC   PORTB,6
   GOTO    TRES
   CLRF   PORTB
   BSF   PORTB,1
   BTFSC   PORTB,4
   GOTO   CUATRO
   BTFSC   PORTB,5
   GOTO   CINCO
   BTFSC   PORTB,6
   GOTO   SEIS
   CLRF   PORTB
   BSF   PORTB,2
   BTFSC   PORTB,4
   GOTO   SIETE
   BTFSC   PORTB,5
   GOTO   OCHO
   BTFSC   PORTB,6
   GOTO   NUEVE
   CLRF   PORTB
   BSF   PORTB,3     
   BTFSC   PORTB,1
   GOTO   CERO
   GOTO   COLUMNA


     

UNO   MOVLW   b'0001'
   GOTO   MOSTRAR

CUATRO   MOVLW   b'0100'
                GOTO   MOSTRAR

SIETE   MOVLW   b'0111'
                GOTO   MOSTRAR

DOS   MOVLW   b'0010'
                GOTO   MOSTRAR

CINCO   MOVLW   b'0101'
                GOTO   MOSTRAR

OCHO   MOVLW   b'1000'
                GOTO   MOSTRAR

CERO   MOVLW   0
   GOTO   MOSTRAR

TRES   MOVLW   b'0011'
                GOTO   MOSTRAR

SEIS   MOVLW   b'0110'
                GOTO   MOSTRAR

NUEVE   MOVLW   b'1001'
                GOTO   MOSTRAR


MOSTRAR
   MOVWF   PORTA
   CALL   RETARDO
   GOTO        COLUMNA

END



saludos.
« Última modificación: 20 de Octubre de 2006, 00:30:38 por ivan13 »

Desconectado microcom

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 568
Re: Ayuda con teclado matricial y display de 7seg con pic 16f84
« Respuesta #8 en: 20 de Octubre de 2006, 20:24:01 »
Código: ASM
  1. amigo el programa que muestras es solo para mostrar un solo digito para el 15 seria llamar dos veces a columna y procesar los digitos en los cuales debes intercambiar posiciones o guardar el numero completo y al digitar enter mostrar el numero copmpleto.
  2.  
  3. ENTER = #
  4. LIMPIAR= *
  5.  
  6.  
  7. LIST P=16F84A
  8.                 #INCLUDE<P16F84A.INC>
  9.  
  10. ;DECLARACION DE VARIABLES
  11. MEMORIA EQU     10
  12. REG1    EQU     11
  13. REG2    EQU     12
  14. REG3    EQU     13
  15. VALOR1  EQU     14
  16. VALOR2  EQU     15
  17. DECENAS EQU     17
  18. UNIDAD  EQU     18
  19. PORTA   EQU     05
  20. PORTB   EQU     06
  21. STATUS  EQU     03
  22.  
  23.  
  24.  
  25.         ORG     00
  26.         GOTO    INICIO
  27.  
  28. RETARDO
  29.         MOVLW   .9
  30.         MOVWF   REG1
  31. DEC3    MOVLW   .9
  32.         MOVWF   REG2
  33. DEC2    MOVLW   .5
  34.         MOVWF   REG3
  35. DEC1    DECFSZ  REG3,1
  36.         GOTO    DEC1
  37.         DECFSZ  REG2,1
  38.         GOTO    DEC2
  39.         DECFSZ  REG1,1
  40.         GOTO    DEC3
  41.         RETURN
  42.  
  43.  
  44. ;CONFIGURACION DE PUERTOS
  45.  
  46. INICIO
  47.         BSF     STATUS,5
  48.         CLRF    PORTA
  49.         MOVLW    B'00001111'
  50.         MOVWF   PORTB
  51.         BCF     STATUS,5
  52.         CLRF    PORTA
  53.        
  54.         CLRF    UNIDAD
  55.         CLRF    DECENAS
  56.  
  57. CAPTURA
  58.         CALL    COLUMNA
  59.         MOVWF   VALOR1
  60.         MOVWF    UNIDAD
  61.         MOVLW    .10
  62.         XORWF   VALOR1,0
  63.         BTFSC   STATUS,2
  64.         GOTO       CAPTURA     
  65.         MOVLW    .11
  66.         XORFW    VALOR1,0
  67.         BTFSC   STATUS,2
  68.         GOTO      CAPTURA
  69.         CALL  COLUMNA
  70.         MOVWF   VALOR2
  71.         MOVWF   DECENAS
  72.         MOVLW    .10
  73.         XORWF   VALOR2,0
  74.         BTFSC   STATUS,2
  75.         GOTO      ENTER
  76.         MOVLW    .11
  77.         XORFW    VALOR2,0
  78.         BTFSC   STATUS,2
  79.         GOTO      INICIO
  80.  
  81.         MOVF    VALOR1,0
  82.                 MOVWF   DECENAS
  83.                 MOVF     VALOR2,0
  84.                 MOVWF    UNIDAD
  85.                
  86.        
  87.        
  88. EE      BSF    PORTB,7
  89.         BTFSC   PORTB,1
  90.         goto   enter
  91.         BTFSC   PORTB,3    ;*
  92.          GOTO     INICIO
  93.         GOTO   EE
  94.        
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102. ENTER
  103. VISUALIZACION  
  104.         MOVF    UNIDAD,W
  105.         BCF     PORTB,0
  106.         MOVWF   PORTA
  107.         CALL    RETARDO
  108.         BSF     PORTB,0
  109.         MOVF    DECENAS,W
  110.         MOVWF   PORTA
  111.         BCF     PORTA,4
  112.         CALL    RETARDO
  113.         BSF     PORTA,4
  114.         BSF    PORTB,7
  115.         BTFSC   PORTB,3
  116.         goto   INICIO
  117.         GOTO  ENTER
  118.  
  119.  
  120. COLUMNA  
  121.    CLRF   PORTB
  122.    BSF   PORTB,4
  123.    BTFSC   PORTB,3
  124.    GOTO   UNO
  125.    BTFSC   PORTB,2
  126.    GOTO   DOS
  127.    BTFSC   PORTB,1
  128.    GOTO    TRES
  129.    CLRF   PORTB
  130.    BSF   PORTB,5
  131.    BTFSC   PORTB,3
  132.    GOTO   CUATRO
  133.    BTFSC   PORTB,2
  134.    GOTO   CINCO
  135.    BTFSC   PORTB,1
  136.    GOTO   SEIS
  137.    CLRF   PORTB
  138.    BSF   PORTB,6
  139.    BTFSC   PORTB,3
  140.    GOTO   SIETE
  141.    BTFSC   PORTB,2
  142.    GOTO   OCHO
  143.    BTFSC   PORTB,1
  144.    GOTO   NUEVE
  145.    CLRF   PORTB
  146.    BSF   PORTB,7    
  147.    BTFSC   PORTB,2
  148.    GOTO   CERO
  149. BTFSC   PORTB,1   ;#  
  150. RETLW   .10
  151. BTFSC   PORTB,3    ;*
  152. RETLW   .11
  153.   GOTO   COLUMNA
  154.  
  155.  
  156.      
  157.  
  158. UNO   MOVLW   b'0001'
  159.    return
  160.  
  161. CUATRO   MOVLW   b'0100'
  162.                  return
  163.  
  164. SIETE   MOVLW   b'0111'
  165.                 return
  166.  
  167. DOS   MOVLW   b'0010'
  168.                return
  169. CINCO   MOVLW   b'0101'
  170.                 return
  171.  
  172. OCHO   MOVLW   b'1000'
  173.                  return
  174.  
  175. CERO   MOVLW   0
  176.     return
  177.  
  178. TRES   MOVLW   b'0011'
  179.                  return
  180.  
  181. SEIS   MOVLW   b'0110'
  182.                 return
  183.  
  184. NUEVE   MOVLW   b'1001'
  185.                 return
  186.  
  187.  
  188. END
  189. [code=asm]
[/code]
« Última modificación: 20 de Octubre de 2006, 21:20:08 por microcom »

Desconectado micro_cadaver

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2102
    • blog microembebidos
Re: Ayuda con teclado matricial y display de 7seg con pic 16f84
« Respuesta #9 en: 21 de Octubre de 2006, 03:00:47 »
hola amigo ivan,te voy a adjuntar a tu correo (porq no se como ponerlos en el mensaje y cuando lo quiero subir o adjuntar  me sale q esta llena la carpeta de uploads) los archivos ASM , DSN pa proteus 6.7 y una imagen del circuito, tienes q chekear 2 cosas, la configuracion del 4511 y los pines q usas en el pic, ahi te puse unos comentarios cualquier duda o pregunta aca toy  :-/
a cosechar!!!... :P
pic32... ahi voy....
aguante el micro 16f84  !!!!

visita mi pagina: http://www.microembebidos.wordpress.com

Desconectado micro_cadaver

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2102
    • blog microembebidos
Re: Ayuda con teclado matricial y display de 7seg con pic 16f84
« Respuesta #10 en: 21 de Octubre de 2006, 03:09:12 »
me pueden informar sobre como pegar los archivos como lo hacen uds?
a cosechar!!!... :P
pic32... ahi voy....
aguante el micro 16f84  !!!!

visita mi pagina: http://www.microembebidos.wordpress.com

Desconectado BrunoF

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3865
Re: Ayuda con teclado matricial y display de 7seg con pic 16f84
« Respuesta #11 en: 21 de Octubre de 2006, 03:24:34 »
Proba ahora micro. Comprimi todo en un .zip o .rar preferentemente.

Saludos.
"All of the books in the world contain no more information than is broadcast as video in a single large American city in a single year. Not all bits have equal value."  -- Carl Sagan

Sólo responderé a mensajes personales, por asuntos personales. El resto de las consultas DEBEN ser escritas en el foro público. Gracias.

Desconectado micro_cadaver

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2102
    • blog microembebidos
Re: Ayuda con teclado matricial y display de 7seg con pic 16f84
« Respuesta #12 en: 21 de Octubre de 2006, 05:40:44 »
ahi va ivan  :-)
a cosechar!!!... :P
pic32... ahi voy....
aguante el micro 16f84  !!!!

visita mi pagina: http://www.microembebidos.wordpress.com

Desconectado micro_cadaver

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2102
    • blog microembebidos
Re: Ayuda con teclado matricial y display de 7seg con pic 16f84
« Respuesta #13 en: 21 de Octubre de 2006, 08:09:02 »

yee creo q ya aprendi



Código: Microchip Assembler
  1. ;teclado matricial y display de 7seg con pic 16f84
  2.                 LIST       P=16F84A
  3.                 INCLUDE "P16F84A.INC"
  4.                 __CONFIG _CP_ON & _PWRTE_ON  & _XT_OSC & _WDT_OFF ;PALABRA DE CONFIGURACION (FUSES)
  5.                 ERRORLEVEL      -302 ;PARA Q NO SALGA EL MENSAJE 302 EN LA VENTANA OUTPUT
  6.                 RADIX           HEX ;PARA Q .10 = D'10'
  7.  
  8.  
  9. ;DECLARACION DE VARIABLES
  10.                 CBLOCK  0C ;MACRO PARA MENCIONAR LOS REGISTROS DE PROPOSITO GENERAL
  11. MEMORIA  
  12. REG1  
  13. REG2  
  14. REG3  
  15.                 ENDC ; FIN DE ESTA MACRO
  16.  
  17.                 ORG     0
  18.                 GOTO   INICIO
  19.                 ORG     5
  20.  
  21. RETARDO         MOVLW   .9
  22.                 MOVWF   REG1
  23. DEC3            MOVLW   .9
  24.                 MOVWF   REG2
  25. DEC2            MOVLW   .5
  26.                 MOVWF   REG3
  27. DEC1            DECFSZ  REG3,1
  28.                 GOTO    DEC1
  29.                 DECFSZ  REG2,1
  30.                 GOTO    DEC2
  31.                 DECFSZ  REG1,1
  32.                 GOTO    DEC3
  33.                 RETURN
  34.    
  35. ;CONFIGURACION DE PUERTOS
  36. INICIO          BSF     STATUS,RP0
  37.                 MOVLW   0XF0
  38.                 MOVWF   TRISB
  39.                 ;RB0 SALIDA = DISPARO BASE BC548
  40.                 ;RB1 SALIDA = COLUMNA1
  41.                 ;RB2 SALIDA = COLUMNA2
  42.                 ;RB3 SALIDA = COLUMNA3
  43.                 ;RB4 ENTRADA = FILA1
  44.                 ;RB5 ENTRADA = FILA2
  45.                 ;RB6 ENTRADA = FILA3
  46.                 ;RB7 ENTRADA = FILA4
  47.                 CLRF    TRISA
  48.                 ;RB0 SALIDA = BCD A
  49.                 ;RB1 SALIDA = BCD B
  50.                 ;RB2 SALIDA = BCD C
  51.                 ;RB3 SALIDA = BCD D            
  52.                 ;RB4 SALIDA = DISPARO BASE BC548
  53.                 MOVLW   0X07
  54.                 MOVWF   OPTION_REG
  55.                 ;HABILITO PULL-UP DEL PORTB(RB4-RB7)
  56.                                
  57.                 BCF     STATUS,RP0
  58.                 CLRF    PORTA
  59.                 CLRF    PORTB
  60.    
  61. COLUMNA         MOVLW   0X0F
  62.                 MOVWF   PORTB
  63.                 BCF     PORTB,1
  64.                 BTFSS   PORTB,4
  65.                 GOTO    UNO
  66.                 BTFSS   PORTB,5
  67.                 GOTO    CUATRO
  68.                 BTFSS   PORTB,6
  69.                 GOTO    SIETE
  70.                 ;BTFSS   PORTB,7
  71.                 ;GOTO    _*_
  72.                 MOVLW   0X0F
  73.                 MOVWF   PORTB
  74.                 BCF     PORTB,2
  75.                 BTFSS   PORTB,4
  76.                 GOTO    DOS
  77.                 BTFSS   PORTB,5
  78.                 GOTO    CINCO
  79.                 BTFSS   PORTB,6
  80.                 GOTO    OCHO
  81.                 BTFSS   PORTB,7
  82.                 GOTO    CERO
  83.                 MOVLW   0X0F
  84.                 MOVWF   PORTB
  85.                 BCF     PORTB,3
  86.                 BTFSS   PORTB,4
  87.                 GOTO    TRES
  88.                 BTFSS   PORTB,5
  89.                 GOTO    SEIS;_*_
  90.                 BTFSS   PORTB,6
  91.                 GOTO    NUEVE
  92.                 ;BTFSS   PORTB,7
  93.                 ;GOTO    _#_
  94.                 GOTO    COLUMNA
  95.  
  96. UNO             MOVLW   b'0001'
  97.                 GOTO    MOSTRAR
  98. CUATRO          MOVLW   b'0100'
  99.                 GOTO    MOSTRAR
  100. SIETE           MOVLW   b'0111'
  101.                 GOTO    MOSTRAR
  102. DOS             MOVLW   b'0010'
  103.                 GOTO    MOSTRAR
  104. CINCO           MOVLW   b'0101'
  105.                 GOTO    MOSTRAR
  106. OCHO            MOVLW   b'1000'
  107.                 GOTO    MOSTRAR
  108. CERO            MOVLW   0
  109.                 GOTO    MOSTRAR
  110. TRES            MOVLW   b'0011'
  111.                 GOTO    MOSTRAR
  112. SEIS            MOVLW   b'0110'
  113.                 GOTO    MOSTRAR
  114. NUEVE           MOVLW   b'1001'
  115.                 GOTO    MOSTRAR
  116.  
  117. MOSTRAR         MOVWF   PORTA
  118.                 BSF     PORTA,4;DISPARO DE LA BASE DEL BC548
  119.                 BSF     PORTB,0;DISPARO DE LA BASE DEL BC548
  120.                 CALL    RETARDO
  121.                 GOTO    COLUMNA
  122.  
  123.                 END
a cosechar!!!... :P
pic32... ahi voy....
aguante el micro 16f84  !!!!

visita mi pagina: http://www.microembebidos.wordpress.com

Desconectado Astaroth_25

  • PIC12
  • **
  • Mensajes: 52
Re: Ayuda con teclado matricial y display de 7seg con pic 16f84
« Respuesta #14 en: 22 de Octubre de 2006, 09:56:07 »
Hola

 Me pueden ayudar a crear el codigo para un tablero de cambio de jugador, lo diseñe por proteus pero tengo problemas para
programar el pic, si alguien puede ayudarme con el codigo  :P   se lo agradeceria mucho.


Ahi te paso el diseño en proteus.. y tu codigo fuente modificado... espero te sirva de ayuda....

Saludos :lol:
HEAVY - METAL ..por siempre  Ψ Ω Ψ


 

anything