GPIO PORT

11
GPIO PORT diferencias a la hora de configurar el 12fxxx conparandolas con el 16FxxxA. Las instrucciones TRISA y TRISB se sustituyen por TRISIO las instrucciones PORTA y PORTB se sustituyen por GPIO

Transcript of GPIO PORT

Page 1: GPIO PORT

GPIO PORT

diferencias a la hora de configurar el 12fxxx conparandolas con el 16FxxxA.

Las instrucciones TRISA y TRISB se sustituyen por TRISIO

las instrucciones PORTA y PORTB se sustituyen por GPIO

Page 2: GPIO PORT

Hay seis pines I/O de propósito general disponibles. Dependiendo de qué periféricos estén habilitados, puede que algunos o todos los pines no estén disponibles como I/O de propósito general. En general, cuando se habilita un periférico, el pin asociado no puede usarse como un pin I/O de propósito general. 

Page 3: GPIO PORT

GPIO AND THE TRISIO REGISTERS

GPIO es un puerto bidireccional de 6 bits. El correspondiente registro de dirección de datos es TRISIO. Configurar un bit TRISIO (= 1)

hará que el correspondiente GPIO sea una entrada (es decir, pondrá el controlador de salida correspondiente en un modo de alta impedancia). Configurar un bit TRISIO (= 0)

hará que el correspondiente GPIO sea una salida (es decir, pondrá el contenido del latch de salida en el pin seleccionado). La excepción es GP3, que sólo es de entrada y su bit TRISIO siempre se leerá como ‘ 1 ’.

Page 4: GPIO PORT

Leyendo el registro GPIO se lee el estado de los pines, del mismo modo que una acción de escritura escribirá en el latch de puerto. Todas las operaciones son 'read-modify-write' (lectura-modificación-escritura). Por lo tanto, una escritura en un puerto implica que se leen los pines de puerto, este valor es modificado y, a continuación, escrito en el latch del puerto de datos.GP3 se lee como un 0 cuando MCLREN = 1. El Registro TRISIO controla la dirección de los pines GP, incluso cuando se usan como entradas analógicas. El usuario debe asegurar que los bits en el registro TRISIO se mantengan activados al utilizarlos como entradas analógicas. Los pines I/O configurados como entradas analógicas siempre se leen como 0.

Page 5: GPIO PORT

ANSEL(9Fh) y CMCON(19h)

Nota: Los Registros ANSEL(9Fh) y CMCON(19h) se deben inicializar para configurar los canales analógicos como entradas digitales. Los pines configurados como entradas analógicas se leerán como 0.

Page 6: GPIO PORT

bit 7-6: Sin implementar. Leídos como 0bit 5-0: GPIO<5:0>: pines I/O de propósito general  1 = El pin del Puerto es >VIH  0 = El pin del Puerto es <VIL

Page 7: GPIO PORT

                                                                                      

bit 7-6: Sin implementar. Leídos como 0bit 5-0: TRISIO<5:0>: bits de Control I/O Tri-estado de propósito general  1 = pin GPIO configurado como una entrada (tri-estado)  0 = pin GPIO configurado como una salidaNote: TRISIO<3> siempre se lee como 1.

Page 8: GPIO PORT

FUNCIONES ADICIONALES DE LOS PINES DEL PIC

Cada pin GPIO en el PIC12F629/675 tiene una opción de interrupción-por-cambio de estado y cada pin GPIO, excepto GP3, tiene una opción 'weak pull-up' (resistencia pull-up interna).

WEAK PULL-UP

Cada uno de los pines GPIO, excepto GP3, tiene una opción 'weak pull-up' configurable individualmente. Los bits de control WPUx habilitan o deshabilitan cada una de las pull-up. Consulta el registro 3-3. Cada pull-upl se desactiva automáticamente cuando el pin de puerto está configurado como una salida. Los pull-ups están deshabilitados en un Power-on Reset por el bit /GPPU (Registro OPTION_REG).

Page 9: GPIO PORT

BREVE DESCRIPCIÓN DE LOS PINES DEL PIC

Cada pin GPIO está multiplexado con otras funciones. Los pines y sus funciones combinadas se describen de una manera resumida a continuación. Información específica sobre funciones tales como Comparadores o Convertidor A/D se tratarán posteriormente en otras secciones.

GP0/AN0/CIN+GP0 se puede configurar para una de las siguientes funciones:- I/O de propósito general- Entrada analógica del módulo A/D (PIC12F675 solamente)- Entrada del módulo Comparador

GP1/AN1/CIN-/VREFGP1 se puede configurar para una de las siguientes funciones:- I/O de propósito general- Entrada analógica del módulo A/D (PIC12F675 solamente)- Entrada del módulo Comparador- Entrada de referencia de voltaje para el módulo A/D (PIC12F675 solamente)

Page 10: GPIO PORT

GP2/AN2/T0CKI/INT/COUTGP2 se puede configurar para una de las siguientes funciones:- I/O de propósito general- Entrada analógica del módulo A/D (PIC12F675 solamente)- Entrada de reloj para TMR0- Una Interrupción externa 'edge triggered' (disparo por flanco)- Salida digital del módulo Comparador

GP3/MCLR/VPPGP3 se puede configurar para una de las siguientes funciones:- Entrada de propósito general- Como Master Clear Reset- Alimentación para programación del PIC - Vpp

GP4/AN3/T1G/OSC2/CLKOUTGP4 se puede configurar para una de las siguientes funciones:- I/O de propósito general- Entrada analógica del módulo A/D (PIC12F675 solamente)- Entrada TMR1 (gate input)- Conexión de cristal/resonador- Salida de reloj

Page 11: GPIO PORT

GP5/T1CKI/OSC1/CLKINGP5 se puede configurar para una de las siguientes funciones:- I/O de propósito general- Entrada de reloj TMR1- Conexión de cristal/resonador- Entrada de reloj

Consultar desde la figura 3-1 hasta la 3-5 (páginas 22..24) del datasheet para ver los diagramas de conexionado de los pines.