Foros de Electrónica

Comunidad de discusión sobre Automatización, Electrónica industrial, Microcontroladores y electrónica digital, Robótica, Domótica, Telemática, Tecnologías móviles, y muchos temas más.




Pic 16f84 conjunto de instruciones


       



#1  Pic 16f84 conjunto de instruciones
mrkcc
Ubicación: guatemala
Registrado: 30 Jun 2008
Mensajes: 16
citar
;---------------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

#2  
El nombre
Ubicación: Alicante
Registrado: 28 Jun 2006
Mensajes: 1445
citar
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

#3  
El nombre
Ubicación: Alicante
Registrado: 28 Jun 2006
Mensajes: 1445
citar
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

#4  
Chico3001
Ubicación: Mexico, D.F.
Registrado: 09 Jul 2006
Mensajes: 616
citar
Ps no se los demas.. pero yo no entendi la pregunta...

#5  
pepechip
Colaborador
Ubicación: Granada- España
Registrado: 09 Feb 2007
Mensajes: 1622
citar
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.

#6  
mrkcc
Ubicación: guatemala
Registrado: 30 Jun 2008
Mensajes: 16
citar
pepechip, yo creo que no hice bien la pregunta, pero gracias por entenderme, que bueneo que resolvistes mi duda.

 Responder



 Otros temas de interés 
No hay mensajes nuevos Detectar cambio de estado (VB)
No hay mensajes nuevos Estado inicial de 555
No hay mensajes nuevos Aumentar potencia en bobina tesla de estado solido
No hay mensajes nuevos amplificador para electromiografo
No hay mensajes nuevos Diseño de un relé de estado solido DC

Foros de Electronica
|| Cuestiones Elementales de Electrónica || Fuentes de alimentacion || Circuitos de radio || Diseño de circuitos en general ||
|| Sistemas de Audio: Preamplificadores, Ecualizadores || Amplificadores || Reparación || Discusión ||
|| Microcontroladores y sistemas embebidos || Circuitos logicos combinacionales y secuenciales || Interfaces y Programacion || Dudas en general || Sistemas de Video || PC Hardware || Telematica y comunicaciones || Tecnologias moviles || Software Electronico || Robotica, Domotica y Mecatronica || Autotrónica || Automatizacion, Electronica industrial y de Potencia || Documentacion, circuitos y esquemas || Donde Las Ideas Convergen... || Tutoriales y Manuales || Proyectos Prácticos ||
Contacto | Acerca de | Ayuda | Normas de la Comunidad | Privacidad | Mapa de los foros
© Foros de Electrónica - Comunidad Internacional de Electrónicos