Está en la página 1de 12

Gestin de los Puertos de I/O

Puertos Digitales del PIC


PORTA= 6 pines PORTB= 8 pines PORTC= 8 pines PORTD= 8 pines PORTE= 3 pines

Los pines del PORTA y PORTE son analgicos por defecto, excepto el pin RA4.

Configuracin de los PUERTOS


Los PUERTOS del PIC pueden ser configurados como Entrada o Salida Digital. Para lograr esta configuracin hacemos uso de un registro de 8 bits llamado TRIS, cada PUERTO posee un registro TRIS. En un mismo puerto puede haber entradas y salidas.

Configuracin de los PUERTOS

POSICIN EN LA MEMORIA DE DATOS

POSICIN EN LA MEMORIA DE DATOS

Conexin a de los PUERTOS del PIC a tarjetas de desarrollo

Ejemplo 1
Blink de un led cada 1 seg. por el pin RD0.
#include<16f877a.h> #use delay (clock=20000000) #fuses HS, NOWDT, NOLVP
#byte PORTD = 0x08 #byte TRISD = 0x88 void main(){ bit_clear(TRISD,0); While(1){ bit_set(PORTD,0); delay_ms(1000); bit_clear(PORTD,0); delay_ms(1000); } }

// Configuramos a RD0 como salida // Bucle Infinito // Instruccin que pone a UNO un bit // Instruccin que genera retardos en Milisegundos // Instruccin que pone a CERO un bit

Instrucciones para trabajar con BITS


Para dar un valor a un BIT bit_set(MEMORIA,BIT) bit_clear(MEMORIA,BIT) output_HIGH(pin_X) output_LOW(pin_X) Para testear el valor de un BIT:

bit_test(MEMORIA,BIT) input(MEMORIA,BIT)

Instrucciones para trabajar con Bytes


Para dar un valor a un BYTE output_A() output_B() output_C() output_D() output_E() set_tris_A() set_tris_B() set_tris_C() set_tris_D() set_tris_E() Para testear el valor de un BYTE: input_A() input_B() input_C() input_D() input_E()

Instrucciones para trabajar con BITS

Ejercicio 1
Con el pin RB0 prender el LED de RB4.
De igual forma con el pin RB1, RB2 y RB3

También podría gustarte