[ASM] Programando un PIC

Iniciado por mr.blood, Mayo 13, 2013, 07:36:57 PM

Tema anterior - Siguiente tema

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

Mayo 13, 2013, 07:36:57 PM Ultima modificación: Julio 14, 2014, 08:07:23 PM por Expermicid
Empecemos aportando algo, creo que vine para quedarme :P.

Dejo el programa comentado.

Código: asm
STATUS    equ       03h ;Definiciones, para no manejar
TRISA     equ       85h ;direcciones todo el rato.
TRISB     equ       86h
PORTA     equ       05h
PORTB     equ       06h
CONTADOR  equ       08h
   
    org 0x0
          bsf       STATUS,5 ;Cambiamos al banco 1
          movlw     0x0 ;Movemos a W 0
          movwf     TRISA ;Todos los puertos A son de salida
          movlw     0x1 ;Movemos a W 1
          movwf     TRISB ;Todos los puertos B son de salida, menos RB0
          bcf       STATUS,5 ;Volvemos al banco 0

Inicio    BTFSS     PORTB,0 ;Comprueba si RB0 es 1, si lo es SALTA LA SIGUIENTE INSTRUCCION
          bcf       PORTA,1 ;Envia 0 por la patilla RA1
          BTFSC     PORTB,0 ;Comprueba si RB0 es 0, si lo es SALTA LA SIGUIENTE INSTRUCCION
          call      Parpadeo ;Llama a Parpadeo
          goto      Inicio ;El bucle se repite

Parpadeo  call Duerme ;Llama a Duerme para hacer una pausa
          bsf       PORTA,1 ;Envia 1 por la patilla RA1
          call Duerme ;Llama a Duerme para hacer una pausa
          bcf       PORTA,1 ;Envia 0 por la patilla RA1
          call Duerme
          return

Duerme    movlw 0x90 ;Mueve a W 0x90
          movwf CONTADOR ;Mueve W a CONTADOR (CONTADOR(08h)=0x90)
Bucle     decfsz CONTADOR,1 ;Decrementa CONTADOR, y si es 0 SALTA LA SIGUIENTE INSTRUCCION
          goto Bucle ;Vuelve a empezar el bucle
          return ;Return
    end ;Fin del programa


Este seria el montaje, dejo la imagen de Proteus, por si a alguien mas le interesa esto ;).


Comento un poco el funcionamiento: Si el boton esta cerrado, el LED parpadea. Si el boton esta abierto, el LED se mantiene apagado.

Sa1uDoS

Pero que buenooooo!!
Viene de 10 bro!
Muchisimas gracias!!


Otro que se larga de CPH xD

Muy bueno!!!

Gracias.
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta