Las puertas de entrada/salida

Một phần của tài liệu Microcontroladores PIC diseno practico de aplicaciones segunda parte PIC16F87X PIC18FXXX 2 ed jose angulo (Trang 296 - 303)

Dependiendo del dispositivo seleccionado dentro de la familia PIC18Fxx20, se puede disponer de hasta nueve puertas de entrada/salida para los dispositivos de 80 patitas y siete para los de 64.

Todas estas líneas están multiplexadas, es decir, pueden realizar una función u otra según se con- figuren en el programa. Cada puerta tiene tres registros que comienzan por TRIS, PORT y LAT, y les sigue la letra que identifica a la puerta: A, B, C, D, E, F, G, H, J.

281

Periféricos y

recursos específicos

16

TRIS: Para la configuración de las patitas como entrada/salida.

PORT: Para almacenar los niveles lógicos de las patitas.

LAT: Para inhibir la salida de los niveles.

En la Figura 16.1 se muestra un modelo simplificado de una puerta de entrada/salida sin las unio- nes con otros periféricos.

Como ya ocurriera con sus antecesores, la configuración de las puertas se realiza poniendo ‘0’ o

‘1’ en cada una de las posiciones del registro TRIS correspondiente: ‘0’ para configurar esa patita como salida y ‘1’ para configurarla como entrada. Si es entrada el valor que se encuentre en esa pa- tita pasará a PORT y si es salida ocurrirá al contrario. Los registros LAT sirven para inhibir la sali- da de los niveles lógicos.

16.1.1. La Puerta A

Esta puerta tiene 7 líneas. Todas ellas pueden ser entrada/salida digital configurando el registro AD- CON1 de manera adecuada. Además, cinco de ellas pueden ser entradas al conversor analógico/di- gital. RA2-RA3 pueden servir también como entradas de referencia a dicho conversor. La segunda función de RA4 es la de entrada de pulsos para el TMR0. RA5 podrá cumplir además la función de detección de voltaje bajo, o ser patita de entrada para la selección de esclavo en la comunicación serie síncrona. Por último, RA6 podrá funcionar como línea de reloj. La explicación detallada de

todas estas funciones se presenta en la tabla de la Figura 16.2. En la Figura 16.3 se muestran los re- gistros asociados para la configuración de todas estas funciones.

NOMBRE LÍNEA DESCRIPCIÓN

RA0/AN0 Entrada/salida digital o entrada analógica RA1/AN1 Entrada/salida digital o entrada analógica

RA2/AN2/VREF- Entrada/salida digital, entrada analógica o tensión de referencia negativa RA3/AN3/VREF+ Entrada/salida digital, entrada analógica o tensión de referencia positiva

RA4/T0CKI Entrada/salida digital o entrada externa de reloj para el TMR0. La salida es de colector abierto RA5/AN4/LVDIN Entrada/salida digital, selección de esclavo en MSSP, entrada analógica o detección de voltaje bajo OSC2/CLKO/RA6 Entrada/salida digital, salida de reloj o patita 2 del oscilador

NOMBRE BIT 7 BIT 6 BIT 5 BIT 4 BIT 3 BIT 2 BIT 1 BIT 0 VALOR EN POR, BOR

PORTA — Registro de datos de la puerta A -x0x 0000

LATA — Registro cerrojo de la Puerta A -xx xxxx

TRISA — Registro de configuración de la Puerta A -111 1111

ADCON1 — — VCFG1 VCFG0 PCFG3 PCFG2 PCFG1 PCFG0 --00 0000

Figura 16.1. Modelo simplificado de puerta de entrada/salida.

Figura 16.2.Funciones de las líneas de la Puerta A.

Figura 16.3. Resumen de los bits de los registros que se utilizan en el manejo y programación de la Puerta A.

16.1.2. La Puerta B

Esta puerta tiene 8 líneas con resistencias de Pull-upinternas que se pueden habilitar con el bit RB- PU#. Todas ellas pueden ser entrada/salida digital. Conserva además las ya conocidas funciones de

servir de interrupción externa por flanco (RB0), aunque hay cuatro interrupciones externas (RB0 a RB3) en lugar de una. También se mantiene la interrupción por cambio de nivel (RB4-RB7). Las tres patitas para la programación serie en circuito (ICSPTM) están implementadas en esta puerta. Por último, una de las patitas sirve de entrada/salida para el módulo CCP2. Las Figuras 16.4 y 16.5 re- sumen las funciones y los registros que intervienen en el funcionamiento de la Puerta B.

NOMBRE LÍNEA DESCRIPCIÓN

RB0/INT0 Entrada/salida digital o entrada de interrupción externa 0 RB1/INT1 Entrada/salida digital o entrada de interrupción externa 1 RB2/INT2 Entrada/salida digital o entrada de interrupción externa 2

RB3/INT3/CCP2 Entrada/salida digital, entrada de interrupción externa 3 o entrada/salida de módulo CCP2 RB4/KBI0 Entrada/salida digital con interrupción por cambio

RB5/KBI1/PGM Entrada/salida digital con interrupción por cambio o habilitador de grabación en bajo voltaje ICSP RB6/KBI2/PGC Entrada/salida digital con interrupción por cambio o reloj para programación serie

RB7/KBI3/PGD Entrada/salida digital con interrupción por cambio o datos para programación serie

Figura 16.4. Funciones de las líneas de la Puerta B.

16.1.3. La Puerta C

Esta puerta tiene 8 líneas. Además de actuar como entradas/salidas digitales guardan relación con los módulos CCP, las comunicaciones del USART1 y del módulo MSSP, y el oscilador y entrada de pulsos del TMR1 y TMR1/TMR3. El funcionamiento con estos periféricos puede variar el valor asignado a las líneas de TRISC. Las Figuras 16.6 y 16.7 resumen las funciones y los registros que intervienen en el funcionamiento de la Puerta C.

NOMBRE BIT 7 BIT 6 BIT 5 BIT 4 BIT 3 BIT 2 BIT 1 BIT 0 VALOR EN POR, BOR

PORTB Registro de datos de la puerta B xxxx xxxx

LATB Registro cerrojo de la Puerta B xxxx xxxx

TRISB Registro de configuración de la Puerta B 1111 1111

INTCON GIE/GIEH PEIE/GIEL INT0IE INT0IE RBIE TMR0IF INT0IF RBIF 0000 0000 INTCON2 RBPU INTEDG0 INTEDG1 INTEDG2 INTEDG3 TMR0IP INT3IP RBIP 1111 1111 INTCON3 INT2IP INT1IP INT3IP INT2IE INT1IE INT3IF INT2IF INT1IF 1100 0000

Figura 16.5. Resumen de los bits de los registros que se utilizan en el manejo y programación de la Puerta B.

Figura 16.6. Funciones de las líneas de la Puerta C.

NOMBRE LÍNEA DESCRIPCIÓN

RC0/T1OSO/T13CKI Entrada/salida digital, salida de oscilador del TMR1 o entrada de reloj de TMR1/TMR3 RC1/T1OSI/CCP2 Entrada/salida digital, entrada de oscilador del TMR1 o entrada/salida de módulo CCP2 RC2/CCP1 Entrada/salida digital o entrada/salida de módulo CCP1

RC3/SCK/SCL Entrada/salida digital o reloj para los modos SPI e I2C RC4/SDI/SDA Entrada/salida digital o línea de datos para los modos SPI e I2C RC5/SDO Entrada/salida digital o línea de datos para el modo SPI

RC6/TX1/CK1 Entrada/salida digital, o línea de transmisión asíncrona de datos o de reloj del USART1

RC7/RX1/DT1 Entrada/salida digital, o línea de recepción asíncrona de datos o línea síncrona de datos del USART1

16.1.4. La Puerta D

Esta puerta tiene 8 líneas. Mantienen la función de entrada/salida digital y si se usa el puerto para- lelo se utiliza como el puerto de datos. Todas sus líneas pueden configurarse además como bits del bus de dirección/dato. Las Figuras 16.8 y 16.9 resumen las funciones y los registros que intervienen en el funcionamiento de la Puerta D.

NOMBRE BIT 7 BIT 6 BIT 5 BIT 4 BIT 3 BIT 2 BIT 1 BIT 0 VALOR EN POR, BOR

PORTC Registro de datos de la puerta C xxxx xxxx

LATC Registro cerrojo de la Puerta C xxxx xxxx

TRISC Registro de configuración de la Puerta C 1111 1111

Figura 16.7. Resumen de los bits de los registros que se utilizan en el manejo y programación de la Puerta C.

Figura 16.8. Funciones de las líneas de la Puerta D.

NOMBRE LÍNEA DESCRIPCIÓN

RD0/PSP0/AD0 Entrada/salida digital, bit 0 del puerto paralelo o bit 0 del bus de datos/direcciones RD1/PSP1/AD1 Entrada/salida digital, bit 1 del puerto paralelo o bit 1 del bus de datos/direcciones RD2/PSP2/AD2 Entrada/salida digital, bit 2 del puerto paralelo o bit 2 del bus de datos/direcciones RD3/PSP3/AD3 Entrada/salida digital, bit 3 del puerto paralelo o bit 3 del bus de datos/direcciones RD4/PSP4/AD4 Entrada/salida digital, bit 4 del puerto paralelo o bit 4 del bus de datos/direcciones RD5/PSP5/AD5 Entrada/salida digital, bit 5 del puerto paralelo o bit 5 del bus de datos/direcciones RD6/PSP6/AD6 Entrada/salida digital, bit 6 del puerto paralelo o bit 6 del bus de datos/direcciones RD7/PSP7/AD7 Entrada/salida digital, bit 7 del puerto paralelo o bit 7 del bus de datos/direcciones

16.1.5. La Puerta E

Esta puerta tiene 8 líneas. Junto con la función de entrada/salida digital, se encuentran las de servir de líneas de control en la comunicación paralela o ser bits de dirección/dato. RE7 funciona además con el módulo CCP2. Las Figuras 16.10 y 16.11 resumen las funciones y los registros que intervie- nen en el funcionamiento de la Puerta E.

NOMBRE BIT 7 BIT 6 BIT 5 BIT 4 BIT 3 BIT 2 BIT 1 BIT 0 VALOR EN POR, BOR

PORTD Registro de datos de la puerta D xxxx xxxx

LATD Registro cerrojo de la Puerta D xxxx xxxx

TRISD Registro de configuración de la Puerta D 1111 1111

PSPCON IBF OBF IBOV PSPMODE — — — — 0000 ----

MEMCON EBDIS — WAIT1 WAIT0 — — WM1 WM0 0-00 --00

Figura 16.9. Resumen de los bits de los registros que se utilizan en el manejo y programación de la Puerta D.

16.1.6. La Puerta F

Consta de 8 líneas. Además de entrada/salida digital, siete de sus líneas pueden ser entradas analó- gicas para el conversor y la octava servir para la selección de esclavo cuando se trabaja con el mó- dulo MSSP. De esas siete, seis guardan relación con el comparador pues actúan como entrada, sali- da o tensión de referencia de éste. Si se quieren utilizar como líneas normales el comparador deberá estar deshabilitado. Las Figuras 16.12 y 16.13 resumen las funciones y los registros que intervienen en el funcionamiento de la Puerta F.

Figura 16.10.Funciones de las líneas de la Puerta E.

NOMBRE LÍNEA DESCRIPCIÓN

RE0/RD#/AD8 Entrada/salida digital, línea de control de lectura del Puerto Paralelo Esclavo o bit 8 del bus de datos/direcciones RE1/WR#/AD9 Entrada/salida digital, línea de control de escritura del Puerto Paralelo Esclavo o bit 9 del bus de datos/direcciones RE2/RD#/AD10 Entrada/salida digital, línea de control de selección del Puerto Paralelo Esclavo o bit 10 del bus de datos/direcciones RE3/AD11 Entrada/salida digital o bit 11 del bus de datos/direcciones

RE4/AD12 Entrada/salida digital o bit 12 del bus de datos/direcciones RE5/AD13 Entrada/salida digital o bit 13 del bus de datos/direcciones RE6/AD14 Entrada/salida digital o bit 14 del bus de datos/direcciones

RE7/CCP2/AD15 Entrada/salida digital, entrada/salida de módulo CCP2 o bit 15 del bus de datos/direcciones

NOMBRE BIT 7 BIT 6 BIT 5 BIT 4 BIT 3 BIT 2 BIT 1 BIT 0 VALOR EN POR, BOR

TRISE Registro de configuración de la Puerta E 1111 1111

PORTE Registro de datos de la puerta E xxxx xxxx

LATE Registro cerrojo de la Puerta E xxxx xxxx

PSPCON IBF OBF IBOV PSPMODE — — — — 0000 ----

MEMCON EBDIS — WAIT1 WAIT0 — — WM1 WM0 0-00 --00

Figura 16.11.Resumen de los bits de los registros que se utilizan en el manejo y programación de la Puerta E.

Figura 16.12.Funciones de las líneas de la Puerta F.

NOMBRE LÍNEA DESCRIPCIÓN

RF0/AN5 Entrada/salida digital o entrada analógica

RF1/AN6/C2OUT Entrada/salida digital, entrada analógica o salida 2 del comparador RF2/AN7/C1OUT Entrada/salida digital, entrada analógica o salida 1 del comparador RF3/AN8 Entrada/salida digital, entrada analógica o entrada al comparador RF4/AN9 Entrada/salida digital, entrada analógica o entrada al comparador

RF5/AN10/CVREF Entrada/salida digital, entrada analógica, entrada al comparador o salida de referencia del comparador RF6/AN11 Entrada/salida digital, entrada analógica o entrada al comparador

RF7/SS# Entrada/salida digital o patita de selección de esclavo en módulo MSSP

16.1.7. La Puerta G

Esta puerta tiene 5 líneas. Cada una tiene dos funciones: entrada/salida digital y ser entrada/salida de uno de los módulos CCP o participar en la comunicación del USART2. Las Figuras 16.14 y 16.15 resumen las funciones y los registros que intervienen en el funcionamiento de la Puerta G.

NOMBRE BIT 7 BIT 6 BIT 5 BIT 4 BIT 3 BIT 2 BIT 1 BIT 0 VALOR EN POR, BOR

TRISF Registro de configuración de la Puerta F 1111 1111

PORTF Registro de datos de la puerta F xxxx xxxx

LATF Registro cerrojo de la Puerta F xxxx xxxx

ADCON1 — — VCFG1 VCFG0 PCFG3 PCFG2 PCFG1 PCFG0 --00 0000

CVRCON CVREN CVROE CVRR CVRSS CVR3 CVR2 CVR1 CVR0 0000 0000

CMCON C2OUT C1OUT C2INV C1INV CIS CM2 CM1 CM0 0000 0000

Figura 16.13.Resumen de los bits de los registros que se utilizan en el manejo y programación de la Puerta F.

Figura 16.14.Funciones de las líneas de la Puerta G.

NOMBRE LÍNEA DESCRIPCIÓN

RG0/CCP3 Entrada/salida digital o entrada/salida de módulo CCP3

RG1/TX2/CK2 Entrada/salida digital, o línea de transmisión asíncrona de datos o de reloj del USART2

RG2/RX2/DT2 Entrada/salida digital, o línea de recepción asíncrona de datos o línea síncrona de datos del USART2 RG3/CCP4 Entrada/salida digital o entrada/salida de módulo CCP4

RG4/CCP5 Entrada/salida digital o entrada/salida de módulo CCP5

16.1.8 La Puerta H

Tiene 8 líneas. Además de funcionar cómo entrada/salida digital, cuatro de ellas pueden ser entra- das analógicas y las otras cuatro, bits de dirección para el interfaz de memoria externa. Las Figu- ras 16.16 y 16.17 resumen las funciones y los registros que intervienen en el funcionamiento de la Puerta H.

NOMBRE BIT 7 BIT 6 BIT 5 BIT 4 BIT 3 BIT 2 BIT 1 BIT 0 VALOR EN POR, BOR

PORTG — — — Registro de datos de la puerta G ---x xxxx

TRISG — — — Registro de configuración de la Puerta G ---1 1111

LATG — — — Registro cerrojo de la Puerta G ---x xxxx

Figura 16.15.Resumen de los bits de los registros que se utilizan en el manejo y programación de la Puerta G.

16.1.9. La Puerta J

Dispone de 8 líneas que se dedican a ser entrada/salida digital o a participar en el control del inter- faz de memoria externa. Las Figuras 16.18 y 16.19 resumen las funciones y los registros que inter- vienen en el funcionamiento de la Puerta J.

NOMBRE BIT 7 BIT 6 BIT 5 BIT 4 BIT 3 BIT 2 BIT 1 BIT 0 VALOR EN POR, BOR

TRISH Registro de configuración de la Puerta H 1111 1111

PORTH Registro de datos de la puerta H xxxx xxxx

LATH Registro cerrojo de la Puerta H xxxx xxxx

ADCON1 — — VCFG1 VCFG0 PCFG3 PCFG2 PCFG1 PCFG0 --00 0000

MEMCON EBDIS — WAIT1 WAIT0 — — WM1 WM0 0-00 --00

NOMBRE PATITA DESCRIPCIÓN

RH0/A16 Entrada/salida digital o bit 16 de dirección para interfaz de memoria externa RH1/A17 Entrada/salida digital o bit 17 de dirección para interfaz de memoria externa RH2/A18 Entrada/salida digital o bit 18 de dirección para interfaz de memoria externa RH3/A19 Entrada/salida digital o bit 19 de dirección para interfaz de memoria externa RH4/AN12 Entrada/salida digital o entrada analógica

RH5/AN13 Entrada/salida digital o entrada analógica RH6/AN14 Entrada/salida digital o entrada analógica RH7/AN15 Entrada/salida digital o entrada analógica

Figura 16.16.Funciones de las líneas de la Puerta H.

Figura 16.17.Resumen de los bits de los registros que se utilizan en el manejo y programación de la Puerta H.

Figura 16.18.Funciones de las líneas de la Puerta J.

NOMBRE PATITA DESCRIPCIÓN

RJ0/ALE Entrada/salida digital o control de habilitación de dirección para interfaz de memoria externa RJ1/OE Entrada/salida digital o control de habilitación de salida para interfaz de memoria externa RJ2/WRL Entrada/salida digital o control de escritura del byte bajo para interfaz de memoria externa RJ3/WRH Entrada/salida digital o control de escritura del byte alto para interfaz de memoria externa RJ4/BA0 Entrada/salida digital o control de byte de dirección 0 para interfaz de memoria externa RJ5/CE Entrada/salida digital o control de selección de dispositivo para interfaz de memoria externa RJ6/LB Entrada/salida digital o control de selección de byte inferior para interfaz de memoria externa RJ7/UB Entrada/salida digital o control de selección de byte superior para interfaz de memoria externa

Figura 16.19.Resumen de los bits de los registros que se utilizan en el manejo y programación de la Puerta J.

NOMBRE BIT 7 BIT 6 BIT 5 BIT 4 BIT 3 BIT 2 BIT 1 BIT 0 VALOR EN POR, BOR

PORTJ Registro de datos de la puerta J xxxx xxxx

LATJ Registro cerrojo de la Puerta J xxxx xxxx

TRISJ Registro de configuración de la Puerta J 1111 1111

Một phần của tài liệu Microcontroladores PIC diseno practico de aplicaciones segunda parte PIC16F87X PIC18FXXX 2 ed jose angulo (Trang 296 - 303)

Tải bản đầy đủ (PDF)

(394 trang)