Tu comunidad de Seguridad Informatica

 ASM 16F84A - Controlar una pantalla de 7 segmentos by linkgl Info1810 Para ver Todo el contenido del foro es necesario estar Registrado!  ASM 16F84A - Controlar una pantalla de 7 segmentos by linkgl Info1810
 ASM 16F84A - Controlar una pantalla de 7 segmentos by linkgl Info1810 Antes de comentar o Aportar es Obligado Leer Las: Reglas | Rules  ASM 16F84A - Controlar una pantalla de 7 segmentos by linkgl Info1810
 ASM 16F84A - Controlar una pantalla de 7 segmentos by linkgl Info1810Ya Esta Disponible al publico "LeProject" el Videojuego del Foro Click Aquí Para Ver el Post.  ASM 16F84A - Controlar una pantalla de 7 segmentos by linkgl Info1810
 ASM 16F84A - Controlar una pantalla de 7 segmentos by linkgl Info1810Pitbull Security Labs "Extras" Esta Disponible! [ENTRA] ASM 16F84A - Controlar una pantalla de 7 segmentos by linkgl Info1810

No estás conectado. Conéctate o registrate

Ver el tema anterior Ver el tema siguiente Ir abajo  Mensaje [Página 1 de 1.]

1-Slandg- 

-Slandg-
Administrador
Administrador

http://www.pitbullsecurity.org
Lun Mar 07, 2011 8:12 pm
Linkgl escribió:Bueno para los que no conozcan de electrónica este ASM es un poco
diferente al que conocemos común mente como FASM, NASM, MASM y TASM,
este ASM esta hecho para procesadores de la compañía microchip que nos
provee este microcontrolador PIC, el código esta hecho para el 16F84A
pero podría funcionar perfectamente en otros microcontroladores de gama
media.

Lo que hace el código siguiente es mostrar un numero en la
pantalla de 7 segmentos dependiendo de el swich que se levante, para
esto se necesitan 3 switch conectados a tierra y unas resistencias (yo
las puse de 10k) que van a VCC usando la inversa es decir cuando se
levante el switch habrá corriente y cuando este abajo no habrá
corriente, ustedes pueden modificarlo y hacerlo de forma directa lo
interesante es el código...

Agradecimientos especiales a Konanxp


Código:

    LISTP=16F84A
        #INCLUDE <P16F84A.INC>
            RADIX HEX

    AUXILIAR    EQU 0X0C
    CONTADOR    EQU 0X0D

        ORG 0
        GOTO INICIO
        ORG 5


    INICIO  BSF STATUS,RP0  ;NOS PASAMOS AL BANCO 1
            MOVLW B'00000010'
            MOVWF TRISB
            MOVLW B'00111'    ;CONFIGURAMOS 3 PUERTOSA ENTRADA
            MOVWF TRISA        ;APLICAMOS LA CONFIGURACION AL PUERTO A
            BCF STATUS,RP0    ;NOS PASAMOS AL BANCO 0

    BORRAR    MOVLW B'11111111'
            MOVWF PORTB
    SEGUIR  MOVLW B'00001'    ;CARGAMOS EL PUERTO A EN W
            XORWF PORTA        ;COMPARAMOS W CON EL PUERTOA (IF W == PUERTOA)
            BTFSS STATUS,Z  ;RESULTADO DEL FLAG Z (IF W==PUERTOA THEN Z=0 ELSE Z=1)
            GOTO PROBAR2    ;SI Z ES IGUAL A 1 ENTONCES VAMOS A SEGUIR
            MOVLW B'11110010';DIBUJAMOS EL 1
            MOVWF PORTB        ;CARGAMOS W AL PUERTO B
            GOTO SEGUIR
    PROBAR2    MOVLW B'00010'
            XORWF PORTA        ;COMPARAMOS W CON EL PUERTOA (IF W == PUERTOA)
            BTFSS STATUS,Z  ;RESULTADO DEL FLAG Z (IF W==PUERTOA THEN Z=0 ELSE Z=1)
            GOTO PROBAR3    ;SI Z ES IGUAL A 1 ENTONCES VAMOS A SEGUIR
            MOVLW B'01001000';DIBUJAMOS EL 2
            MOVWF PORTB 
            GOTO SEGUIR
    PROBAR3    MOVLW B'00100'
            XORWF PORTA        ;COMPARAMOS W CON EL PUERTOA (IF W == PUERTOA)
            BTFSS STATUS,Z  ;RESULTADO DEL FLAG Z (IF W==PUERTOA THEN Z=0 ELSE Z=1)
            GOTO BORRAR        ;SI Z ES IGUAL A 1 ENTONCES VAMOS A SEGUIR
            MOVLW B'01100000';DIBUJAMOS EL 3
            MOVWF PORTB        ;CARGAMOS W AL PUERTO B
            GOTO SEGUIR        ;NOTA 0=ENCENDIDO 1=APAGADO

        END

Ver el tema anterior Ver el tema siguiente Volver arriba  Mensaje [Página 1 de 1.]

Permisos de este foro:
No puedes responder a temas en este foro.