Está en la página 1de 2

Objetivo.

Escribir un programa en lenguaje ensamblador que lea un dato en el puerto A y si


el dato es 1 debe de prender un LED rojo conectado al puerto D y si el dato es 0
debe encender un LED verde conectado al puerto E. Comprobar los resultados en
la tarjeta de desarrollo.

Introducción.
BTFSC Bit Test, Skip If Clear
Sintaxis BTFSC f, b

0110 bbbf ffff


01 10bb bfff ffff
Codificación

Palabras, Ciclos 1, 1 o 2
Operación Salta si b(f)=0
Bit de estado Ninguno
Descripción Si el bit numero b de f es nulo, la instrucción que sigue a esta se
ignora y se trata como un NOP. En este caso, y solo en este
caso, la instrucción BTFSC precisa dos ciclos para ejecutarse.

BTFSS Bit Test, Skip If Set


Sintaxis BTFSS f, b

0111 bbbf ffff


Codificación 01 11bb bfff ffff

Palabras, Ciclos 1, 1 o 2
Operación Salta si b(f)=1
Bit de estado Ninguno
Descripción Si el bit numero b de f esta en uno, la instrucción que sigue a
esta se ignora y se trata como un NOP. En este caso, y solo
en este caso, la instrucción BTFSC precisa dos ciclos para
ejecutarse.
Material.
 Protoboard
 Resistores de diferente valor.
 LED color Verde y LED color Rojo.
 PIC18F4550.

Desarrollo.
Código ensamblador.

LIST P=18f4550, F=INHx32


#include<P18F4550.inc>
RES_VECT CODE
GOTO START
org 0x1000

START
movlw 0x0F
movwf ADCON1
movwf CMCON

movlw 0x07
movwf TRISA

movlw 0xF0
movlw TRISD
movlw TRISE

repite
BTFSS PORTA,0
goto no
movf PORTA,w
movwf PORTD
goto repite

no
movlw 0x0F
movwf PORTE
goto repite

END

También podría gustarte