Programacion de micros: PIC 16F84A

Programacion de micros: PIC 16F84A

PIC 16F84A

El pic 16F84A es uno de los mas usados por todos los que se inician en el campo de la programacion de microcontroladores
  1. list p=16F84A
  2. #include "p16f84a.inc"
  3.  
  4. ;Definicion de fuses
  5.  
  6. __CONFIG   _CP_OFF & _WDT_OFF & _PWRTE_ON & _HS_OSC
  7.  
  8. ;Ubicacion de variables en banco de memoria
  9.  
  10. COUNT1 equ 0x0c
  11. COUNT2 equ 0x0d
  12.  
  13. ;Inicio de programa
  14.  
  15. org 0x00
  16.  
  17. ;Modo de operacion de puertos I/O, interrupciones
  18.  
  19. bsf STATUS,5
  20. movlw 0x00              ;b’00000000’ todas como salidas
  21. movwf TRISB       ;pero solo usaremos RB0
  22. bcf STATUS,5   
  23.  
  24. ;Codigo de programa
  25. bsf PORTB,0
  26. INICIO      
  27.          call DELAY
  28.          comf  PORTB,1    ;Poner a 0 RB0
  29.          call DELAY
  30.          goto INICIO
  31.  
  32. DELAY movlw 0xFF  ; Subrutina de retardo
  33.       movwf COUNT1  ; 256x256=65536 cuentas
  34.       movwf COUNT2
  35. LOOP  decfsz COUNT1,1 ; Decrementa COUNT1
  36.       goto LOOP  ; Salta si COUNT1=0
  37.       movlw 0xFF  
  38.       movwf COUNT1  ; COUNT1=FF
  39.       decfsz COUNT2,1 ; Decrementa COUNT2
  40.       goto LOOP  ; Salta si COUNT2=0
  41.       return   ; Retorno de subrutina
  42.  
  43. end   ; Fin de programa