sena

Páginas: 6 (1423 palabras) Publicado: 5 de agosto de 2013
ACTIVIDAD CENTRAL UNIDAD 3
Diseño de productos electrónicos con microcontroladores
1. Comentarios de líneas de código


COMENTARIOS
List p=16F628A
Usaremos el PIC 16F628A
radix Hex
Utilizaremos la numeración hexadecimal
w equ 0
Se define la constante w=0
f equ 1
Se define la constante f=1
PCL equ 0x02Asignando el nombre PCL al registro que está en la posición 0x02 de la memoria de datos
Estado equ 0x03
Asignando el nombre estado al registro que está en la posición 0x03 de la memoria de datos
PuertaA equ 0x05
Asignando el nombre PuertaA al registro que está en la posición 0x05 de la memoria de datos
PuertaB equ 0x06
Asignando el nombre PuertaB al registroque está en la posición 0x06 de la memoria de datos
VALOR equ 0x0C
Asignando el nombre VALOR al registro que está en la posición 0x0C de la memoria de datos
org 0
Una parte del programa se escribirá en 0
goto Empiezo
Salta a la etiqueta Empiezo
org 5
Una parte del programa se escribirá en 5
Empiezobsf Estado,5
Pone en 1 el bit 5 de la file Estado
Clrw
El contenido del acumulador se pone en 0x00
movwf PuertaB
Mueve una copia del acumulador W al registro PuertaB
movlw 0xff
Carga un número en el acumulador W.
El número que se va a cargar en al acumulador está representado por 0xffmovwf PuertaA
Mueve una copia del acumulador W al registro PuertaA
bcf Estado,5
Pone en cero el bit Estado del file 5.
Los bits del registro f se numeran de 0 a 7.
Explora movf PuertaA,w
Mueve una copia del registro PuertaA al destino W.
movwf VALOR
Mueve una copia del acumulador W al registro VALOR.comf VALOR,f
Complementa el contenido del registro VALOR.
Los 1 unos los pone en 0, los 0 los pone en 1.
El resultado de esta operación lo coloca en el destino f.
Si f=0 el resultado lo coloca en el acumulador
Si f=1 el resultado se coloca en el mismo registro VALOR
clrw
El contenido del acumulador se pone en ceros 0x00
BtfssVALOR,0
Prueba el bit 0 del registro VALOR.
Salta la siguiente instrucción si bit b es 1.
goto bit_1
Salta a la etiqueta bit_1
addlw 0x01
Suma el contenido del acumulador W con el numero 0x01
bit_1 btfss VALOR,1
Prueba el bit 1 del registro VALOR.
Salta la siguiente instrucción si bit b es 1.goto bit_2
Salta a la etiqueta bit_2
addlw 0x02
Suma el contenido del acumulador W con el numero 0x02
bit_2 btfss VALOR,2
Prueba el bit 2 del registro VALOR.
Salta la siguiente instrucción si bit b es 1.
goto bit_3
Salta a la etiqueta bit_3
addlw 0x04
Suma el contenido del acumulador W con el numero 0x04bit_3 btfss VALOR,3
Prueba el bit 3 del registro VALOR.
Salta la siguiente instrucción si bit b es 1.
goto visual
Salta a la etiqueta visual
addlw 0x08
Suma el contenido del acumulador W con el numero 0x08
visual call display
Salta a una subrutina en la etiqueta display
movwf PuertaB
Mueve una copia delacumulador W al registro PuertaB
goto Explora
Salta a la etiqueta Explora
display addwf PCL,f
Suma el contenido de W con el contenido del registro PCL
retlw 0x3f
Regresa de una subrutina. Con el numero 0x3f en el acumulador.
retlw 0x06
Regresa de una subrutina. Con el numero 0x06 en el acumulador.
retlw...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Sena
  • sena
  • Sena
  • Sena
  • SENA
  • sena
  • Sena
  • Sena

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS