Vous êtes sur la page 1sur 20

UNIDAD V

PUERTOS DE ENTRADA Y SALIDA.


5.1 ARQUITECTURA DE
LOS PUERTOS DE I/O.
Los puertos de microcontrolador son el punto de
comunicación entre el microcontrolador y el mundo exterior,
a través de ellos se pueden efectuar procesos de control
electrónico sobre dispositivos de potencia, instrumentación
telemetría etc. además permiten también recibir señales del
mundo exterior.
PUERTOS DE
ENTRADA/SALIDA
Puertos de Entrada/Salida
• Pines de entrada/salida (I/O) de propósito general;Mediante
ellos, el micro PIC puede monitorizar y controlar otros
dispositivos.
• Para añadir flexibilidad al micro, muchos de sus pines de
entrada/salida están multiplexados con funciones alternativas.
•Para la mayoría de los puertos, la dirección del pin I/O es
controlada por el registro de dirección de datos, llamado TRIS.
TRISX<n> controla la dirección del pin n del puerto X.
• Un 1 en el registro TRIS indica que el pin es entrada. Un 0
indica que es salida.
El valor de RESET de los registros TRIS suele ser un ‘1’, de
forma que por defecto los pines estén configurados como
entradas evitando posibles cortocircuitos en la alimentación que
podrían dañar el micro o el resto del sistema.
El registro PORT funciona como un latch para los datos de salida.
Cuando el registro PORT se lee (Ej, MOVF PORTB,W), el micro
lee los niveles presentes en los pines de I/O (no en los latches).
LÍNEAS DE ENTRADA/SALIDA
(E/S) – PUERTOS
Los microcontroladores cuentan con una serie de pines
destinados a entrada y salida de datos o señales digitales. A
estos pines se les denomina “Puerto”
Como mencionamos anteriormente, todo el funcionamiento del
microcontrolador está controlado a través de los registros. Los
puertos no son la excepción, también están controlados por los
registros. Por esto, un puerto no puede estar formado por más de
8 pines; 1 Pin por cada Bit de un registro. Un puerto si puede
estar formado por menos de 8 pines.
PUERTOS DE
ENTRADA/SALIDA “PIC”
Con el propósito de sincronizar el funcionamiento de los puertos
de E/S con la organización interna del microcontrolador de 8 bits,
ellos se agrupan, de manera similar a los registros, en cinco
puertos denotados con A, B, C, D y E. Todos ellos tienen las
siguientes características en común: Por las razones prácticas,
muchos pines de E/S son multifuncionales. Si un pin realiza una
de estas funciones, puede ser utilizado como pin de E/S de
propósito general.
Cada puerto tiene su propio registro de control de flujo, o sea el
registro TRIS correspondiente: TRISA, TRISB, TRISC etc. lo que
determina el comportamiento de bits del puerto, pero no
determina su contenido.
Al poner a cero un bit del registro TRIS (pin=0), el pin
correspondiente del puerto se configurará como una salida. De
manera similar, al poner a uno un bit del registro TRIS (bit=1), el
pin correspondiente del puerto se configurará como una entrada.
Esta regla es fácil de recordar: 0 = Entrada 1 = Salida.
ARQUITECTURA DE LOS
PUERTOS DE I/O
PIC 16F84A
Los microprocesadores PIC16F84 tienen 2 puertos de
entrada/salida paralelos de usos generales denominados Puerto
A y Puerto B.
El Puerto A es de 4 bits y el Puerto B es de 8 bits.
En ellos podremos conectar los periféricos o circuitos necesarios
como por ejemplo los módulos LCD, motores eléctricos, etc; pero
estas conexiones no se podrán realizar arbitrariamente. Existen
unas reglas básicas que deberán cumplirse para que el
microcontrolador no sufra daños o se destruya. Para ello es
necesario conocer los limites de corriente que puede manejar el
microcontrolador.
Estructura básica de
un puerto de I/O
LIMITE DE CORRIENTE PARA
LOS PUERTOS “A” Y “B”
Los puertos “A” y “B” del microcontrolador podrán ser
programados como entradas y salidas indiferentemente. Para el
caso de que sean programados como salida se denominan
“Modo Fuente” por que suministran corriente y cuando son
programados como entrada se denominan “Modo Sumidero” por
que reciben corriente.
La máxima corriente que puede suministrar una línea programada
como salida es de 20 mA, pero si utilizamos toda las líneas del
puerto “A” programadas como salida, no deberá exceder de
50mA para todo el puerto “A”. Para el caso del puerto “B” no
deberá exceder de 100 mA.
Si las programamos como entradas (Sumidero), la corriente
máxima que puede manejar una sola línea es de 25 mA. Para el
caso del puerto “A” programado con todas sus líneas como
entrada, la máxima es de 80 mA. En el caso del puerto “B” es de
150 mA.
En caso de querer utilizar periféricos que manejen mayor
cantidad de corriente de la especificada, habrá que aplicar un
circuito acoplador como por ejemplo los buffers, transistores que
se encarguen de controlar la corriente, etc.
IDENTIFICACIÓN DE LOS PINES UTILIZADOS PARA LOS PUERTOS
DE ENTRADA Y SALIDA

En la imagen siguiente se podrá observar claramente que el


microcontrolador tiene dos puertos denominados “A” y “B”. El puerto
“A” tiene 5 líneas disponibles (RA0, RA1, RA2, RA3, RA4) y el puerto
“B” tiene 8 líneas disponibles (RB0, RB1, RB2, RB3, RB4, RB5, RB6,
RB7). Estas son las líneas que estarán destinadas a comunicar el
microcontrolador con el mundo exterior, como por ejemplo motores,
diodos luminosos “Leds”, módulos LCD, teclados matriciales, etc.
También hay que hacer mención a que el Pin número 3 perteneciente
al puerto “A” (RA4) también tiene otra nomenclatura denominada
“TOCKI”, lo cual quiere decir que esta línea se puede programar como
entrada, salida y temporizador/contador.
CONFIGURACIÓN DE LOS
PUERTOS DE ENTRADA/SALIDA
Los bits de cada puerto se configuran mediante los bits
correspondientes de un registro de control asociado que recibe el
nombre de TRIS. En realidad cada puerto soporta dos registros:
1. El registro de datos, al que se denomina Puerto A o B (PortA o
PortB).
2. El registro de control TRISA o TRISB, con el que se programa el
sentido (Entrada o Salida) de las líneas de cada puerto.
Los Puertos A y B se corresponden con las posiciones 5 y 6 del área
de datos. Cada uno de sus bits puede programarse como una línea
de Entrada o de Salida, según se ponga un 1 ó un 0 en el bit del
registro de control TRIS correspondiente.
Un 1 en el bit “x” del registro TRISA pone en alta impedancia
(Entrada) la línea asociada “x” del Puerto A. Si en el bit “x” de
TRISA hubiese un 0, el contenido del biestable de datos
correspondiente del Puerto A pasaría a la patita de E/S externa.
Cualquier línea puede funcionar como Entrada o como Salida.
Sin embargo, si actúa como Entrada, la información que se
introduce desde el exterior no se memoriza o graba, pasa
simplemente por un dispositivo triestado por lo cual el valor de
dicha información debe mantenerse hasta que sea leída. La
lectura se realiza en “tiempo real”.
Cuando una patita de E/S funciona como salida, el bit que
proviene del bus de datos se guarda en el biestable del dato con
lo cual la información que ofrece esta patita permanece invariable
hasta que se reescriba otro bit.
PUERTO PORTA Y REGISTRO TRISA

El puerto PORTA es un puerto bidireccional, de 8 bits de anchura.


Los bits de los registros TRISA y ANSEL controlan los pines del
PORTA. Todos los pines del PORTA se comportan como
entradas/salidas digitales. Cinco de ellos pueden ser entradas
analógicas (denotadas por AN):
RA0 = AN0 (determinado por el bit ANS0 del registro ANSEL)
RA1 = AN1 (determinado por el bit ANS1 del registro ANSEL)
RA2 = AN2 (determinado por el bit ANS2 del registro ANSEL)
RA3 = AN3 (determinado por el bit ANS3 del registro ANSEL)
RA5 = AN4 (determinado por el bit ANS4 del registro ANSEL)
Similar a que los bits del registro TRISA determinan cuáles pines
serán configurados como entradas y cuáles serán configurados
como salidas, los bits apropiados del registro ANSEL determinan
si los pines serán configurados como entradas analógicas o
entradas/salidas digitales.
PUERTO PORTB Y REGISTRO TRISB

El puerto PORTB es un puerto bidireccional, de 8 bits de anchura.


Los bits del registro TRISB determinan la función de sus pines.

Vous aimerez peut-être aussi