Pic 16f84 conjunto de instruciones

;---------------Encabezado-------------

LIST p=16f84
radix hex

;------------mapa de memoria---------

estado equ 0x03 ; Haciendo asignaciones
TRISB equ 0x06
ptob equ 0x06

reg1 equ 0x0C ; Estos 3 registros los utilizaré
reg2 equ 0x0D ; para hacer el retardo
reg3 equ 0x0E

;-------Configuración de puertos-------

reset org 0x00 ; origen del programa, aquí comenzará
; siempre que ocurra un reset
goto inicio ; salta a "inicio"
inicio bsf estado,5 ; pone rp0 a 1 y pasa al banco1
movlw b'00000000' ; carga W con 00000000
movwf TRISB ; y pasa el valor a trisb
bcf estado,5 ; pone rp0 a 0 y regresa al banco0

;----Aquí enciende y apaga el LED-----

ahora bsf ptob,0 ; pone un 1 en RB0 (enciende el LED)
call retardo ; llama al retardo

bcf ptob,0 ; pone a 0 RB0 (apaga el LED)
call retardo ; llama al retardo
goto ahora ; repite todo de nuevo

;-----------Rutina de Retardo-----------

retardo movlw 10 ; Aquí se cargan los registros
movwf reg1 ; reg1, reg2 y reg3
; con los valores 10, 20 y 30
tres movlw 20 ; respectivamente
movwf reg2

dos movlw 30
movwf reg3

uno decfsz reg3,1 ; Aquí se comienza a decrementar
goto uno ; Cuando reg3 llegue a 0
decfsz reg2,1 ; le quitare 1 a reg2
goto dos ; cuando reg2 llegue a 0
decfsz reg1,1 ; le quitare 1 a reg1
goto tres ; cuando reg1 llegue a 0
retlw 00 ; regresare al lugar
; de donde se hizo la llamada

;------------------------------------------
end
;------------------------------------------

la pre pegunta es la sigiente donde die estado trisb, ptop, hasta llegar al rutina de retardo,
sera que si cambio el donde dice estado por otra palabra no afectar todo
;------------mapa de memoria---------

estado
TRISB
ptob

reg1
reg2
reg3

;-------Configuración de puertos-------

reset
inicio
;----Aquí enciende y apaga el LED-----

ahora

;-----------Rutina de Retardo-----------

retardo
tres

dos

uno
 
A parte de repetirte me organizaría un poco más.
Pregunta al principio y no donde te parece ya que auyentarás a la gente que lee tranquilamente el código que expones
 
A parte de repetirte me organizaría un poco mejor.
Pregunta al principio y no donde te parece ya que auyentarás a la gente que lee tranquilamente el código que expones
 
Tu al principio del programa a la palabra estado le asignas la direccion 03, y luego durante la ejecucion del programa cundo se encuentre con esa palabra la interpretara como 03.

La palabra estado la puedes sustituir por la que tu quieras, pero la tendras que cambiar en todos los sitios que aparezca en tu programa.
 
Atrás
Arriba