Microprocesadores, Tema 5: Puertos y Temporizadores Guillermo Carpintero Marta Ruiz Universidad Carlos III de Madrid Objetivos Identificar los diferentes puertos y sus características especiales Aspectos básicos de los temporizadores Modos de funcionamiento de un temporizador: Aplicaciones. Gestión de Interrupciones Figura del “PIC18F2525/2620/4525/4620 Data Sheet” Con permiso de MICROCHIP Puertos de E/S, Características Generales Esquemático LATx Data Latch register. Read-modify-write operations on LATB TRISx 0 – Output 1 – Input Puertos de E/S, PORTA PORTA es un puerto bidireccional de 8-bit. Registros PORTA F80h LATA F89h TRISA F92h Funciones Características Conversor AD RA0 AN0 RA1 AN1 RA2 AN2/VREF- RA3 AN3/VREF+ Oscilador RA4 RA5 Temporizador T0CKI/C1OUT AN4 SS/HLVDIN/C2OUT RA6 OSC2/CLKO RA7 OSC1/CLKI ADCON1 Puertos de E/S, PORTB PORTB es un puerto bidireccional de 8-bit. pull-up internos en todos los pines cuando RBPU (INTCON2<7>)=0 Registros PORTB F81h LATB F8Ah TRISB F93h Funciones Características Conversor AD External Interrupt RB0 AN12 INT0 RB1 AN10 INT1 RB2 AN8 INT2 RB3 AN9 RB4 AN11 Interrupt-onchange ICSP Temporizador CCP2 KBI0 RB5 KBI1 PGM RB6 KBI2 PGC RB7 KBI3 PGD Puertos de E/S, PORTB External Interrupt INTxIE INTx Edge Detect INTxIF INTxIP INTEDGx Interrupt-on-change KBIx RBIE ≠ RBIF RBIP Último valor leído en puerto Flag se borra leyendo el PUERTOB Temporizadores , Introducción Principio de Funcionamiento Usan un contador para contar ciclos de reloj del sistema FFFF Tosc 16-bit 0000 TE Temporizador Upcount Basado en un contador ascendente. A partir de un valor inicial, cuando pasa de FFFF a 0000, genera una Int. FFFF 0000 FFFF - N Downcount Basado en un contador descendente. A partir de un valor inicial, cuando pasa de FFFF a 0000, genera una Int. Temporizadores , Modos de Funcionamiento ¿ Para qué sirve un Temporizador ? Permiten al micro medir el paso del tiempo. Diferentes modos de operación Temporizador CCP - Contador CCP – Comparador CCP - PWM Modo Temporizador Generación de Intervalos de tiempo ¿Cómo se mide el tiempo con estas unidades para generar un intervalo de tiempo deseado? Unidad Gruesa: Tiempo de Overflow Unidad fina: Tiempo unidad Tov Tu Tiempo arbitrario a generar Medida del intervalo 1 2 3 4 Valor inicial del contador T = M Tov + N Tu 5 Figura del “PIC18F2525/2620/4525/4620 Data Sheet” Con permiso de MICROCHIP Temporizadores del PIC – TIMER 0 Timer0 module incorporates the following features: • Software selectable operation as a timer or counter in both 8-bit or 16-bit • Selectable clock source (internal or external) • Readable and writable registers • Dedicated 8-bit, software programmable prescaler • Edge select for external Figura del “PIC18F2525/2620/4525/4620 Data Sheet” Con permiso de MICROCHIP Temporizador