Está en la página 1de 2

#BYTE #BYTE #BYTE #BYTE #BYTE #BYTE

TRISA = 0X85//DEFINE O LLAMA A LOS PUERTOS CORRESPONDIENTES PORTA =0X05///DEFINE BUS DE DATOS TRISB = 0X86 PORTB= 0X06 PORTC = 0X87 PORTC = 0X07//DEFINE BUS DE DATOS

una vez definidas estas variables se pueden configurar y controlar los puertos a traves de los comandos de asignacion TRISA = 0XFF //8TERMINALES DE ENTRADA TRISB = 0X00///8TERMINALES DE SALIDA TRISC = 0X0F //4TERMINALES DE MAYOR PESO DE SALIDA, 4 TERMINALES DE MENOR PESO D E ENTRADA ESCRITURA EN LOS PUERTOS:///ESCRITURA A TRAVES DEL BUS DE DATOS PORTC = 0X0A //SALIDA DEL DATOS 00001010 POR EL PUERTO C LECTURA DE PUERTOS///LECTURA POR MEDIO DEL BUS DE DATOS VALOR=PORTC; //ASIGANA EL DATO DEL PUERTO "A" A LA VARIABLE VALOR MANEJO DE SENTENCIAS TRISD=0X0F; MANEJOR DE SENTENCIAS TRISD = 0X0F; IF(PORTD & 0X0F)//COMPRUEBA LOS 4 TERMINALES DE MENOR PESO DEL PUERTO D Y SI SON PORTD |=0XA0; ///1111 SACA POR LOS 4 TERMINALES DE MAYOR PESO EL DATO 1010 EXISTEN UNAS FUNCIONES DE c QUE PERMITEN TRABAJAR BIT A BIT CON LOS REGISTROS O VARIABLES DEFINIDAS PREVIAMENTE.ESTA FUNCIONES SON LAS SIGUIENTES bit_clear(var,bit);//pone a bit_set(var,bit);//pone a 1 bit_test(var,bit);//muestra swap(var);//intercambia los ariable. 0 el bit especifico (0,7) de la variable. el bit especifico (0,7) de la variable. el bit especifico(0,7) de la variable 4 bits de mayor peso por los 4 de menor peso de la v

se puede declarar un bit de un registro con una variable mediante la directiva # BIT lo que permite trabajar directamente con la terminal #BIT nombre= posicion.bit #Bit RB4= 0X06.4 //PORTA = 0X06 ES UN EJEMPLO RB4=0;

A TRAVES DE LAS DIRECTIVAS El compilador ofrece funciones predefinidas para trabajar con los puertos. estas funciones son output_X(valor); input_X(); ///por el puerto correspondiente saca el valor (0-255). //se obtiene el valor en el puerto correspondiente.

set_tris_X(valor); //carga el registro TRISX con el valor (0-255). port_b_pullups(valor); //Mediante valor=TRUE o valor=FALSE habilita //o deshabilita las resistencias de pull-up en PORTB. get_trisX() //devuelve el valor del registro TRISX

También podría gustarte