Escolar Documentos
Profissional Documentos
Cultura Documentos
SISTEMAS MICROCONTROLADOS
SISTEMAS MICROCONTROLADOS
Captulo 7
Puertos I/O
128
7.3 Puerto A.
Son puertos de E/S de hasta 6 pines (en funcin del modelo) RA0:RA5. Las patillas RA0, RA3 y RA5 pueden actuar como E/S digital compatibles con niveles TTL y CMOS, o como canales de entrada para el Convertidor A/D, en caso de que ste exista. Tambin se puede tener dependiendo del modelo RA6 y RA7 compartiendo pin con el oscilador externo.
La patilla RA4 est configurada en drenado abierto, por lo que es necesario cargarlo en el exterior. A la entrada tiene un buffer de tipo Trigger de Schmitt para inmunizarlo del ruido. Esta patilla puede funcionar tambin como E/S digital y adems como entrada del reloj externo para el TMR0 cuando este acta como contador.
129
7.4 Puerto B.
El puerto B (figura 7.3) est formada por ocho pines de E/S configurables a travs del registro TRISB. Todas ellas disponen de una carga activa interna (carga pull-up) implementada con un CMOS, habilitada siempre que est actuando como entrada y el bit RBPU del registro OPTION est a 0. Se desconecta siempre que el pin trabaje como salida o con un Power-
130
on Reset, adems en el registro WPUB podemos seleccionar la pull up para cada pin del puerto.
A travs de RB0/INT: Mediante un flanco de bajada o de subida, segn como se haya configurado en el bit INTEDG (OPTION<6>). El bit para su habilitacin es el RBIE (INTCON <3>) y el flag asociado RBIF (INTVON<0>). A travs de los pines RB7:RB4. En este caso cada vez que hay un cambio de nivel se producir la interrupcin, siempre que est habilitada mediante el bit INTE (INTCON<4>). El flag asociado es INTF (INTCON<1>). La forma de borrar este bit, adems de forzndolo a 0, es realizando una lectura del PORTB. Mediante este tipo de interrupcin se pueden tener distintas fuentes externas que la produzcan, utilizando un pin distinto para cada una de ellas.
131
7.5 Puerto C.
El puerto C (figura 7.5) es una puerta de E/S bidireccional de 8 bits configurable a travs del registro TRISC. Este puerto cuando funciona como entrada tiene en ella un Trigger de Schmitt. Adems todos los pines tienen multiplexados la salida y/o la entrada para actuar con los perifricos.
132
En la figura se puede ver un multiplexor para cuando acta como salida. Estos perifricos dependern del modelo que se est usando, por lo que habr que consultar las hojas de caractersticas. Al usar estos perifricos hay que configurar de forma correcta el registro TRISC, segn el perifrico necesite un pin de salida o entrada.
El PORTC tiene sus pines multiplexados con distintos mdulos perifricos. Por ejemplo para el PIC16C74 los mdulos perifricos con los que funciona el PORTC son: RC0/T1OSO/T1CKI: E/S digital. Salida para el oscilador del TMR1. Entrada de reloj para el TMR1. RC1/T1OSI/CCP2: E/S digital. Entrada para el oscilador del TMR1. E/S del mdulo CCP2.
2
RC3/SKC/SCL: E/S digital. Reloj serie sncrono para mdulos SPI e I C. RC4/SDI/SDA: E/S digital. Entrada de datos para el modo SPI. E/S serie para el
modo I C. RC5/SDO: E/S digital. Salida de datos serie para el modo SPI.
RC6/TX/CK: E/S digital. Lnea de transmisin asncrona de la USART. Entrada del reloj sncrono para la USART.
133
RC7/RX/DT: E/S digital. Lnea de recepcin asncrona para la USART. Lnea de datos sncronos de la USART. REGISTROS ASOCIADOS AL PUERTO C]
7.6 Puerto D.
El puerto D est formada por ocho pines de E/S digitales configurables a travs del TRISD. REGISTROS ASOCIADOS AL PUERTO D
7.7 Puerto E. Es un puerto de E/S digital de hasta cuatro bits. Adems puede actuar como entrada analgica para el convertidor A/D. REGISTROS ASOCIADOS AL PUERTO E
7.8 Puertos F y G.
Los puertos F y G estn formados por ocho pines, los cuales funcionan slo como entradas.
134
Cada pin est multiplexado con un controlador para los mdulos de LCD. A la entrada, estos pines tienen un buffer del tipo Trigger de Schmitt (figura 7.6).
Figura 7.6 Diagrama de bloque de los pines del PORTF LCD y PORTG LCD.
135
Algunos pines pueden tener funciones alternadas. En este caso la lectura de estos pines del puerto ser 0. Los pines pueden ser configuradas con cargas Pull-up y con generacin de interrupcin por cambio de nivel. Estas interrupciones se habilitan con el bit INTCON<3>. Si se selecciona un oscilador externo en la palabra de configuracin del dispositivo, los pines GP4 y GP5, dejan de funcionar como pines E/S, y lo hacen como entradas para el oscilador.
136
Este ejemplo muestra la escritura del puerto B seguido de su lectura. De aqu vemos que el tiempo para la estabilizacin de la tensin de salida es de un ciclo de reloj, por lo que altas frecuencias de reloj estas operaciones de lectura despus de las de escritura pueden resultar problemticas. Un ejemplo de esto se puede ver en la figura 7.9.
137