Autor Tema: enmascarar un puerto  (Leído 4829 veces)

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

Desconectado henryflash

  • PIC16
  • ***
  • Mensajes: 130
enmascarar un puerto
« en: 15 de Julio de 2011, 22:10:34 »
hola , alguien podria ayudarme , tengo que usar un puerto para hacer dos contadores, y no se como enmascarar , agradeceria a quien me pueda ayudar, yo normalmente programo en niple ,pero me parece que lo mas correcto para este caso es  ASM.gracias.
Saludos  Enrique........

Desconectado soymoe

  • PIC18
  • ****
  • Mensajes: 456
    • El blog de Moe
Re: enmascarar un puerto
« Respuesta #1 en: 15 de Julio de 2011, 22:50:12 »
Modificando los valores de el registro TRISA o TRISB se pueden modificar la funcion de los puertos del PIC. Debes leer el PDF del PIC

Desconectado henryflash

  • PIC16
  • ***
  • Mensajes: 130
Re: enmascarar un puerto
« Respuesta #2 en: 16 de Julio de 2011, 12:57:30 »
Modificando los valores de el registro TRISA o TRISB se pueden modificar la funcion de los puertos del PIC. Debes leer el PDF del PIC
te agradezco voy a intentarlo después te cuento.
Saludos Enrique...

Desconectado tapi8

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1506
Re: enmascarar un puerto
« Respuesta #3 en: 16 de Julio de 2011, 14:08:57 »
Tienes que enmascarar un nibble y despues el otro para leerlos por separado, verdad?
Eso se hace con una AND poniendo a 0 el que no quieres leer:

movlw  0x0F  ; para enmascarar nibble alto
andwf  PORTB  ; aqui tienes 0 en nibble alto y en el bajo la lectura de lo que haya

Para leer el alto tienes que hacer movlw 0xF0, evidentemente

Desconectado todopic

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3495
    • http://www.todopicelectronica.com.ar
Re: enmascarar un puerto
« Respuesta #4 en: 16 de Julio de 2011, 17:09:31 »
Hola Henry, supongo que tendras que sacar por un puerto, el valor de dos contadores tipo BCD...
entonces tendras dos registros, uno por cada contador...
cuando tienes que colocar ambos contadores "acomodados" en el puerto, podrias pasar el contador de unidades, directamente al puerto (los 4 bit de menor peso)...
el contador de decenas( 4 bit de mayor peso) lo rotas 4 veces a la izquierda (RLF), colocas en uno los 4 bit de menor peso de este registro, y le haces and con el puerto de salida...
Firmat - Santa Fe - Argentina

www.TodoPic.net

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

Desconectado henryflash

  • PIC16
  • ***
  • Mensajes: 130
Re: enmascarar un puerto
« Respuesta #5 en: 31 de Julio de 2011, 22:50:38 »
Tienes que enmascarar un nibble y despues el otro para leerlos por separado, verdad?
Eso se hace con una AND poniendo a 0 el que no quieres leer:

movlw  0x0F  ; para enmascarar nibble alto
andwf  PORTB  ; aqui tienes 0 en nibble alto y en el bajo la lectura de lo que haya

Para leer el alto tienes que hacer movlw 0xF0, evidentemente
gracias esto me aclara un poco mas la cosa, yo en basic ponia and 15 y lograba algo parecido. lo pruebo y te cuento, muchas gracias a todos los que colaboraron con migo.
Saludos Enrique...


 

anything