Universidad Técnica Federico Santa María Departamento de Electrónica Seminario II1 Timers A - B. Usos y programación. Paola Rojas Pablo Naveas Carlos Silva.

Slides:



Advertisements
Presentaciones similares
Org. y Arquitectura del Computador
Advertisements

Equipo #3 Unidad III: ALU Efraín Corral Eduardo Castillo Elías Alarcón
Bases de la programación de un PLC
DISEÑO DE TRANSFERENCIA ENTRE REGISTROS
Tema 7: Análisis y diseño con registros
MICROCONTROLADORES NOCIONES BÁSICAS.
FAMILIA DE LÓGICA PROGRAMABLE EMBEBIDA ALTERA FLEX 10K.
Integrantes: Moyolehuani Tatéi Temai
MICROCONTROLADORES PIC
EQUIPO ·# 3 SISTEMAS OPERATIVOS
Computación PROGRAMACIÓN.
Rommel Chang Suárez Jefferson Moreno Briones
SERIE V CONTABILIDAD S I S T E M A S.
Introducción a los MCU´s de Motorola
Reloj de tiempo real (RTC)
Sistemas Digitales Curso 2007/2008 Departamento de Tecnología E l e c t r ó n i c a Periféricos E/S. VIA 65C22 Sistemas Digitales 2º curso Ingeniero Técnico.
Entrada / salida digital con ccs
ARQUITECTURA DE LOS MICROPROCESADORES DE 8 BITS
INTERRUPCIONES Y TEMPORIZADORES Programación en C para electrónica.
Operación de Micros e Interfaces
EXAMEN CORTO SOBRE FLIP-FLOPS
INTRODUCCIÓN AL DISEÑO SECUENCIAL: CONTADORES Y REGISTROS
EXAMEN CORTO SOBRE FLIP-FLOPS
José Estay A / jea I semestre académico 2014 Computadores (TU Sistemas Computacionales) Elementos de estructura de computadores.
TIMER 1 El módulo TIMER1 así como el TIMER0 es un temporizador/contador con las siguientes características. Trabaja con 16 bits (con 2 registros de 8 bits:TMR1H.
UNIDAD VI: CIRCUITOS LÓGICOS SECUENCIALES
MICROCONTROLADORES NOCIONES BÁSICAS. ¿QUÉ ES UN MICROCONTROLADOR? MICROCONTROLADOR = MICROPROCESADOR + MEMORIA + PERIFERICOS.
Integrantes: Christian Blanco Raúl Bejarano
UNIDAD VI: CIRCUITOS LÓGICOS SECUENCIALES
Funcionamiento de la CPU
Timer 3 Presentan: Fernando piñal moctezuma Tecilli tapia Tlatelpa BENEMÉRITA UNIVERSIDAD AUTÓNOMA DE PUEBLA FACULTAD DE CIENCIAS DE LA ELECTRÓNICA SISTEMAS.
MICROCONTROLADORES NOCIONES BÁSICAS COMPUTO II. ¿QUÉ ES UN MICROCONTROLADOR? MICROCONTROLADOR = MICROPROCESADOR + MEMORIA + PERIFERICOS.
I2C (Inter-Integrated Circuit) (Modo Maestro-Esclavo )
Microcomputadores Prof: Tatiana Marín R.. Lenguaje máquina = lenguaje binario InstrucciónLenguaje máquina (binario)OP ( hex)Nemónico Restar F0SUB.

Nombre: Cristian Achina Curso: 4to «A» Fecha:
Integrantes: Miriam Pastrana Brito376401ITE 5to semestre Víctor Manuel Rodríguez Bahena378087IMT 5to semestre Erendira Victoria Sánchez Montes de Oca ITE.
Memoria Principal Memoria de acceso aleatorio. La unidad de memoria y jerarquías de almacenamiento Unidades de Almacenamiento. La unidad de memoria es.
“Organización y Arquitectura de Computadores” William Stallings
Microcontrolador MPS430F149
Integración de entidades en VHDL
Teoría de Sistemas Operativos I/O
Comparador A Integrantes Álvaro Bravo Domingo Devotto Nelson Figueroa.
Circuitos Digitales.
Sesión 11: - Comparador, Captura y PWM. 2009/1 Circuitos Digitales III 2010/1 Circuitos Digitales III 2010/1 Circuitos Digitales III 2010/1 Sistemas Digitales.
Sesión 09: TIMER como base de tiempo.
Sesión 08: Interrupciones - IRQ. 2009/1 Circuitos Digitales III 2010/1 Circuitos Digitales III 2010/1 Circuitos Digitales III 2010/1 Sistemas Digitales.
Clase 14: Memoria EEPROM.
Sesión 07: Interrupciones. 2009/1 Circuitos Digitales III 2010/1 Circuitos Digitales III 2010/1 Circuitos Digitales III 2010/1 Sistemas Digitales II Universidad.
Teoría de Sistemas Operativos Sistema de I/O. 2 Introducción Una de las funciones principales del sistema operativo es el control de todos los dispositivos.
Rendimiento de la CPU y sus factores
1.1 Introducción A Los Sistemas Informáticos
NOCIONES BÁSICAS COMPUTO II
PROGRAMACIÓN ESTRUCTURADA LOS DIAGRAMAS DE ESTADO
INTERRUPCIONES – ABRAZO MORTAL
Programando puertos en C freescale
José Alvarado – Cristian Anzola
TIPOS DE SISTEMAS OPERATIVOS.  Que es un sistema operativo??  Es el encargado de brindar al usuario una forma amigable y sencilla de operar, interpretar,
Curso: Fundamentos de Computación
Programación de microcontroladores PIC16f877a en linux
 PRESENTADO POR : ANDRES MAYORGA DANIELA PAEZ VEGA.
Máquinas de estado con VHDL
El microprocesador y su arquitectura
Arquitectura de Computadores IIC 2342 Semestre Rubén Mitnik Pontificia Universidad Católica de Chile Escuela de Ingeniería Departamento de Ciencia.
Parte I Pines de E/S Interrupciones
Arquitectura de Computadores Clase 17 Tecnologías de Memorias IIC 2342 Semestre Rubén Mitnik Pontificia Universidad Católica de Chile Escuela de.
CAPITULO V Arquitectura de Von Neumann
Unidad de Control Ubicación: Es uno de los tres bloques funcionales principales en los que se divide una unidad central de procesamiento (CPU). Realizar.
SISTEMAS ELECTRÓNICOS 3ºGIERM1 1. Introducción 2. Tipos de datos 3. Estructuras típicas de programación 4. Manejo de bits Tema 7. Programación de microcontroladores.
Organización del Computador 1 Lógica Digital 2 Circuitos y memorias.
Transcripción de la presentación:

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario II1 Timers A - B. Usos y programación. Paola Rojas Pablo Naveas Carlos Silva Claudio Ramírez Christian Pelissier

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 2 ¿ Que es un Timer? Corresponde a un “contador” que está sincronizado con algún reloj (“clock”). Se encarga de cuantificar el tiempo. Introducción

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 3 Aplicaciones de tiempo real. Contador para ciertos eventos, dependiendo de la aplicación. Algunos permiten generar “avisos” a ciertos intervalos y/o eventos externos y con esto poder realizar alguna tarea necesaria. Usos de los Timers

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 4 Principales características destacadas en el  C MSP430F149: Timer/contador de 16 bit (máximo). Fuente de reloj seleccionable y configurable. Se puede pre-escalar el reloj (1, 2, 4 u 8) Registros configurables en captura/comparación. Salidas configurables con capacidad PWM. Registro de vector de interrupciones, para manejo de overflow y de Capt./Comp. Características de los timers A y B

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 5 Diferencias entre los Timers A y B El tamaño de cuenta del Timer B es programable a 8, 10, 12 o 16 bits. El Timer A es fijo de 16 bits. Timer B tiene 7 registros de Cap./comp. Mientras que Timer A sólo 3 registros. Los registros TBCCRx del Timer B tienen buffers dobles y pueden ser agrupados.

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 6 Diagrama de Bloques Timer A

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 7 Diagrama de Bloques Timer B

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 8 Registros de los Timers TBCTL, Registro de Control del Timer_B TBLGRPxCNTLxTBSSELx IdxMCxTBCLRTBIETBIFG TACTL, Registro de Control del Timer_A TASSELx IdxMCxTACLRTAIETAIFG

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 9 Registros de los Timers cont. TBCCTLx Registro de Control de Captura/Comparación CMxCCISxSCSCLLDxCAP OUTMODxCCIECCIOUTCOVCCIFG TACCTLx Registro de Control de Captura/Comparación CMxCCISxSCSSCCICAP OUTMODxCCIECCIOUTCOVCCIFG CLLDx

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 10 Registros de los Timers cont Timer_B Registro del Vector de Interrupción TBIVx Timer_A Registro del Vector de Interrupción TAIVx0

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 11 Otros Registros Registro de los valores de los Timers: TAR, TBR Registro de Captura/Comparación: TACCRx, TBCCRx

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 12 Programación: Pasos Configurar las puertas que se utilizarán (I/O o periféricos) Configurar la señal de reloj a utilizar (ACLK, TACLK…) Configuración del Timer (TxCTL, TxCCTLx) Modo de cuenta (Up/down, Up, Continuo) Habilitación de interrupciones Modo de comp/capt Modos de salida Si corresponde, programar rutinas de servicio de interrupciones

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 13 Ejemplos de programación Inicio de conteo usando Timer A. void InitTimer_A(void) { P1SEL = 0x80; P1DIR |= BIT7; //Salida Dallas habilitada // ACLK / 8, habilitar interrupciones. TACTL = ID1 | ID0 | TASSEL0 | TAIE; TACTL |= MC1; // modo continuo TACCTL2 = OUTMOD2 | OUTMOD1 | OUTMOD0 | CCIS0; // en este caso el Timer_A está en Reset/set TACCTL2 &= ~CAP; // modo de comparación TACCR0 = 0xAAAA; // config. Registros cap/comp para salida TACCR2 = 0x5555; }

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 14 Cont. Ejemplos Ejemplo de captura usando el timer B void InitTimer_B (void) { P4SEL |= BIT4; // se setea P4.4 como periférico (TB4) /* Config. Timer_B*/ TBCTL = ID1 | TBSSEL0 | TBIE; // cuenta a 16 bit /* captura en canto de bajada señal input, interrupción habilitada */ TBCCTL4 |= CM1 | CCIE; TBCCTL4 |= CAP; // modo de captura TBCTL |= MC1; // inicio timer en modo continuo _EINT(); // habilitación general int’s. }

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 15 Cont. Ejemplos Rutina de servicio de interrupciones #pragma vector=TIMERB1_VECTOR __interrupt void TCPClockHandler (void) { if (TBIV == 14) // check for timer overflow { LPM3_EXIT; } if (TBIV == 8) // check for input signal (P4.4 = B1) { TBCCTL4 &= ~COV; LPM3_EXIT; //capture = TBCCR4; } }

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 16 Restricciones del uso del Timer A

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 17 Restricciones del uso del Timer B Botones

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 18 Muchas Gracias por su atención. ¿CONSULTAS?

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 19 El reloj puede ser configurado a través del registro TACTL en los bits TASSELx. Seleccionándose una fuente interna o externa. TACLK que se encuentra configurado por defecto, es decir es configurado con los bits en TASSELx en 00. ACLK, que corresponde al reloj auxiliar configurable con los bits TASSELx en 01. SMCLK que es el sub-sistema del reloj maestro, se configura con los bits TASSELx en 10. El reloj externo, que se configura con los bits TASSELx en 11. La fuente de reloj puede ser pasada directamente al temporizador o dividida por 2, 4 ó 8, usando los bits Selección de fuente de reloj y divisor.

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 20 Tiene 4 modos de operación Se setean utilizando los bits de MCx Modos de operación

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 21 Up mode El timer cuenta repetitivamente hasta el valor indicado por el registro de comparación TACCR0 Cuando el valor del timer alcanza el valor de TACCR0, se empieza la cuenta nuevamente desde cero. Si el UP MODE es seleccionado cuando el valor del timer es mayor que TACCR0, el timer inmediatamente empieza la cuenta desde cero. El TACCR0 CCIFG flag de interrupción es activado cuando el valor del timer alcanza el valor de TACCR0. EL flag de interrupción TAIFG es activado cunado el timer cuenta desde TACCR0 a cero.

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 22 Modo continuo En este modo el timer cuenta repetitivamente hasta el valor de 0FFFFh y empieza nuevamente desde cero. El flag de interrupciones es activado cuando el time cuenta desde 0FFFFh a 0h

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 23 Modo Up/Down Es utilizado cuando se necesita obtener un pulso simetrico. El timer cuenta repetitivamente hasta un valor TACCR0 y luego decrementa su valor hasta cero. La direcion de conteo se encuentra latcheada. Lo que permite al timer se detenido y luego encendido, contando en la misma dirección que había quedado antes de ser detenido. Si el valor del bit TACLR es seteado se limpia la dirección en que se estaba contando además del valor del TAR y del TACLK divider.

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 24 Modo Up/Down En este modo el flag de interrupción TACCR0 CCIFG y el flag de interrupción TAIFG están activos solo una vez por periodo, separados por medio periodo del timer. TACCR0 CCIFG se activa cuando el timer cuenta TACCR0-1. TAIFG se activa cuando el timer cuenta cero.

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 25 Este modo se usa para registrar eventos temporales. Este modo se selecciona cuando CAP=1 en el registro de control TACCTLx. Las entradas de captura están conectadas a pines externos o señales internas que se seleccionan con los bits CCISx. Modo Captura

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 26 Modo Captura La captura de la señal puede ser asincrónica con respecto del timer del reloj y causa de una condición de carrera. Cuando la captura ocurre: El valor del temporizador es copiado en el registro TACCRx. El flag de interrupción CCIFG es seteado

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 27 Modo Comparación Este modo se usa para generar señales de salida PWM o interrupciones en un intervalo especifico. Este modo se selecciona cuando CAP=0 en el registro de control TACCTLx.

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 28 Modo Comparación Cuando el TAR cuenta hasta el valor almacenado en TACCRx: La interrupción del flag CCIFG es seteada. La señal interna EQUx = 1. EQUx afecta la salida según el modo de salida. La señal de entrada CCI es latcheada en SCCI.

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 29 Si TBR cuenta al valor de un TBCLx: Se activa el flag de interrupción CCFIG Señal interna EQUx=1 EQUx afecta la salida, de acuerdo al modo de salida Latch de comparación TBCLx TBCLx mantiene el valor a comparar con el valor del Timer. (TBCLx es “buffered “ por TBCCRx) El dato a comparar se escribe en cada TBCCRx y se transfiere automáticamente a TBCLx Cuando se activa la comparación, TBCCRx finaliza el control de usuario, i.e., no existe acceso directo a TBCLx Modo Comparación B

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 30 Eventos de Carga El momento de la transferencia lo selecciona el usuario con los bits de CLLDx El nuevo dato se transfiere de TBCCRx a TBCLx CLLDx Descripción 00inmediatamente al escribirse en TBCCRx 01cuando TBR cuenta a 0 10modo up y continuo: Cuando TBR cuenta a 0 modo up down: Cuando TBR cuenta al valor antiguo de TBCLx o a 0 11Cuando TBR cuenta al valor antiguo de TBCLx

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 31 Agrupación de Latch de comparación Pueden agruparse juntos para actualizaciones simultaneas de los bits de TBCLGRPx Condiciones para la carga grupal: Debe ocurrir el evento de carga Todos los registros TBCCRx del grupo deben actualizarse, incluso cuando cuando el valor nuevo es igual al antiguo

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 32 El evento de carga del grupo es definido por los bits CLLDx del menor de los latch de comparación TBCCRx del grupo, con excepción de TBCLGRP =3 Si CLLDx = 0 del TBCCRx que controla, los latch de comparación se actualizan automáticamente cuando su TBCCRx correspondiente es escrito, i.e., No están agrupados. Agrupación de Latch de comparación

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 33 Modos de Salida Cada bloque de captura/comparación contiene una unidad de salida para generar distintas señales. Cada señal de salida tiene ocho modos de operación. Estos modos se configuran con el registro de control TACCTLx con los bits OUTMODx. Output Set Toggle/Reset Set/Reset Toggle Reset Toggle/Set Reset/Set

Universidad Técnica Federico Santa María Departamento de Electrónica Seminario I 34 Ejemplos Unidad de Salida Modo UPModo continuo Modo Up/Down