Autor Tema: shift register 74164  (Leído 2468 veces)

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

Desconectado hopa2007

  • PIC10
  • *
  • Mensajes: 10
shift register 74164
« en: 21 de Septiembre de 2009, 21:57:36 »
Hola

Non consigo hacer desplezar uno 74164.
No me inteindo con os  "0 " e " 1 ". mas o reset.
me ajude.
Grato

Desconectado hopa2007

  • PIC10
  • *
  • Mensajes: 10
Re: shift register 74164
« Respuesta #1 en: 21 de Septiembre de 2009, 22:01:22 »
Aqui hay uno código de la revista ucontrol

clock var PORTb.0
dat var PORTb.1
reset var portb.2
coluna var Byte


TRISB = %00000000


main:

    For coluna = 1 To 8
        If dato.7 = 0 Then
           dat = 0
           clock = 0
           pause 1
           clock = 1
           pause 1
        Else
           dat = 1
           clock = 0
           pause 1
           clock = 1
           pause 1
        Endif
        aux = dato + 1
    Next coluna

goto main

Desconectado BrunoF

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3865
Re: shift register 74164
« Respuesta #2 en: 21 de Septiembre de 2009, 23:03:42 »
Hola!

Proba así:

Código: Visual Basic
  1. clock var PORTb.0
  2. dat var PORTb.1
  3. reset var portb.2
  4. coluna var Byte
  5. dato var Byte
  6. aux var Byte
  7.  
  8. TRISB = %00000000
  9.  
  10. dato=%10101010
  11.  
  12. main:
  13.  
  14.     aux=dato
  15.     For coluna = 1 To 8
  16.         dat = 0
  17.         If aux.7 = 1 Then dat=1
  18.         clock = 1
  19.         aux=aux*2
  20.         clock=0
  21.     Next coluna
  22.  
  23. goto main
"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 hopa2007

  • PIC10
  • *
  • Mensajes: 10
Re: shift register 74164
« Respuesta #3 en: 22 de Septiembre de 2009, 08:39:33 »
Los leds ficam todos acesos, los dados %10101010 non se desplezam... porque?
saluto

Desconectado BrunoF

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3865
Re: shift register 74164
« Respuesta #4 en: 22 de Septiembre de 2009, 14:27:39 »
Porque el pin RESET debe estar en ALTO para que funcione. Proba esto:

Código: Visual Basic
  1. clock var PORTb.0
  2. dat var PORTb.1
  3. reset var portb.2
  4. coluna var Byte
  5. dato var Byte
  6. aux var Byte
  7.  
  8. TRISB = %00000000
  9.  
  10. reset=1
  11.  
  12. dato=%10101010
  13.  
  14. main:
  15.  
  16.     aux=dato
  17.     For coluna = 1 To 8
  18.         dat = 0
  19.         If aux.7 = 1 Then dat=1
  20.         clock = 1
  21.         aux=aux*2
  22.         clock=0
  23.     Next coluna
  24.  
  25. goto main
"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 hopa2007

  • PIC10
  • *
  • Mensajes: 10
Re: shift register 74164
« Respuesta #5 en: 23 de Septiembre de 2009, 19:11:09 »
Muchas gracias Bruno

Funcionou.....vou tentar fazer una la matriz de leds de 7x5.
los dados  "dato" deberam serem colocados a las filas en estado
alto y depois bajo. Acho isto...
Vou tentar.

Gracias


 

anything