Manejo Y Salida De Un Microcontrolador
Enviado por ffonsecach • 10 de Agosto de 2014 • 1.509 Palabras (7 Páginas) • 237 Visitas
COMENTARIOS
List p=16F628A Pic que se va utilizar
radix Hex Usaremos la numeración Hexadecimal
w equ 0 Identifica W con el valor 0
f equ 1 Identifica f con el valor 1
PCL equ 0x02 Dirección registro PCL, contador de programa.
Estado equ 0x03 Dirección de Estado
PuertaA equ 0x05 Dirección puerto A
PuertaB equ 0x06 Dirección puerto B
VALOR equ 0x0C Dirección de VALOR
org 0 El PIC comienza aquí cuando se encienda o haya un reset.
goto Empiezo Vaya a Empiezo
org 5 El PIC vendrá aquí si hay una interrupción
Empiezo bsf Estado,5 Vaya al Banco 1
clrw Coloca en cero el registro w
movwf PuertaB Coloca los pines del puertaB como salidas.
movlw 0xff Escribe FF en el registro w
movwf PuertaA Coloca los pines del puertoA como entradas.
bcf Estado,5 Vuelve al Banco o
Explora movf PuertaA,w Movemos el contenido de puertaA a w
movwf VALOR Movemos el contenido del w a VALOR
comf VALOR,f Invierte los valores de Valor y los coloca en VALOR
clrw Coloca el registro w a cero
Btfss VALOR,0 Comprueba que EL pin 0 de VALOR este en 1, sino vaya a la sgte línea
goto bit_1 Vaya bit_1
addlw 0x01 Sumamos 01h a w y lo deposita en w
bit_1 btfss VALOR,1 Comprueba el bit 1 VALOR esté e uno
goto bit_2 Vaya a bit_2
addlw 0x02 Sumamos 02h a w y lo deposita en w
bit_2 btfss VALOR,2 Comprueba que el bit 2 de VALOR este en 1
goto bit_3 Vaya a bit_3
addlw 0x04 Sumamos 04h a w y lo deposita en w
bit_3 btfss VALOR,3 Comprueba el bit 3 de VALOR este en 1, sino vaya a la sgte línea
goto visual Vaya a visual
addlw 0x08 Sumamos 08 a w y lo deposita en w
visual call display Llamar Tabla del display siete segmentos
movwf PuertaB Carga los contenidos de w a puertaB
goto Explora Vaya a explora
display addwf PCL,f Añade los contenidos de w al contador del programa, esto produce que el PCL se mueva tres líneas hacia abajo.
retlw 0x3f Carga 3f (representación del nº 0)y
...