TEMPORIZADORES Y CONTADORES (T/C) (Timers/Counters)

Tamaño: px
Comenzar la demostración a partir de la página:

Download "TEMPORIZADORES Y CONTADORES (T/C) (Timers/Counters)"

Transcripción

1 TEMPORIZADORES Y CONTADORES (T/C) (Timers/Counters)

2 Objetivos? Conocer y comprender la utilidad de los temporizadores y contadores.? Comprender su estructura y lógica de funcionamiento.? Sintetizar programas que hagan uso del sistema de contadores/temporizadores.? Sintetizar manejadores de interrupción para los contadores/temporizadores. TEMPORIZADORES Y CONTADORES 2

3 Resumen de contenidos 1 Introducción. 2 Los Temporizadores/Contadores 0 y Características básicas. 2.2 Hardware involucrado. 2.3 Diagrama de bloques. 2.4 Registros SFR TMOD y TCON. 2.5 Modos de funcionamiento. 2.6 Ejemplos. 3 Interrupciones asociadas a los contadores/temporizadores. 4 Ejemplos de aplicación. 4.1 Medición del ancho de un pulso positivo. 4.2 Medición del período de una señal. 4.3 Generación de un pulso. 4.4 Generación de una señal PWM. TEMPORIZADORES Y CONTADORES 3

4 1 - Introducción TEMPORIZADORES Y CONTADORES 4

5 1 - Introducción Muchas aplicaciones de automatización y regulación necesitan...? Contabilizar eventos externos Contar cajas en una cinta transportadora, vehículos en una carretera,... Velocidad de un motor (encoder)? Realizar retardos de precisión o tareas periódicas Semáforos, pasos a nivel,... Generación de señales PWM, ondas cuadradas, control de potencia? Medir frecuencias/periodos de señales digitales Sensores. Receptores de señales infrarrojas, radio... TEMPORIZADORES Y CONTADORES 5

6 1 - Introducción EJEMPLO: Control velocidad motor asignatura Regulación Automática Motor Encoder Puente en H PWM Modulador PWM PID analógico Frecuencia Tensión Pulsos Referencia TEMPORIZADORES Y CONTADORES 6

7 1 - Introducción EJEMPLO: Control velocidad motor asignatura Regulación Automática Motor Encoder Puente en H PWM Microcontrolador PID digital Pulsos Referencia TEMPORIZADORES Y CONTADORES 7

8 1 - Introducción EJEMPLO:? El encoder genera una onda cuadrada con frecuencia proporcional a la velocidad del motor? Midiendo el ancho del periodo ON (Ton) se podría calcular la velocidad Encoder Toff = 0 Ton = 1 Pulsos TEMPORIZADORES Y CONTADORES 8

9 1 - Introducción Medir ancho de un pulso Encoder Cuenta=0 Pulsos P1.0 µc Nivel 0? SI 0 1 Incrementa cuenta Nivel 1? SI... MOV DPTR,#0 es_0: JNB P1.0,es_0 es_1: INC DPTR JB P1.0,es_1... TEMPORIZADORES Y CONTADORES 9

10 1 - Introducción Medir ancho de un pulso Encoder Cuenta=0 Pulsos P1.0 µc Nivel 0? SI 0 1 Incrementa cuenta Nivel 1? SI unsigned int contador=0; while (!P1.0) {} while (P1.0) { contador++; } TEMPORIZADORES Y CONTADORES 10

11 1 - Introducción? Problemas al resolverlo por software. Hay que saber cuánto tardan en ejecutarse las instrucciones. No se puede trabajar con frecuencias altas. Si hay interrupciones es imposible lograr precisión. La CPU desperdicia su tiempo y no puede hacer otras cosas.? Solución: Emplear contadores y/o temporizadores (T/C).? Los microcontroladores integran temporizadores/contadores (T/C). No necesitan circuitos adicionales (integración). Sin sobrecargar a la CPU (funcionamiento en paralelo con la CPU). Programación sencilla y transparente. TEMPORIZADORES Y CONTADORES 11

12 1 - Introducción? Cada generación de microcontroladores añade más capacidad. Intel > 2 T/C: T/C0, T/C1 Intel > 3 T/C: T/C0, T/C1, T/C2 Siemens SAB80C517 -> 3 T/C: T/C0, T/C1, T/C2, unidad comparación/captura Motorola MPC555 (32 bits) -> 2 Time Processor Unit 3 (TPU3) Atmel T89C51CC01 -> 3 T/C: T/C0, T/C1, T/C2, unidad comparación/captura? Los T/C tienen innumerables aplicaciones. Contabilización de eventos. Encoders, contadores de objetos,... Generación de señales digitales. PWM. Control de potencia, motores de continua, motores AC, motores P. a P.,... Generación de señales para transmisión/recepción de datos. Medición de señales digitales. Sensores de humedad, de distancia, de luminosidad... Temporizaciones. Retardos, tareas periódicas, planificación de tareas,... TEMPORIZADORES Y CONTADORES 12

13 2 Los Temporizadores/Contadores 0 y 1 T/C 0 y T/C 1 en la familia MCS-51 TEMPORIZADORES Y CONTADORES 13

14 2 - T/C 0 y T/C 1 en la familia MCS-51 Características básicas? Dos temporizadores/contadores casi idénticos: T/C0 y T/C1? Registro de cuenta de hasta 16 bits Cuenta tiempo: TEMPORIZADOR Cuenta eventos: CONTADOR? Contabilización ascendente (cuenta = cuenta+1).? El desborde se usa para detectar el fin de cuenta/temporización.? Dispone de hardware/software para arrancar y parar la cuenta. TEMPORIZADORES Y CONTADORES 14

15 2 - T/C 0 y T/C 1 en la familia MCS Características básicas? A OTRO SITIO Valor cuenta = 9746h = TEMPORIZADORES Y CONTADORES 15

16 2 - T/C 0 y T/C 1 en la familia MCS Hardware involucrado TEMPORIZADOR/CONTADOR 0 (T/C 0) Registros (zona SFR): TMOD (modo operación) (dir. 89h por máscara). TCON (control operación) (dir. 88h bit a bit). TL0, TH0 (registros cuenta) (dir. 8Ah y 8Ch). Terminales (Pines): T0 (P3.4) (entrada de pulsos). /INT0 (P3.2) (control de puerta). TEMPORIZADOR/CONTADOR 1 (T/C 1) Registros (zona SFR): TMOD (modo operación) (dir. 89h por máscara). TCON (control operación) (dir. 88h bit a bit). TL1, TH1 (registros cuenta) (dir. 8Bh y 8Dh). Terminales (Pines): T1 (P3.5) (entrada de pulsos). /INT1 (P3.3) (control de puerta). TEMPORIZADORES Y CONTADORES 16

17 2 - T/C 0 y T/C 1 en la familia MCS Diagrama de bloques Generación: - Eventos externos - Señal reloj interno Contador Control de puerta TEMPORIZADOR/CONTADOR 0 (T/C 0) SFR: TMOD (modo operación), TCON (control operación), TL0, TH0 (registros cuenta). Pines: T0 (P3.4) (entrada de pulsos), /INT0 (P3.2) (control de puerta). TEMPORIZADOR/CONTADOR 1 (T/C 1) SFR: TMOD (modo operación), TCON (control operación), TL1, TH1 (registros cuenta). Pines: T1 (P3.5) (entrada de pulsos), /INT1 (P3.3) (control de puerta). TEMPORIZADORES Y CONTADORES 17

18 2 - T/C 0 y T/C 1 en la familia MCS Diagrama de bloques OSC 1/12 T0 C/T = cerrado Contador TF0 (P3.4) /INT0 (P3.2) GATE TR0 Control de puerta TEMPORIZADOR/CONTADOR 0 (T/C 0) SFR: TMOD (modo operación), TCON (control operación), TL0, TH0 (registros cuenta). Pines: T0 (P3.4) (entrada de pulsos), /INT0 (P3.2) (control de puerta). TEMPORIZADOR/CONTADOR 1 (T/C 1) SFR: TMOD (modo operación), TCON (control operación), TL1, TH1 (registros cuenta). Pines: T1 (P3.5) (entrada de pulsos), /INT1 (P3.3) (control de puerta). TEMPORIZADORES Y CONTADORES 18

19 2 - T/C 0 y T/C 1 en la familia MCS Diagrama de bloques OSC 1/12 T0 C/T = cerrado Contador TF0 (P3.4) /INT0 GATE (P3.2) TR0 TEMPORIZADOR/CONTADOR 0 (T/C 0) SFR: TMOD (modo operación), TCON (control operación), TL0, TH0 (registros cuenta). Pines: T0 (P3.4) (entrada de pulsos), /INT0 (P3.2) (control de puerta). TEMPORIZADOR/CONTADOR 1 (T/C 1) SFR: TMOD (modo operación), TCON (control operación), TL1, TH1 (registros cuenta). Pines: T1 (P3.5) (entrada de pulsos), /INT1 (P3.3) (control de puerta). TEMPORIZADORES Y CONTADORES 19

20 2 - T/C 0 y T/C 1 en la familia MCS Diagrama de bloques OSC 1/12 T0 C/T = cerrado Contador TF0 (P3.4) /INT0 GATE (P3.2) TR0 TEMPORIZADOR/CONTADOR 0 (T/C 0) SFR: TMOD (modo operación), TCON (control operación), TL0, TH0 (registros cuenta). Pines: T0 (P3.4) (entrada de pulsos), /INT0 (P3.2) (control de puerta). TEMPORIZADOR/CONTADOR 1 (T/C 1) SFR: TMOD (modo operación), TCON (control operación), TL1, TH1 (registros cuenta). Pines: T1 (P3.5) (entrada de pulsos), /INT1 (P3.3) (control de puerta). TEMPORIZADORES Y CONTADORES 20

21 2 - T/C 0 y T/C 1 en la familia MCS Diagrama de bloques OSC 1/12 T0 (P3.4) /INT0 GATE C/T = cerrado Contador TF0 Interrupción (si está habilitada) (P3.2) TR0 TEMPORIZADOR/CONTADOR 0 (T/C 0) SFR: TMOD (modo operación), TCON (control operación), TL0, TH0 (registros cuenta). Pines: T0 (P3.4) (entrada de pulsos), /INT0 (P3.2) (control de puerta). TEMPORIZADOR/CONTADOR 1 (T/C 1) SFR: TMOD (modo operación), TCON (control operación), TL1, TH1 (registros cuenta). Pines: T1 (P3.5) (entrada de pulsos), /INT1 (P3.3) (control de puerta). TEMPORIZADORES Y CONTADORES 21

22 2 - T/C 0 y T/C 1 en la familia MCS-51 T/C 0 T0 2.3 Diagrama de bloques OSC 1/12 C/T = cerrado Contador TF0 Interrupción GATE /INT0 TR0 T/C 1 TEMPORIZADORES Y CONTADORES 22

23 2 - T/C 0 y T/C 1 en la familia MCS Registros SFR TMOD y TCON OSC 1/12 T0 C/T = cerrado Contador TF0 Interrupción GATE /INT0 TR0 T/C 1 T/C 0 b7 TMOD, dir. 89h, por máscara b0 GATE C / T M1 M0 GATE C / T M1 M0 T/C 1 T/C 0 b7 TCON, dir. 88h, bit a bit b0 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 TEMPORIZADORES Y CONTADORES 23

24 2 - T/C 0 y T/C 1 en la familia MCS Registros SFR TMOD y TCON OSC 1/12 T0 C/T = cerrado Contador TF0 Interrupción GATE /INT0 TR0 b7 TMOD, dir. 89h, por máscara b0 GATE C / T M1 M0 GATE C / T M1 M0 T/C 1 T/C 0 b7 TCON, dir. 88h, bit a bit b0 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 TEMPORIZADORES Y CONTADORES 24

25 2 - T/C 0 y T/C 1 en la familia MCS Registros SFR TMOD y TCON OSC 1/12 T0 -INT0 GATE TR0 C/T = cerrado Contador TF0 Bit C/T Interrupción Selección modo contador o temporizador. 0 -> temporizador 1 -> contador b7 TMOD, dir. 89h, por máscara b0 GATE C / T M1 M0 GATE C / T M1 M0 T/C 1 T/C 0 b7 TCON, dir. 88h, bit a bit b0 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 TEMPORIZADORES Y CONTADORES 25

26 T0 /INT0 GATE TR0 2 - T/C 0 y T/C 1 en la familia MCS-51 OSC 1/12 C/T? Operación como temporizador = cerrado Contador TF0 Interrupción Pulso muy estrecho: se pierde! Cuentan ciclos de máquina (1 ciclo máquina (C.M.) = 12 ciclos de reloj).? Operación como contador 2.4 Registros SFR TMOD y TCON 01 T0 Detección de flancos de bajada en el T0 (P3.4). C.M. C.M. Muestreo cada CM -> Flanco de bajada = detectar 1 y después Máxima frecuencia detectable será 1/24 frecuencia reloj. 0 0 TEMPORIZADORES Y CONTADORES 26

27 2 - T/C 0 y T/C 1 en la familia MCS Registros SFR TMOD y TCON OSC 1/12 T0 /INT0 GATE TR0 C/T = cerrado Contador TF0 Interrupción Bit TR0 Activación T/C > desactivado 1 -> activado b7 TMOD, dir. 89h, por máscara b0 GATE C / T M1 M0 GATE C / T M1 M0 T/C 1 T/C 0 b7 TCON, dir. 88h, bit a bit b0 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 TEMPORIZADORES Y CONTADORES 27

28 2 - T/C 0 y T/C 1 en la familia MCS Registros SFR TMOD y TCON OSC 1/12 T0 /INT0 GATE TR0 C/T = cerrado Contador TF0 Interrupción Bit GATE Control de puerta. 0 -> interno (software) 1 -> externo (hardware) b7 TMOD, dir. 89h, por máscara b0 GATE C / T M1 M0 GATE C / T M1 M0 T/C 1 T/C 0 b7 TCON, dir. 88h, bit a bit b0 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 TEMPORIZADORES Y CONTADORES 28

29 2 - T/C 0 y T/C 1 en la familia MCS Registros SFR TMOD y TCON OSC 1/12 D T0 /INT0 1 GATE TR0 0 C/T 1 0 D 1 = cerrado Contador TF0 Interrupción Bit GATE Control de puerta. 0 -> interno (software) 1 -> externo (hardware) b7 TMOD, dir. 89h, por máscara b0 GATE C / T M1 M0 GATE C / T M1 M0 T/C 1 T/C 0 b7 TCON, dir. 88h, bit a bit b0 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 TEMPORIZADORES Y CONTADORES 29

30 2 - T/C 0 y T/C 1 en la familia MCS Registros SFR TMOD y TCON OSC 1/12 D T0 /INT0 0 GATE TR0 0 C/T = cerrado Contador TF0 Interrupción Bit GATE Control de puerta. 0 -> interno (software) 1 -> externo (hardware) b7 TMOD, dir. 89h, por máscara b0 GATE C / T M1 M0 GATE C / T M1 M0 T/C 1 T/C 0 b7 TCON, dir. 88h, bit a bit b0 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 TEMPORIZADORES Y CONTADORES 30

31 2 - T/C 0 y T/C 1 en la familia MCS Registros SFR TMOD y TCON OSC 1/12 T0 /INT0 GATE TR0 C/T = cerrado Contador TF0 Interrupción Modo Modo 0: Contador 13 bits. Modo 1: Contador 16 bits. Modo 2: Cont. 8 bit autorrecarga Modo 3: Desdoble (T/C0) b7 TMOD, dir. 89h, por máscara b0 GATE C / T M1 M0 GATE C / T M1 M0 T/C 1 T/C 0 b7 TCON, dir. 88h, bit a bit b0 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 TEMPORIZADORES Y CONTADORES 31

32 2 - T/C 0 y T/C 1 en la familia MCS Registros SFR TMOD y TCON Interrupción OSC 1/12 T0 /INT0 GATE TR0 C/T = cerrado Contador 1 TF0 Contador Interrupción Registros SFR TH0 y TL0. Ascendente. Y cuando desborda... b7 TMOD, dir. 89h, por máscara b0 GATE C / T M1 M0 GATE C / T M1 M0 T/C 1 T/C 0 b7 TCON, dir. 88h, bit a bit b0 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 TEMPORIZADORES Y CONTADORES 32

33 2 - T/C 0 y T/C 1 en la familia MCS Registros SFR TMOD y TCON OSC 1/12 T0 /INT0 GATE TR0 C/T = cerrado Contador TF0 Bit TF0 Interrupción Timer flag > desborde PERO NO SE DETIENE EL CONTADOR b7 TMOD, dir. 89h, por máscara b0 GATE C / T M1 M0 GATE C / T M1 M0 T/C 1 T/C 0 b7 TCON, dir. 88h, bit a bit b0 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 TEMPORIZADORES Y CONTADORES 33

34 2 - T/C 0 y T/C 1 en la familia MCS-51 Ejemplo: Se desea temporizar un intervalo de 125?s. Cuál es el valor a cargar como cuenta inicial? Para un valor de f OSC =12MHz: Duración de 1 Ciclo Máquina: Si se utilizan 8 bits: =131=83H 1 12MHz *12=1? s Duración=125?s=1?s*Cuenta Duración=125?s=1?s*125 Si se utilizan 16 bits: =65411=FF83H THx=? TLx=131 THx=255 TLx=131 TEMPORIZADORES Y CONTADORES 34

35 2 - T/C 0 y T/C 1 en la familia MCS-51 Ejemplo: Se desea temporizar un intervalo de 2s. Cuál es el valor a cargar como cuenta inicial? (f OSC =12MHz) Duración= ? s=1? s*cuenta Duración= ? s=1? s* No cabe en 16 bits Solución: Contabilizar desbordes del contador (Con 16 bits cada desborde equivale a 65536? s). Desbordes = 30 Resto_hasta_completar = Cuenta = 30* = TEMPORIZADORES Y CONTADORES 35

36 2 - T/C 0 y T/C 1 en la familia MCS Modos de funcionamiento M1 M0 Modo Temporizador/contador de 8 bits con THx. TLx actúa como preescala de 5 bits (los de menor peso) (13 bits en total). (los 3 bits de mayor peso de TLx son de valor indeterminado) Temporizador/contador de 16 bits, con THx y TLx en cascada 1 0 Temporizador/contador de 8 bits con autorrecarga. THx contiene el valor de recarga 2 para TLx tras cada desbordamiento Para el temporizador 0, TL0 y TH0 son dos temporizadores/contadores de 8 bits, controlados con los bits de control de los temporizadores 0 y 1 respectivamente. Temporizador 1 inactivo. TEMPORIZADORES Y CONTADORES 36

37 2 - T/C 0 y T/C 1 en la familia MCS Modos de funcionamiento T0 /INT0 GATE TR0 OSC 1/12 C/T = cerrado TL0 5 bits Contador TH0 de menor peso TF0 Interrupción M1 M0 Modo Temporizador/contador de 8 bits con THx. TLx actúa como preescala de 5 bits (13 bits en total) Temporizador/contador de 16 bits, con THx y TLx en cascada Temporizador/contador de 8 bits con autorrecarga. THx contiene el valor de recarga para TLx tras cada desbordamiento Para el temporizador 0, TL0 y TH0 son dos temporizadores/contadores de 8 bits, controlados con los bits de control de los temporizadores 0 y 1 respectivamente. Temporizador 1 inactivo. LSB 13 bits 8 bits MSB MODO 0: Contador de 13 bits TEMPORIZADORES Y CONTADORES 37

38 2 - T/C 0 y T/C 1 en la familia MCS Modos de funcionamiento T0 /INT0 GATE TR0 OSC 1/12 C/T = cerrado LSB 16 bits MSB TL0 Contador TH0 TF0 Interrupción M1 M0 Modo Temporizador/contador de 8 bits con THx. TLx actúa como preescala de 5 bits (13 bits en total) Temporizador/contador de 16 bits, con THx y TLx en cascada Temporizador/contador de 8 bits con autorrecarga. THx contiene el valor de recarga para TLx tras cada desbordamiento Para el temporizador 0, TL0 y TH0 son dos temporizadores/contadores de 8 bits, controlados con los bits de control de los temporizadores 0 y 1 respectivamente. Temporizador 1 inactivo. 8 bits 8 bits MODO 1: Contador de 16 bits TEMPORIZADORES Y CONTADORES 38

39 2 - T/C 0 y T/C 1 en la familia MCS Modos de funcionamiento T0 /INT0 GATE TR0 OSC 1/12 C/T = cerrado Contador TL0 TF0 Interrupción M1 M0 Modo Temporizador/contador de 8 bits con THx. TLx actúa como preescala de 5 bits (13 bits en total) Temporizador/contador de 16 bits, con THx y TLx en cascada Temporizador/contador de 8 bits con autorrecarga. THx contiene el valor de recarga para TLx tras cada desbordamiento Para el temporizador 0, TL0 y TH0 son dos temporizadores/contadores de 8 bits, controlados con los bits de control de los temporizadores 0 y 1 respectivamente. Temporizador 1 inactivo. 8 bits TH0 8 bits Recarga MODO 2: Contador de 8 bits con autorrecarga TEMPORIZADORES Y CONTADORES 39

40 2 - T/C 0 y T/C 1 en la familia MCS-51 TR1 2.5 Modos de funcionamiento OSC 1/12 TH0 8 bits TF1 Intr C/T 0 1 TL0 8 bits TF0 Intr T0 GATE INT0 TR0 MODO 3: Desdoble T/C 0 M1 M0 Modo Temporizador/contador de 8 bits con THx. TLx actúa como preescala de 5 bits (13 bits en total) Temporizador/contador de 16 bits, con THx y TLx en cascada Temporizador/contador de 8 bits con autorrecarga. THx contiene el valor de recarga para TLx tras cada desbordamiento Para el temporizador 0, TL0 y TH0 son dos temporizadores/contadores de 8 bits, controlados con los bits de control de los temporizadores 0 y 1 respectivamente. Temporizador 1 inactivo. TEMPORIZADORES Y CONTADORES 40

41 Se desea contabilizar los vehículos que circulan por una carretera. NO excederán de ? PASO 1: Contador o temporizador? Contador.? PASO 2: Control puerta externo o interno? (GATE) Interno.? PASO 3: Modo 0 (13 bits), Modo 1 (16 bits) o Modo 2 (8 bits rec.) Modo 1. En principio podemos contar hasta ? PASO 4: Valor inicial del contador? T/C 0 y T/C 1 en la familia MCS Ejemplo de un contador T0 µc Cuenta 012 TEMPORIZADORES Y CONTADORES 41

42 Contador. Interno Modo 1. En principio podemos contar hasta T/C 0 y T/C 1 en la familia MCS Ejemplo de un contador Se desea contabilizar los vehículos que circulan por una carretera. NO excederán de TH0=0x00; TL0=0x00; b7 TMOD, dir. 89h, por máscara b0 GATE C / T M1 M0 GATE C / T M1 M0 1 0 T/C 1 T/C b7 TCON, dir. 88h, bit a bit b0 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 TEMPORIZADORES Y CONTADORES 42

43 2 - T/C 0 y T/C 1 en la familia MCS-51 TH0=0x00; TL0=0x00; 2.6 Ejemplo de un contador Se desea contabilizar los vehículos que circulan por una carretera. NO excederán de b7 TMOD, dir. 89h, por máscara b0 GATE C / T M1 M0 GATE C / T M1 M0 1 0 T/C 1 T/C b7 TCON, dir. 88h, bit a bit b0 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 sfr TMOD=0x89,TCON=0x88,TH0=0x8C,TL0=0x8A; sbit TF0=TCON^5, TR0=TCON^4; void main(void) { int vehiculos;/* Para contabilizar vehículos */ TMOD = 0x05; /* 0101(b => T/C 0, control sw, contador, modo 1 */ TH0=0x00; TL0=0x00; /* sigue... */ } TEMPORIZADORES Y CONTADORES 43

44 sfr TMOD=0x89,TCON=0x88,TH0=0x8C,TL0=0x8A; sbit TF0=TCON^5, TR0=TCON^4; void main(void) { int vehiculos; 2 - T/C 0 y T/C 1 en la familia MCS Ejemplo de un contador Se desea contabilizar los vehículos que circulan por una carretera. NO excederán de } TMOD = 0x05; /* T/C 0, modo 1, soft, contador */ TH0=0x00; TL0=0x00; TR0=1; /* arrancar timer */ while(1) { /* hacer otras cosas */ TR0=0; /* evitar condiciones de carrera */ vehiculos = TH0*256 + TL0; TR0=1; } vehiculos = TH0; vehiculos = vehiculos << 8; vehiculos = vehiculos TL0; TEMPORIZADORES Y CONTADORES 44

45 2 - T/C 0 y T/C 1 en la familia MCS Ejemplo de un contador (ampliación) Se desea contabilizar los vehículos que circulan por una carretera. Mejora, millones de vehículos. sfr TMOD=0x89,TCON=0x88,TH0=0x8C,TL0=0x8A; sbit TF0=TCON^5, TR0=TCON^4; void main(void) { unsigned long vehiculos, desbordes=0; TMOD = 0x05; /* timer 0, modo 1, soft. */ TH0=0x00; TL0=0x00; TF0=0; TR0=1; /* arrancar timer */ while(1) { /* hacer otras cosas */ if (TF0==1) { TF0=0; desbordes++; } TR0=0; /* evitar condiciones de carrera */ vehiculos = desbordes* TH0*256 + TL0; TR0=1; }} TEMPORIZADORES Y CONTADORES 45

46 2.6 Ejemplo de un temporizador Se desea realizar un retardo de 10 ms. Reloj del?c de 12 Mhz? PASO 1: Contador o temporizador? Temporizador.? PASO 2: Control puerta externo o interno? (GATE) Interno. 2 - T/C 0 y T/C 1 en la familia MCS Mhz 1 Ciclo Máquina?? 1? S 12 períodos de reloj 10 ms? ? S? cuentas hasta desborde? PASO 3: Modo 0 (13 bits), Modo 1 (16 bits) o Modo 2 (8 bits rec.) Modo 1.? PASO 4: Valor inicial del contador? 2 16? cuenta? ? ? ? D8F0h TEMPORIZADORES Y CONTADORES 46

47 2.6 Ejemplo de un temporizador Se desea realizar un retardo de 10 ms. Reloj del?c de 12 Mhz Temporizador. Interno Modo (D8F0h) 2 - T/C 0 y T/C 1 en la familia MCS-51 TH0=0xD8; TL0=0xF0; b7 TMOD, dir. 89h, por máscara b0 GATE C / T M1 M0 GATE C / T M1 M0 0 0 T/C 1 T/C b7 TCON, dir. 88h, bit a bit b0 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 TEMPORIZADORES Y CONTADORES 47

48 2 - T/C 0 y T/C 1 en la familia MCS Ejemplo de un temporizador Se desea realizar un retardo de 10 ms. Reloj del?c de 12 Mhz sfr TMOD=0x89,TCON=0x88,TH0=0x8C,TL0=0x8A; sbit TF0=TCON^5, TR0=TCON4; void main(void) { /*... */ TMOD = 0x01; /* timer 0, modo 1, soft. */ TMOD &= 0xF1; TH0=0xD8; TL0=0xF0; TF0=0; TR0=1; /* arrancar timer */ while(!tf0); /* esperar desborde */ /*... */ } TEMPORIZADORES Y CONTADORES 48

49 2 - T/C 0 y T/C 1 en la familia MCS-51 Actividad Se desea disponer de una función en lenguaje C para realizar retardos de precisión del orden de milisegundos. Reloj del? C de 12 Mhz.? AYUDA: Prototipo función: void delay_ms(unsigned int ms); Calcular ciclos de máquina a esperar y usar un timer para contabilizarlos Emplear mecanismo de desborde para realizar temporizaciones grandes Solución TEMPORIZADORES Y CONTADORES 49

50 3 Interrupciones asociadas a los contadores/temporizadores TEMPORIZADORES Y CONTADORES 50

51 3 Interrupciones asociadas a los T/C? Permite sacar mayor partido al sistema.? Liberan a la CPU de tener que encuestar flag de desborde. Descripción Nombre Flag hab. Flag act. Núm Vector Borrado (IEN0) (TCON) Interrup Cont./Temp. 0 T/C0 ET0 TF0 000Bh Hw 1 Cont./Temp.1 T/C1 ET1 TF1 001Bh Hw 3 T0 /INT0 OSC 1/12 GATE TR0 C/T = cerrado Contador TF0 Interrupción Bit ET0 Habilitación de interrupción. TEMPORIZADORES Y CONTADORES 51

52 3 Interrupciones asociadas a los T/C? Permite sacar el máximo partido? Liberan a la CPU de tener que encuestar flag de desborde Borrado automático al vectorizarse. (puesta a 0) Descripción Nombre Flag hab. Flag act. Núm Vector Borrado (IEN0) (TCON) Interrup Cont./Temp. 0 T/C0 ET0 TF0 000Bh Hw 1 Cont./Temp.1 T/C1 ET1 TF1 001Bh Hw 3 T0 /INT0 OSC 1/12 GATE TR0 C/T = cerrado Contador TF0 Interrupción Bit TF0 Activación petición interrupción. (a 1) TEMPORIZADORES Y CONTADORES 52

53 3 Interrupciones asociadas a los T/C? Permite sacar el máximo partido? Liberan a la CPU de tener que encuestar flag de desborde Descripción Nombre Flag hab. Flag act. Núm Vector Borrado (IEN0) (TCON) Interrup Cont./Temp. 0 T/C0 ET0 TF0 000Bh Hw 1 Cont./Temp.1 T/C1 ET1 TF1 001Bh Hw 3 T0 -INT0 OSC 1/12 GATE TR0 C/T = cerrado Contador TF0 Interrupción Dirección de rutina interrupción. void servicio (void)interrupt 1 { /* codigo */ } TEMPORIZADORES Y CONTADORES 53

54 3 Interrupciones asociadas a los T/C? Permite sacar el máximo partido? Liberan a la CPU de tener que encuestar flag de desborde Descripción Nombre Flag hab. Flag act. Núm Vector Borrado (IEN0) (TCON) Interrup Cont./Temp. 0 T/C0 ET0 TF0 000Bh Hw 1 Cont./Temp.1 T/C1 ET1 TF1 001Bh Hw 3 T0 /INT0 OSC 1/12 GATE TR0 C/T = cerrado Contador TF0 Interrupción Se puede combinar el T/C y la interrupción externa. TEMPORIZADORES Y CONTADORES 54

55 3 Interrupciones asociadas a los T/C Se trata de un ejemplo típico de tarea periódica. Interesa tener desocupada la CPU para otros menesteres. Se propone que el T/C genere una interrupción transcurrido cada semiperiodo y que la rutina de servicio modifique el valor del. Ejemplo generación onda cuadrada P Khz Generar onda cuadrada de 10 Khz por el P1.0. Reloj del?c de 12 Mhz TEMPORIZADORES Y CONTADORES 55

56 3 Interrupciones asociadas a los T/C Ejemplo generación onda cuadrada Generar onda cuadrada de 10 Khz por el P1.0. Reloj del?c de 12 Mhz? PASO 1: Contador o temporizador? Temporizador? PASO 2: Control puerta externo o interno? (GATE) Interno? PASO 3: Modo 0 (13 bits), Modo 1 (16 bits) o Modo 2 (8 bits rec.) Modo 2. 8 bits con autorrecarga? Hacer números 1 Ciclo Máquina? 1? S T? 1 10Khz? 0,1mS? 100? S? Semiperiodo? 50? S( CM ) TEMPORIZADORES Y CONTADORES 56

57 3 Interrupciones asociadas a los T/C Ejemplo generación onda cuadrada Generar onda cuadrada de 10 Khz por el P1.0. Reloj del?c de 12 Mhz? PASO 1: Contador o temporizador? Temporizador? PASO 2: Control puerta externo o interno? (GATE) Interno? PASO 3: Modo 0 (13 bits), Modo 1 (16 bits) o Modo 2 (8 bits rec.) Modo 2. 8 bits con autorrecarga? PASO 4: Valor inicial del contador? 2 8? cuenta? 256? 50? 206 TEMPORIZADORES Y CONTADORES 57

58 Temporizador Interno Modo Interrupciones asociadas a los T/C Ejemplo generación onda cuadrada Generar onda cuadrada de 10 Khz por el P1.0. Reloj del?c de 12 Mhz TH0=TL0=206; b7 TMOD, dir. 89h, por máscara b0 GATE C / T M1 M0 GATE C / T M1 M TIMER 1 TIMER 0 b7 TCON, dir. 88h, bit a bit b0 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 TEMPORIZADORES Y CONTADORES 58

59 3 Interrupciones asociadas a los T/C Ejemplo generación onda cuadrada Generar onda cuadrada de 10 Khz por el P1.0. Reloj del?c de 12 Mhz sfr TMOD=0x89,TCON=0x88,TH0=0x8C,TL0=0x8A; sfr IEN0=0xA8, P1=0x90; sbit ET0=IEN0^1, EAL=IEN0^7, TR0=TCON^4; void main(void) { EAL = 0; TMOD = 0x02; TH0 = 206; TL0 = 206; ET0 = 1; /* habilitar int. timer 0 */ EAL = 1; /* habilitar interrupciones */ TR0 = 1; /* a correr */ while (1) { /* otras cosas */ } } void T0 (void)interrupt 1 { P1.0 = ~P1.0; } TEMPORIZADORES Y CONTADORES 59

60 3 Interrupciones asociadas a los T/C Actividad Generar onda cuadrada de 50 Hz por el P1.0. Reloj del? C de 12 Mhz.? AYUDA: DOS CAMINOS a) Las recargas del temporizador/contador se pueden hacer por software. b) Cada N interrupciones realizar la acción. Solución TEMPORIZADORES Y CONTADORES 60

61 3 - T/C 0 y T/C 1 en el 805x7 Actividad En la actividad anterior, conseguir que el tiempo que la señal está a nivel alto y a nivel bajo sean distintos. Solución TEMPORIZADORES Y CONTADORES 61

62 4 - Ejemplos de aplicación TEMPORIZADORES Y CONTADORES 62

63 4 - Ejemplos de aplicación 4.1 Medir el ancho de un pulso positivo Para introducir el pulso se emplea la entrada de interrupción externa /INT0. Se emplea el T/C 0 como temporizador en modo control hardware. Si se desea medir el nivel bajo de esta manera es necesario emplear un inversor externo.??c? INT0 TEMPORIZADORES Y CONTADORES 63

64 4 - Ejemplos de aplicación 4.1 Medir el ancho de un pulso positivo Control externo,? T0 /INT0 bit GATE = 1 OSC 1/12 C/T 1 GATE 0 TR = cerrado Contador No cuenta! TF0 Interrupción TEMPORIZADORES Y CONTADORES 64

65 4 - Ejemplos de aplicación 4.1 Medir el ancho de un pulso positivo? T0 /INT0 OSC 1/12 C/T 1 GATE 0 TR = cerrado 1 Contador Si cuenta! TF0 Interrupción TEMPORIZADORES Y CONTADORES 65

66 4 - Ejemplos de aplicación 4.1 Medir el ancho de un pulso positivo? Aprovechar flanco de bajada para generar una interrupción externa y leer valor cuenta TR0 = 1 Termina de contar Control por HW: Comienza a contar TEMPORIZADORES Y CONTADORES 66

67 4 - Ejemplos de aplicación 4.1 Medir el ancho de un pulso positivo sfr TMOD=0x89,TCON=0x88,TH0=0x8C,TL0=0x8A, IEN0=0xA8; sbit TR0=TCON^4, IT0=TCON^0, EX0=IEN0^0, EAL=IEN0^7; unsigned int ancho_pulso; void main(void) { EAL = 0; /* deshabilitar interrupciones */ TMOD = 0x09; /* control hard., timer, modo 1 */ TH0 = 0x00; TL0 = 0x00; IT0 = 1; /* disparo interrupción externa por flanco bajada*/ EX0 = 1; /* habilitar int. externa 0 */ EAL = 1; /* habilitar interrupciones */ TR0 = 1; /* a correr */ while (1) { /* otras cosas */ } } void Externa0_INT0 (void) interrupt 0 { TR0 = 0; /* para timer */ ancho_periodo = TH0*256+TL0; /* recoger medida */ TH0 = TL0 = 0; /*reiniciar cuenta timer */ TR0 = 1; } TEMPORIZADORES Y CONTADORES 67

68 4 - Ejemplos de aplicación 4.2 Medir el periodo de una señal La señal se introduce al microcontrolador mediante la entrada de interrupción externa /INT0.??C INT0 TEMPORIZADORES Y CONTADORES 68

69 ? 4 - Ejemplos de aplicación 4.2 Medir el periodo de una señal Control por software. Bit GATE =0 Flanco bajada generar petición Interrupción externa: Comenzar cuenta Flanco bajada generar petición Interrupción externa: Parar cuenta y procesar cuenta Flanco bajada generar petición Interrupción externa: Comenzar cuenta El método puede suponer algo de perdida de precisión debido a las variaciones de latencia de la interrupción. TEMPORIZADORES Y CONTADORES 69

70 4 - Ejemplos de aplicación 4.2 Medir el periodo de una señal sfr TMOD=0x89,TCON=0x88,TH0=0x8C,TL0=0x8A, IEN0=0xA8; sbit TR0=TCON^4, IT0=TCON^0, EX0=IEN0^0, EAL=IEN0^7; unsigned int periodo; void main(void) { EAL = 0; /* deshabilitar interrupciones */ TMOD = 0x01; /* control soft., timer, modo 1 */ TH0 = 0x00; TL0 = 0x00; IT0 = 1; /* disparo int. externa. 0 por flanco bajada */ EX0 = 1; /* habilitar int. externa 0 *7 EAL = 1; /* habilitar interrupciones */ TR0 = 1; /* a correr */ while (1) { /* otras cosas */ } } void Externa0_INT0 (void) interrupt 0 { /* arranca y para el timer en */ /* interrupciones alternadas */ TR0 = ~TR0; /* complementar. if (TR0==1) return; /* salir si timer corriendo */ periodo = TH0*256+TL0; /* recoger medida */ TH0 = 0; TL0 = 0; /*reiniciar cuenta timer */ } TEMPORIZADORES Y CONTADORES 70

71 4 - Ejemplos de aplicación 4.3 Generar un pulso Se utiliza un de un puerto (P2.0) para generar el pulso La precisión del método depende de la latencia de la interrupción del temporizador. temporizador?c P2.0 TEMPORIZADORES Y CONTADORES 71

72 Control por software. Bit GATE = 0 P2.0 = Ejemplos de aplicación 4.3 Generar un pulso Habilitar interrupción del T/C 0 Arrancar el temporizador inicializando la cuenta en función del ancho del pulso Cuando rebose, se generará una interrupción procedente del T/C cuyo manejador pondrá P2.0 = 0 dado que se ha alcanzado la duración del pulso temporizador P2.0 = 1 Inicializar temporizador y comenzar cuenta El manejador de la interrupción del T/C 0, dará por finalizado el pulso P2.0 = 0 TEMPORIZADORES Y CONTADORES 72

73 4 - Ejemplos de aplicación 4.3 Generar un pulso sfr TMOD=0x89,TCON=0x88,TH0=0x8C,TL0=0x8A, IEN0=0xA8 P2=0xA0; sbit TR0=TCON^4, ET0=IEN0^1, EAL=IEN07; #define HITime??? #define LoTime??? void main (void){ EAL = 0; /* deshabilitar interrupciones */ ET0 = 1; /* habilitar int. del T/C 0 *7 TCON = 0x00; /* Asegurarse que el temporizador está parado. */ TMOD =0x01; /* Temporizador en modo 1, soft. */ TH0 = HiTime; /* Cargar T/C 0 con la cuenta para la duración del pulso. */ TL0 = LoTime; TR0 = 1; /* Arrancar temporizador. */ P2.0 = 1; /* Comenienzo pulso. */ EAL = 1; /* habilitar interrupciones */ } void Timer0_int (void) interrupt 1 { TR0 = 0; /* Parar temporizador */ P2.0 = 0; /* Final del pulso */ } TEMPORIZADORES Y CONTADORES 73

74 4 - Ejemplos de aplicación 4.3 Generar un pulso Inicio: MOV TCON,#$00 ;Asegurarse que el temporizador está parado. MOV TMOD,#$01 ;Temporizador en modo 1. MOV TH0,#HiTime ;Cargar T/C 0 con la cuenta para la ; duración del pulso. MOV TL0,#LoTime SETB TR0 ;Arrancar temporizador. SETB P2.0 ;Comenienzo pulso. ;Manejador interrupción del T/C 0. TC0INT: CLR P2.0 ;Final del pulso. CLR TR0 ;Parar temporizador. RETI TEMPORIZADORES Y CONTADORES 74

75 4 - Ejemplos de aplicación 4.4 Generar una señal PWM La precisión de este método depende de la latencia de las interrupciones del temporizador. Para generar señales de mayor frecuencia usar modo 2. Arrancar tempo. Valor 0 Arrancar tempo. Valor 1 Repetir TEMPORIZADORES Y CONTADORES 75

76 4 - Ejemplos de aplicación 4.4 Generar una señal PWM T0INT: CLR TR0 ;Parar el temporizador. CPL P2.0 ;Complementar valor. JB P2.0,SetPWMHigh ;Está a valor 1 ó 0? MOV TH0,PWMLowH ;Poner PWM a 0. MOV TL0,PWMLowL SJMP T0EX SetPWMHigh: MOV TH0,PWMHighH ;Poner PWM a 1. MOV TL0,PWMHighL T0EX: SETB TR0 ;Reinicializar temporizador. RETI TEMPORIZADORES Y CONTADORES 76

77 4 - Ejemplos de aplicación 4.5 Leer un timer al vuelo ReadTimer:MOV ValH,TH0 ;Leer parte alta y baja. MOV ValL,TL0 MOV A,TH0 ;Leer nuevamente parte alta. CJNE A,ValH,ChkHigh ;Ha cambiado? SJMP RTEX ;Si no, la primera lectura es válida. ChkHigh: JB ValL.7,RTEX ;Otro caso, verificar parte baja para ver RTEX: ; si ha cambiado despúes de leer la parte ; alta original. MOV ValH,A ;Si ha cambiado, usar la segunda lectura RET ; de la parte alta TEMPORIZADORES Y CONTADORES 77

78 Solución actividad Generar onda cuadrada de 50 Hz por el P1.0. Reloj de 12 Mhz. 50 Hz = µs periodo = µs semiperiodo Usar temporizador y modo 1 (16 bits). Recargar por programa el timer en interrupción. Recarga: µs -> = = D8F0h sfr TMOD=0x89,TCON=0x88,TH0=0x8C,TL0=0x8A; sfr IEN0=0xA8, P1=0x90; sbit ET0=IEN0^1, EAL=IEN0^7, TR0=TCON^4; void main(void) { TMOD = 0x01; TH0 = 0xD8; TL0 = 0xF0; EAL = 0; ET0 = 1; EAL = 1; TR0 = 1; /* a correr */ while (1) { /* otras cosas */ } } void T0 (void)interrupt 1 { P1.0 = ~P1.0; TR0 = 0; TH0 = 0xD8; TL0 = 0xF0; TR0 = 1; } TEMPORIZADORES Y CONTADORES 78

79 Solución actividad Se desea disponer de una función C para realizar retardos de precisión del orden de milisegundos. Reloj del?c de 12 Mhz. void delay_ms(unsigned int mseg) { long l; unsigned int desbordes, resto; l = 1000L * mseg; /* ciclos máquina en us */ desbordes = (l / 65536) + 1; /*incluye desborde del resto*/ resto = (l % 65536); TR0=TF0=0; /*garantizar condiciones iniciales adecuadas*/ TMOD = 0x01; TMOD &= 0xF1; /* modo 1, temporizador, control soft. */ TL0 = resto & 0x00FF; TH0 = resto >> 8; TR0 = 1; /* a correr */ } while(desbordes) if (TF0) { TF0 = 0; desbordes--; } TR0 = TF0 = 0; TEMPORIZADORES Y CONTADORES 79

80 Actividad Conseguir que el tiempo a nivel alto y a nivel bajo sean distintos. sfr TMOD=0x89,TCON=0x88,TH0=0x8C,TL0=0x8A, IEN0=0xA8; sbit TR0=TCON^4, IT0=TCON^0, ET0=IEN0^1, EAL=IEN0^7; #define T_ON 1000 #define T_OFF 2000 #define P_OUT P1.0 unsigned char t_on_h, t_on_l, t_off_h, t_off_l; void main(void) { t_on_h = T_ON / 256; t_on_l = T_ON % 256; t_off_h = T_OFF / 256; t_off_l = T_OFF % 256; TMOD = 0x01; TH0 = t_on_h; TL0 = t_on_l; P_OUT = 1; ET0 = 1; EAL = 1; TR0 = 1; /* a correr */ while (1) { /* otras cosas */ } } void T0 (void) interrupt 1 { TR0=0; P_OUT++; /* complementar salida */ if (P_OUT) { TH0 = t_on_h; TL0 = t_on_l; } else { TH0 = t_off_h; TL0 = t_off_l; } TR0=1; } TEMPORIZADORES Y CONTADORES 80

81 ? EJERCICIO: Realizar un programa en lenguaje C, que configure el TEMPORIZADOR-0 en modo 2 (Temporizador/Contador de 8 bits con autorrecarga), de forma que genere una interrupción con cada overflow. El manejador de interrupción tendrá como única misión invertir el valor de P3.5 SOLUCIÓN: IEN = $82 EAL WDT ET2 ES0 ET1 EX1 ET0 EX TMOD = $02 GATE C/T M1 M0 GATE C/T M1 M0 TIMER-0 TEMPORIZADORES Y CONTADORES 81

82 sfr TMOD=0x89,TCON=0x88,TH0=0x8C,TL0=0x8A, IEN0=0xA8, P3=0xB0; sbit TR0=TCON^4; void T0_int (void) interrupt 1; /* Rutina Timer-0 */ void main (void) { /* Inicialización de registros */ IEN0 = 0x82; /* Habilitación Interrupciones */ TMOD = 0x02; /* Configuración Timer-0 */ TH0 = 0x05; /* Valor inicial en TH0 */ TL0 = 0x05; /* Valor inicial en TL0 */ TR0 = 1; /* Arranque del Timer-0 */ while (1) {} } void T0_int (void) interrupt 1 { P3.5 = ~P3.5; /* Invertir salida */ } TEMPORIZADORES Y CONTADORES 82

83 Bibliografía [Domíng2001] C. Domínguez, J.M. Martínez, A. Perles, J. Albaladejo, H. Hassan. Curso de Informática Industrial: Aplicación con el microcontrolador. Ed. Universidad Politécnica de Valencia, [Campelo1998] J. C. Campelo, A. Perles, F. Rodríguez. Microcontroladores Intel MCS-51. Arquitectura y programación. Ed. Universidad Politécnica de Valencia, [Martínez2001] J.M. Martínez, C. Domínguez, A. Perles, H. Hassan, J. Albaladejo. Problemas de microcontroladores de la familia MCS-51. Ed. Universidad Politécnica de Valencia, [Intel1994] MCS-51 Microcontroller Family User s Manual. TEMPORIZADORES Y CONTADORES 83

TEMPORIZADORES Y CONTADORES

TEMPORIZADORES Y CONTADORES Los µc51 tienen dos temporizadores/contadores, TIMER0 y TIMER1 de 16 bits cada uno. Cuando operan como temporizadores, los registros SFR s THx y TLx son incrementados cada ciclo de máquina, desde 0000H

Más detalles

Guía resumida para utilizar el microcontrolador CY7C68013

Guía resumida para utilizar el microcontrolador CY7C68013 Guía resumida para utilizar el microcontrolador CY7C68013 Camilo Quintáns Graña Miguel Ángel Domínguez Gómez Vigo, 2011 Índice 1. DESCRIPCIÓN DEL HARDWARE... 3 1.1. Introducción... 3 1.2. Recursos de memoria...

Más detalles

BLOQUE 3. Enrique Mandado Pérez María José Moure Rodríguez. Microcontroladores

BLOQUE 3. Enrique Mandado Pérez María José Moure Rodríguez. Microcontroladores SISTEMAS ELECTRÓNICOS DIGITALES BLOQUE 3 MICROCONTROLADORES (PARTE 4) DESARROLLO DE SISTEMAS ELECTRÓNICOS DIGITALES Interrupciones,Temporizadores/Contadores y Puerto serie Enrique Mandado Pérez María José

Más detalles

Temporizadores y contadores en tiempo real: El módulo Timer0 y el prescaler del PIC

Temporizadores y contadores en tiempo real: El módulo Timer0 y el prescaler del PIC Temporizadores y contadores en tiempo real: El módulo Timer0 y el aler del PIC 1. Introducción...1 2. Estructura del Timer0...1 3. Funcionamiento del Timer0...2 3.1. Entrada de reloj del modulo Timer0...

Más detalles

INTERRUPCIONES. Existen 256 interrupciones En el modo real cada una tiene un vector asociado Vectores de 4 bytes: segmento + offset 32 F0 50 8A

INTERRUPCIONES. Existen 256 interrupciones En el modo real cada una tiene un vector asociado Vectores de 4 bytes: segmento + offset 32 F0 50 8A Tres tipos de interrupciones: Internas (TRAPS) Externas (HARDWARE) Software Existen 256 interrupciones En el modo real cada una tiene un vector asociado Vectores de 4 bytes: segmento + offset... 0000:0008

Más detalles

INTERRUPCIONES. La comunicación asíncrona de los sistemas periféricos con la CPU, en ambos sentidos, se puede establecer de dos maneras fundamentales:

INTERRUPCIONES. La comunicación asíncrona de los sistemas periféricos con la CPU, en ambos sentidos, se puede establecer de dos maneras fundamentales: INTERRUPCIONES La comunicación asíncrona de los sistemas periféricos con la CPU, en ambos sentidos, se puede establecer de dos maneras fundamentales: a)consultas (POLLING): Se comprueban cíclicamente,

Más detalles

TUTORIAL PRIMERA PARTE: GENERACIÓN DE UN RETARDO CON TIMER.

TUTORIAL PRIMERA PARTE: GENERACIÓN DE UN RETARDO CON TIMER. 1 TUTORIAL OBJETIVOS Familiarizarse con el TMR0 como contador de pulsos internos y generador de retardos. Conocer el método del polling para verificar banderas de dispositivos. Crear y manipular variables

Más detalles

Tablas familia MCS-51 (8051)

Tablas familia MCS-51 (8051) Tablas familia MCS-5 (805) y detalles para el Atmel AT89C5RE Informática Industrial Ingeniería Técnica Industrial, esp. Electrónico Departamento de Informática de Sistemas y Computadores - DISCA Escuela

Más detalles

Tema. Módulo Captura Comparación Modulación n de Achura de Pulsos. C. F. G.S. D.P.E. Módulo de Proyectos 1

Tema. Módulo Captura Comparación Modulación n de Achura de Pulsos. C. F. G.S. D.P.E. Módulo de Proyectos 1 Tema Módulo Captura Comparación Modulación n de Achura de Pulsos C. F. G.S. D.P.E. Módulo de Proyectos 1 Módulo de Captura/ aptura/comparación/ n/pwm Los microcontroladores de la familia 16F87X disponen

Más detalles

El TIMER 0. (c) Domingo Llorente 2010 1

El TIMER 0. (c) Domingo Llorente 2010 1 El TIMER 0 (c) Domingo Llorente 2010 1 Características Se trata de un registro de 8 bits. (SFR: 01h, 101h) Puede trabajar como contador o temporizador. Se puede leer o escribir en él. Dispone de un preescaler

Más detalles

EL SISTEMA DE INTERRUPCIONES

EL SISTEMA DE INTERRUPCIONES EL SISTEMA DE INTERRUPCIONES Resumen de contenidos 1 - Objetivos 2 - Introducción 3 - Estructura de las interrupciones 4 - Registros involucrados y fuentes de interrupción 5 - Estructura de los niveles

Más detalles

Control Digital en PC con MS-DOS

Control Digital en PC con MS-DOS Control Digital en PC con MS-DOS Abel Alberto Cuadrado Vega 19 de abril de 2006 1. Introducción Un PC puede ser utilizado para realizar un sistema de control digital. Para ello necesita lo siguiente: tarjeta

Más detalles

Diseño y construcción de la base de un robot móvil autónomo gobernada por microcontrolador

Diseño y construcción de la base de un robot móvil autónomo gobernada por microcontrolador Diseño y construcción de la base de un robot móvil autónomo gobernada por microcontrolador Mauro Silvosa Rivera Tutor: Carlos Vázquez Regueiro OBJETIVOS: Diseño y construcción de una base de un robot móvil

Más detalles

DESCRIPCION DEL SITEMA MASTER.

DESCRIPCION DEL SITEMA MASTER. DESCRIPCION DEL SITEMA MASTER. ESTRUCTURA. El sistema MASTER (Sistema Modular para Control Adaptativo en Tiempo Real) se ha implementado en base a un computador compatible PC-AT, dotado de una tarjeta

Más detalles

Tema 14. Interrupciones. Las. C. F. G.S. D.P.E. Módulo de Proyectos 1

Tema 14. Interrupciones. Las. C. F. G.S. D.P.E. Módulo de Proyectos 1 Tema 14 Las Interrupciones C. F. G.S. D.P.E. Módulo de Proyectos 1 Los PIC de la familia 16F8X poseen 4 fuentes de interrupción: Interrupción externa a través del pin RB0/INT Interrupción por overflow

Más detalles

Unidad 1: Conceptos generales de Sistemas Operativos.

Unidad 1: Conceptos generales de Sistemas Operativos. Unidad 1: Conceptos generales de Sistemas Operativos. Tema 2: Estructura de los sistemas de computación. 2.1 Funcionamiento de los sistemas de computación. 2.2 Ejecución de instrucciones e interrupciones

Más detalles

Cuestionario: Programación en C y máscaras (II)

Cuestionario: Programación en C y máscaras (II) Este documento es un autotest de ayuda enmarcado en la asignatura Informática Industrial y corresponde al tema Programación en C, pero es abierto y puede servir para entender el funcionamiento básico de

Más detalles

AUTOMATIZACION. Reconocer la arquitectura y características de un PLC Diferenciar los tipos de entradas y salidas

AUTOMATIZACION. Reconocer la arquitectura y características de un PLC Diferenciar los tipos de entradas y salidas AUTOMATIZACION GUIA DE TRABAJO 2 DOCENTE: VICTOR HUGO BERNAL UNIDAD No. 3 OBJETIVO GENERAL Realizar una introducción a los controladores lógicos programables OBJETIVOS ESPECIFICOS: Reconocer la arquitectura

Más detalles

Gestión digital sencilla de controladores de fuentes de alimentación analógicas

Gestión digital sencilla de controladores de fuentes de alimentación analógicas COMENTARIO TECNICO Gestión digital sencilla de controladores de fuentes de alimentación analógicas Por Josh Mandelcorn, miembro del equipo técnico de Texas Instruments Normalmente, el control digital de

Más detalles

CAN-101, HT6P20x2 Encoder para aplicaciones remotas de control

CAN-101, HT6P20x2 Encoder para aplicaciones remotas de control Nota de Aplicación: CAN-101 Título: HT6P20x2 Encoder para aplicaciones remotas de control Autor: Ing Iván C Sierra Revisiones Fecha Comentarios 0 28/01/13 En esta oportunidad le presentamos un nuevo encoder,

Más detalles

UNIVERSIDAD TECNICA FEDERICO SANTA MARIA DEPARTAMENTO DE ELECTRONICA Diseño con Microcontroladores

UNIVERSIDAD TECNICA FEDERICO SANTA MARIA DEPARTAMENTO DE ELECTRONICA Diseño con Microcontroladores WATCHDOG TIMER El watchdog timer es un temporizador de 16 bit que puede ser usado como watchdog o por intervalos de tiempo. Al iniciarse un programa, el watchdog timer está activo y configurado por defecto

Más detalles

Control, Instrumentación e Instalaciones Ingeniería Ambiental

Control, Instrumentación e Instalaciones Ingeniería Ambiental Control, Instrumentación e Instalaciones Ingeniería Ambiental TEMA 3. LABORATORIO. El Autómata Siemens S7-300. Programación Básica Alfredo Rosado Curso Académico 2010-2011 Control, Instrumentación e Instalaciones.

Más detalles

Señal de petición de Interrupción

Señal de petición de Interrupción Consideren una tarea que require tomar caracteres desde un teclado y mostrarlos en la pantalla de un monitor. La tasa de transferencia desde un teclado a un computador está limitado por la velocidad del

Más detalles

TEMA 2. Interrupciones y periféricos básicos

TEMA 2. Interrupciones y periféricos básicos TEMA 2 Interrupciones y periféricos básicos INDICE 1. Interrupciones 1. Fuentes y habilitación de interrupciones 2. Vectores de interrupción 3. Prioridad y anidamiento 4. Registros de configuración 5.

Más detalles

Programación del Timer1 para la captura de flancos

Programación del Timer1 para la captura de flancos Basic Express Nota de aplicación Programación del Timer1 para la captura de flancos El temporizador Timer1 y el pin de entrada El procesador BasicX incluye un temporizador integrado denominado Timer1.

Más detalles

STEP 7 INDICE. Contadores rápidos Restricciones en el uso de los contadores rápidos HSC0, HSC3, HSC4, HSC5

STEP 7 INDICE. Contadores rápidos Restricciones en el uso de los contadores rápidos HSC0, HSC3, HSC4, HSC5 Programación n de Autómatas STEP 7 Contadores Rápidos R (HSC) ISA-UMH 1 INDICE Introducción Contadores rápidos Restricciones en el uso de los contadores rápidos HSC0, HSC3, HSC4, HSC5 Utilización de los

Más detalles

SISTEMAS ELECTRÓNICOS AVANZADOS. ING. TÉC. INDUSTRIAL ELECTRÓNICO

SISTEMAS ELECTRÓNICOS AVANZADOS. ING. TÉC. INDUSTRIAL ELECTRÓNICO INTERRUPCIONES Interrumpen la ejecución de un programa y pasan a la rutina de servicio del evento que provoca la interrupción. El vector de interrupción se encuentra en la dirección 04H de la memoria de

Más detalles

Estructura de Computadores

Estructura de Computadores Estructura de Computadores Tema 4. El procesador Departamento de Informática Grupo de Arquitectura de Computadores, Comunicaciones y Sistemas UNIVERSIDAD CARLOS III DE MADRID Contenido Elementos de un

Más detalles

Programación de Microcontroladores

Programación de Microcontroladores Programación de Microcontroladores Simulación en Crocodile Technology Práctica Nº 1 Encender un led cuando arranque el microcontrolador. Práctica Nº 2 Encender un led tres veces consecutivas. 1 Práctica

Más detalles

Cursos de Perfeccionamiento

Cursos de Perfeccionamiento www.infoplc.net 1 INDICE Introducción Contadores rápidos Restricciones en el uso de los contadores rápidos HSC0, HSC3, HSC4, HSC5 Utilización de los contadores rápidos Direccionamiento de los contadores

Más detalles

podemos enfocar al funcionamiento del robot, es decir la parte de electrónica. Para que el

podemos enfocar al funcionamiento del robot, es decir la parte de electrónica. Para que el CAPÍTULO 4 Funcionamiento del Robot Después de analizar paso a paso el diseño y funcionamiento de la interfase, nos podemos enfocar al funcionamiento del robot, es decir la parte de electrónica. Para que

Más detalles

2º CURSO INGENIERÍA TÉCNICA EN INFORMÁTICA DE GESTIÓN TEMA 5 ENTRADA/SALIDA. JOSÉ GARCÍA RODRÍGUEZ JOSÉ ANTONIO SERRA PÉREZ Tema 5.

2º CURSO INGENIERÍA TÉCNICA EN INFORMÁTICA DE GESTIÓN TEMA 5 ENTRADA/SALIDA. JOSÉ GARCÍA RODRÍGUEZ JOSÉ ANTONIO SERRA PÉREZ Tema 5. ARQUITECTURAS DE COMPUTADORES 2º CURSO INGENIERÍA TÉCNICA EN INFORMÁTICA DE GESTIÓN TEMA 5 ENTRADA/SALIDA JOSÉ GARCÍA RODRÍGUEZ JOSÉ ANTONIO SERRA PÉREZ Tema 5. Unidad de E/S 1 Unidad de E/S Indice Introducción.

Más detalles

Operaciones con Temporizadores

Operaciones con Temporizadores Operaciones con Temporizadores S7-300/400 Los temporizadores permiten distintas operaciones: Funcionamiento en un modo determinado. Borrar la temporización. Re-arrancar un temporizador (FR). Consultar

Más detalles

Introducción a Arduino

Introducción a Arduino 9 de Noviembre de 2012 Indice-I Plataforma Estándar Electrónica IDE Conceptos básicos electrónica Ley de Ohm y efecto Joule Ruido, puntos sin conexión y efecto rebote Semiconductores Conceptos básicos

Más detalles

Tema 2: Programación de PLCs

Tema 2: Programación de PLCs ema 2: Programación de PLCs 1. SEP 7 2. PROGRAMACIÓN BÁSICA AWL Introducción Operaciones lógicas a nivel de bit Marcas Simbólicos Flancos emporizadores Diagnosis e información del sistema Contadores Carga

Más detalles

TEMA III - Interrupciones en Sistemas en Tiempo Real

TEMA III - Interrupciones en Sistemas en Tiempo Real 1 TEMA III - Interrupciones en Sistemas en Tiempo Real 3.1. Introducción Definición. Objetivo. Mecanismo básico. Ejemplo. Muestreo o polling. 3.2. Interrupciones Simples Componentes. Mecanismo. Ejemplo.

Más detalles

Departamento de Ingeniería de Sistemas y Automática TEMPORIZADORES, CONTADORES Y ACUMULADORES

Departamento de Ingeniería de Sistemas y Automática TEMPORIZADORES, CONTADORES Y ACUMULADORES Departamento de Ingeniería de Sistemas y Automática TEMPORIZADORES, CONTADORES Y ACUMULADORES 1 Acumuladores 2 Acumuladores 3 Acumuladores : Operaciones de carga y transferencia 4 Acumuladores 5 Temporizadores

Más detalles

Temporizadores y contadores en tiempo real: El módulo Timer0 del PIC.

Temporizadores y contadores en tiempo real: El módulo Timer0 del PIC. Temporizadores y contadores en tiempo real: El módulo Timer0 del PIC. 1. Introducción... 1 2. Funcionamiento del Timer0... 1 2.1. Estructura general del Timer0...2 2.2. Entrada de reloj del modulo Timer0...2

Más detalles

6. TARJETA TELEFÓNICA: MARCACIÓN, DETECCIÓN DE PASO A FALTA, TONOS, PULSOS, INTERRUPCIÓN

6. TARJETA TELEFÓNICA: MARCACIÓN, DETECCIÓN DE PASO A FALTA, TONOS, PULSOS, INTERRUPCIÓN 6. TARJETA TELEFÓNICA: MARCACIÓN, DETECCIÓN DE PASO A FALTA, TONOS, PULSOS, INTERRUPCIÓN 6.1 INTRODUCCIÓN En este capítulo se comentan las funciones relacionadas con la tarjeta interfaz de línea telefónica

Más detalles

REGISTROS DE DESPLAZAMIENTO

REGISTROS DE DESPLAZAMIENTO REGISTROS DE DESPLAZAMIENTO Es un circuito digital que acepta datos binarios de una fuente de entrada y luego los desplaza, un bit a la vez, a través de una cadena de flip-flops. Este sistema secuencial

Más detalles

Práctica 1. Programación y Simulación de un PLC

Práctica 1. Programación y Simulación de un PLC Automatización Avanzada (37800) Máster en Automática y Robótica Práctica 1. Programación y Simulación de un PLC Francisco Andrés Candelas Herías Grupo de Innovación Educativa en Automática 2011 GITE IEA

Más detalles

Sesión 8 Sensor de Ultrasonido

Sesión 8 Sensor de Ultrasonido Sesión 8 Sensor de Ultrasonido FIG. 16.1 - ANIMALES ULTRASÓNICOS. FUENTE: [1] Qué aprenderemos en esta sesión? Recordemos Para esta sesión, necesitaremos un aporte de la sesión pasada, ya que, así como

Más detalles

CAPITULO 4. Inversores para control de velocidad de motores de

CAPITULO 4. Inversores para control de velocidad de motores de CAPITULO 4. Inversores para control de velocidad de motores de inducción mediante relación v/f. 4.1 Introducción. La frecuencia de salida de un inversor estático está determinada por la velocidad de conmutación

Más detalles

18. Camino de datos y unidad de control

18. Camino de datos y unidad de control Oliverio J. Santana Jaria Sistemas Digitales Ingeniería Técnica en Informática de Sistemas Curso 2006 2007 18. Camino de datos y unidad de control Un La versatilidad una característica deseable los Los

Más detalles

6-REGISTROS DEL 8086 Y DEL 80286

6-REGISTROS DEL 8086 Y DEL 80286 ESTRUCTURA DE COMPUTADORES I (Capítulo 6: Los registros del microprocesador 8086) 1/7 6-REGISTROS DEL 8086 Y DEL 80286 6.1 INTRODUCCIÓN: Dentro del procesador existen unos contenedores especiales de 16

Más detalles

INTRODUCCIÓN. Interrupciones.

INTRODUCCIÓN. Interrupciones. Interrupciones. INTRODUCCIÓN Una interrupción es la ocurrencia de un evento o condición la cuál causa una suspensión temporal del programa mientras la condición es atendida por otro subprograma. Una interrupción

Más detalles

Control y temporización Comunicación con la CPU Comunicación con el dispositivo externo Almacén temporal de datos Detección de errores

Control y temporización Comunicación con la CPU Comunicación con el dispositivo externo Almacén temporal de datos Detección de errores UNIDAD DE ENTRADA SALIDA Conceptos Unidad de entrada-salida (E/S): Elemento que proporciona un método de comunicación eficaz entre el sistema central y el periférico. Funciones Control y temporización

Más detalles

Usando los Codificadores Cuadráticos

Usando los Codificadores Cuadráticos Usando los Codificadores Cuadráticos Autor: Ing. Carlos Narváez Universidad de Oriente email: cnarvaez@udo.edu.ve Introducción El presente trabajo es una introducción a los denominados codificadores cuadráticos,

Más detalles

CAPÍTULO 3. Las principales funciones del microcontrolador son: adquirir por medio del A/D y también, mostrar mensajes de pesos y voltaje en el LCD.

CAPÍTULO 3. Las principales funciones del microcontrolador son: adquirir por medio del A/D y también, mostrar mensajes de pesos y voltaje en el LCD. CAPÍTULO 3 3. DISEÑO DEL SOFTWARE. La programación del PIC se realizó en lenguaje C, usando el compilador mikroc PRO for PIC. Este compilador se utilizó, ya que tiene una versión demo muy buena, además

Más detalles

5. SECCIÓN DEL MICROCONTROLADOR (PROGRAMACIÓN)

5. SECCIÓN DEL MICROCONTROLADOR (PROGRAMACIÓN) 5. SECCIÓN DEL MICROCONTROLADOR (PROGRAMACIÓN) En este capítulo se describe la parte más robusta del proyecto, la cual es la programación del microcontrolador. Ésta se compone esencialmente de dos partes,

Más detalles

Maqueta: Osciloscopio y generador

Maqueta: Osciloscopio y generador Maqueta: Osciloscopio y generador 1. Introducción Esta práctica se divide en dos partes. En la primera se desarrolla un osciloscopio digital basado en el ADC del 80C537 y la pantalla del PC. En la segunda

Más detalles

Competencia de Robótica R2-D2 2014

Competencia de Robótica R2-D2 2014 Competencia de Robótica R2-D2 2014 Categoría: Velocista Nombre del Robot: Miyagui Institución: UTN-FRA Participantes: Calvo, Juan Ignacio Schuster, Mariela Medina, Sergio Daniel Índice 1. Introducción...

Más detalles

Sistemas de Numeración Operaciones - Códigos

Sistemas de Numeración Operaciones - Códigos Sistemas de Numeración Operaciones - Códigos Tema 2 1. Sistema decimal 2. Sistema binario 3. Sistema hexadecimal 4. Sistema octal 5. Conversión decimal binario 6. Aritmética binaria 7. Complemento a la

Más detalles

Guía de la Práctica 1

Guía de la Práctica 1 Guía de la Práctica 1 Este documento tiene por objeto fijar las bases y criterios por los que se regirá la realización de la Práctica 1 de la asignatura del Título de Grado en Ingeniería Informática de

Más detalles

Práctica 2: Operaciones Binarias

Práctica 2: Operaciones Binarias ITESM Campus Monterrey Depto. de Ing. Eléctrica Laboratorio de Teleingeniería Práctica 2: Operaciones Binarias Objetivo: Comprender las operaciones lógicas básicas, como las compuertas AND, OR, y NOT.

Más detalles

Informática Industrial (II)

Informática Industrial (II) Informática Industrial (II) 3º Ingeniería Técnica Industrial (Especialidad en Electrónica). E. U. Politécnica. Universidad de Sevilla. 3-mayo Práctica STR2: Entorno de desarrollo para un SOTR (Sistema

Más detalles

PUERTOS DE ENTRADA Y SALIDA

PUERTOS DE ENTRADA Y SALIDA PUERTOS DE ENTRADA Y SALIDA El microcontrolador Z8 PLUS dedica 14 líneas para puertos de entrada y salida. Estas líneas están agrupadas en dos puertos conocidos como el Puerto A y el Puerto B. El puerto

Más detalles

Introducción a los Sistemas Operativos

Introducción a los Sistemas Operativos Introducción a los Sistemas Operativos 2º Ingeniero de Telecomunicación (Sonido e Imagen) Departamento de Ingeniería Telemática Universidad Carlos III de Madrid 2 Qué vamos a ver hoy? Qué es un sistema

Más detalles

Anexo B. Comunicaciones entre mc y PC

Anexo B. Comunicaciones entre mc y PC Anexo B Comunicaciones entre mc y PC En este apartado se hará hincapié en los comandos para el manejo del módulo de comunicaciones desde el PC. Conociendo estos comando se podrá realizar una aplicación

Más detalles

Problema: Barrera de Garaje

Problema: Barrera de Garaje PROBLEMAS RESUELTOS EN LENGUAJE LITERAL ESTRUCTURADO (ST) Problema: Barrera de Garaje Se pretende automatizar el siguiente funcionamiento: Al oprimir el pulsador, la barrera sube. Cuando llega arriba permanecerá

Más detalles

Lector de códigos de barras con microcontrolador Motorola HC11

Lector de códigos de barras con microcontrolador Motorola HC11 Lector de códigos de barras con microcontrolador Motorola HC11 Alumno: Pinat Gastón José Legajo: 10.813 Introducción: Los códigos de barras son ampliamente utilizados por los fabricantes para identificar

Más detalles

Tema N 2.- Tiempo de respuesta de un PLC

Tema N 2.- Tiempo de respuesta de un PLC 2.1. Factores que inciden en el tiempo de respuesta del PLC. Introducción Para desarrollar aplicaciones que permitan manejar y controlar procesos en las plantas, es importante que el controlador lógico

Más detalles

1. Representación de la información en los sistemas digitales

1. Representación de la información en los sistemas digitales Oliverio J. SantanaJaria Sistemas Digitales Ingeniería Técnica en Informática de Sistemas Curso 2005 2006 1. Representación de la información en los sistemas digitales Durante Hoy Los digital tipo muchos

Más detalles

3. FUNCIONAMIENTO DE LA FUNCIONES TXD Y RXD 4. EJEMPLO DE ENVÍO DE SMS DESDE EL PLC 5. EJEMPLO DE RECEPCIÓN DE SMS EN EL PLC

3. FUNCIONAMIENTO DE LA FUNCIONES TXD Y RXD 4. EJEMPLO DE ENVÍO DE SMS DESDE EL PLC 5. EJEMPLO DE RECEPCIÓN DE SMS EN EL PLC MÓDEM-GSM INDICE 1. INTRODUCCIÓN Centro Integrado Politécnico ETI Departamento de Electricidad 2. CONFIGURACIÓN PUERTO SERIE CPU 3. FUNCIONAMIENTO DE LA FUNCIONES TXD Y RXD 4. EJEMPLO DE ENVÍO DE SMS DESDE

Más detalles

Para comenzar realizaremos el ejercicio-ejemplo de poner a titilar un led.

Para comenzar realizaremos el ejercicio-ejemplo de poner a titilar un led. PRÁCTICAS DE ARDUINO 1.- Blink-Titilar Para comenzar realizaremos el ejercicio-ejemplo de poner a titilar un led. Finalidad: Hacer que un led titile con un intervalo de un segundo es decir que se encienda

Más detalles

PRACTICA #1. Aprender a programar una interrupción software empleando C y/o Ensamblador.

PRACTICA #1. Aprender a programar una interrupción software empleando C y/o Ensamblador. PRACTICA #1 Aprender a programar una interrupción software empleando C y/o Ensamblador. Aprender a manipular dispositivos externos (8253, 8255) desde C y/o ensamblador. PROCEDIMIENTO: Vamos a programar

Más detalles

Comunicación Asíncrona

Comunicación Asíncrona Comunicación Serie 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 Microcontroladores - 3 1 Comunicación Asíncrona Bit de Comienzo (Start Bit) Bit de Fin (Stop Bit) n Bits de Datos Bit de Paridad (Par o Impar) Microcontroladores

Más detalles

Modos de ahorro de energía a en los chips CMOS

Modos de ahorro de energía a en los chips CMOS Modos de ahorro de energía a en los chips CMOS MODOS DE OPERACIÓN N DE AHORRO DE ENERGÍA Para aplicaciones donde el consumo de potencia es crítico las versiones CMOS proporcionan modos de operación de

Más detalles

Control de motores de CC

Control de motores de CC Control de motores de CC Control por modulación de ancho de Pulso (PWM) Prof: Bolaños D (versión 1-8-11) Aportes propios y de Internet Uno de los problemas más fundamentales de la robótica es el control

Más detalles

Tema 5 Sentencias de control de flujo. Fundamentos de Informática

Tema 5 Sentencias de control de flujo. Fundamentos de Informática Tema 5 Fundamentos de Informática Sentencias de Control Tipos de sentencias de control: Comprobación lógica para bifurcar el flujo de un programa. Sentencias de control condicional o alternativo Comprobación

Más detalles

El temporizador /contador Intel 8254

El temporizador /contador Intel 8254 El temporizador /contador Intel Su Arquitectura interna Modos programación Su interconexión n con un µprocesador Aplicaciones Características principales l 8C54 Frecuencia l reloj entrada 8MHz a MHz Versión

Más detalles

TEMPORIZADORES, CONTADORES Y COMPARADORES

TEMPORIZADORES, CONTADORES Y COMPARADORES Practica 2 TEMPORIZADORES, CONTADORES Y COMPARADORES Objetivos Al completar esta práctica el alumno: Será capaz de configurar y utilizar el PLC, realizar en el software del PLC control aplicando ladder

Más detalles

Características de algunos Registros de Funciones Especiales (SFR):

Características de algunos Registros de Funciones Especiales (SFR): E.T.S.I. Telecomunicación Sistemas Digitales Programables I Características de algunos Registros de Funciones Especiales (SFR): Palabra de control (PSW) CY AC FO RS1 RS0 OV - P CY: Bandera de acarreo.

Más detalles

V 11-050 W V 11-070 W

V 11-050 W V 11-070 W V 11-050 W V 11-070 W ~ 1. CARACTERÍSTICAS Características eléctricas Rango de voltaje de alimentación: 150-265V / 50-60Hz Rango de temperatura de funcionamiento:-7ºc +43ºC, Humedad: 40% 1.1.1. Panel de

Más detalles

PROYECTO DE ELECTRÓNICA

PROYECTO DE ELECTRÓNICA PROYECTO DE ELECTRÓNICA Sistema de Alarma Raúl Lapaz de Juan Francisco Javier López Alcarria 1 ÍNDICE - Objetivo:... 3 - Justificación:... 3 - Plan de trabajo:... 3 A) Montaje del circuito en protoboards:...

Más detalles

Modos de programación del módulo Easy Control

Modos de programación del módulo Easy Control Modos de programación del módulo Sfmfrvjdl!T/B! Modo de programación estándar Se puede programar a través de los botones una función de control de entre las 21 funciones posibles, seleccionándola con la

Más detalles

El soporte del sistema operativo. Hace que un computador sea más fácil de usar. Permite que los recursos del computador se aprovechen mejor.

El soporte del sistema operativo. Hace que un computador sea más fácil de usar. Permite que los recursos del computador se aprovechen mejor. El soporte del sistema operativo Objetivos y funciones del sistema operativo Comodidad Hace que un computador sea más fácil de usar. Eficiencia Permite que los recursos del computador se aprovechen mejor.

Más detalles

Universidad Autónoma de Baja California Facultad de Ingeniería Mexicali

Universidad Autónoma de Baja California Facultad de Ingeniería Mexicali Sumadores En este documento se describe el funcionamiento del circuito integrado 7483, el cual implementa un sumador binario de 4 bits. Adicionalmente, se muestra la manera de conectarlo con otros dispositivos

Más detalles

Tema IV. Unidad aritmético lógica

Tema IV. Unidad aritmético lógica Tema IV Unidad aritmético lógica 4.1 Sumadores binarios 4.1.1 Semisumador binario (SSB) 4.1.2 Sumador binario completo (SBC) 4.1.3 Sumador binario serie 4.1.4 Sumador binario paralelo con propagación del

Más detalles

VELOCIDAD DE TRANSFERENCIA A MEMORIA USB CON EL GL900.

VELOCIDAD DE TRANSFERENCIA A MEMORIA USB CON EL GL900. VELOCIDAD DE TRANSFERENCIA A CON EL GL900. El GL900-8 es un registrador rápido de 8 canales que permite la monitorización de señales a velocidades de muestreo de hasta 100Kmuestras/sg y canal. Debido a

Más detalles

INTRODUCCION A LA PROGRAMACION DE PLC

INTRODUCCION A LA PROGRAMACION DE PLC INTRODUCCION A LA PROGRAMACION DE PLC Esta guía se utilizará para estudiar la estructura general de programación de um PLC Instrucciones y Programas Una instrucción u orden de trabajo consta de dos partes

Más detalles

Pipelining o Segmentación de Instrucciones

Pipelining o Segmentación de Instrucciones Pipelining o Segmentación de Instrucciones La segmentación de instrucciones es similar al uso de una cadena de montaje en una fábrica de manufacturación. En las cadenas de montaje, el producto pasa a través

Más detalles

TEMA 4. Unidades Funcionales del Computador

TEMA 4. Unidades Funcionales del Computador TEMA 4 Unidades Funcionales del Computador Álvarez, S., Bravo, S., Departamento de Informática y automática Universidad de Salamanca Introducción El elemento físico, electrónico o hardware de un sistema

Más detalles

Práctica 4: Toma de medidas mediante tarjeta de adquisición de datos.

Práctica 4: Toma de medidas mediante tarjeta de adquisición de datos. Práctica 4: Toma de medidas mediante tarjeta de adquisición de datos. En esta práctica vamos a manejar la tarjeta de adquisición de datos PCI1202L mediante las funciones que proporciona el fabricante.

Más detalles

ACTUALIZACION MANUAL: MODO OFFLINE (Ejemplo: WINDOWS 7-32 bits):

ACTUALIZACION MANUAL: MODO OFFLINE (Ejemplo: WINDOWS 7-32 bits): ACTUALIZACION MANUAL: MODO OFFLINE (Ejemplo: WINDOWS 7-32 bits): Si el cliente no dispone de conexión a internet en el ordenador conectado a la TRS 5000 EVO, se puede dar de alta en la web de JMA, siempre

Más detalles

AUTOMATIZACIÓN INDUSTRIAL

AUTOMATIZACIÓN INDUSTRIAL 2º I.T.I. Electrónica Industrial AUTOMATIZACIÓN INDUSTRIAL PRÁCTICAS PRÁCTICA 1 El objetivo que se pretende con esta práctica es la familiarización con el autómata Simatic S7-200 así como con el programa

Más detalles

Examen Junio- Grupo A Lunes 17 de Junio - Programación en C++ Pág. 1

Examen Junio- Grupo A Lunes 17 de Junio - Programación en C++ Pág. 1 Examen Junio- Grupo A Lunes 17 de Junio - Programación en C++ Pág. 1 ÍNDICE ÍNDICE... 1 1.1 Ejercicio 1: Máquina Expendedora (3.5 ptos.)... 1 1.2 Ejercicio 2: Clase Circulo (1.0 pto.)... 3 1.3 Ejercicio

Más detalles

Microprocesadores, Tema 6:

Microprocesadores, Tema 6: Microprocesadores, Tema 6: Módulos CCP (Capturar / Comparar / PWM) Guillermo Carpintero Marta Ruiz Universidad Carlos III de Madrid Objetivos Estudiar los diferentes modos de funcionamiento de los módulos

Más detalles

Sensor de Temperatura utilizando el Starter Kit Javelin Stamp. Realizado por: Bertha Palomeque A. Rodrigo Barzola J.

Sensor de Temperatura utilizando el Starter Kit Javelin Stamp. Realizado por: Bertha Palomeque A. Rodrigo Barzola J. Sensor de Temperatura utilizando el Starter Kit Javelin Stamp Realizado por: Bertha Palomeque A. Rodrigo Barzola J. INTRODUCCION DIFERENCIAS EJEMPLOS JAVA Orientado a Objetos Multiplataforma Programar

Más detalles

Regulador PID con convertidores de frecuencia DF5, DV5, DF6, DV6. Página 1 de 10 A Regulador PID

Regulador PID con convertidores de frecuencia DF5, DV5, DF6, DV6. Página 1 de 10 A Regulador PID A Página 1 de 10 A Regulador PID INDICE 1. Regulador PID 3 2. Componente proporcional : P 4 3. Componente integral : I 4 4. Componente derivativa : D 4 5. Control PID 4 6. Configuración de parámetros del

Más detalles

SENSORES DE DISTANCIA POR ULTRASONIDOS

SENSORES DE DISTANCIA POR ULTRASONIDOS SENSORES DE DISTANCIA POR ULTRASONIDOS 1. Funcionamiento básico de los Ultrasonidos 2. Problemas con los Ultrasonidos 3. Algunas Configuraciones en Microrrobots empleando Ultrasonidos 4. Ejemplo práctico

Más detalles

Leica Application Suite

Leica Application Suite Leica Application Suite Macro Editor y Macro Runner Personalizado y automatizado 2 Las instrucciones se pueden pausar opcionalmente cuando la rutina se ejecuta para interactuar con las imágenes. Las instrucciones

Más detalles

Ensamblador. Interrupciones. Dentro de una computadora existen dos clases de interrupciones:

Ensamblador. Interrupciones. Dentro de una computadora existen dos clases de interrupciones: Ensamblador Interrupciones Definición: Una interrupción es el rompimiento en la secuencia de un programa para ejecutar un programa especial llamando una rutina de servicio cuya característica principal

Más detalles

Sistemas Operativos. Curso 2016 Procesos

Sistemas Operativos. Curso 2016 Procesos Sistemas Operativos Curso 2016 Procesos Agenda Proceso. Definición de proceso. Contador de programa. Memoria de los procesos. Estados de los procesos. Transiciones entre los estados. Bloque descriptor

Más detalles

Nociones básicas sobre adquisición de señales

Nociones básicas sobre adquisición de señales Electrónica ENTREGA 1 Nociones básicas sobre adquisición de señales Elaborado por Juan Antonio Rubia Mena Introducción Con este documento pretendemos dar unas nociones básicas sobre las técnicas de medida

Más detalles

14 - AR R AN Q U E Y P U E S T A E N M AR C H A

14 - AR R AN Q U E Y P U E S T A E N M AR C H A 14 - AR R AN Q U E Y P U E S T A E N M AR C H A D E F R E S AD O R A D E C O N T R O L N U M É R I C O C O M P U T E R I Z AD O AUTOR: Francisco Javier Fernández Torroba CENTRO TRABAJO: CIP Virgen del

Más detalles

LOS PIC16F88X: Comparadores

LOS PIC16F88X: Comparadores LOS PIC16F88X: Comparadores IES Juan de la Cierva Aprendizaje de la Electrónica a través de la Robótica Fernando Remiro Domínguez Los Comparadores Permiten comparar dos señales o tensiones analógicas y

Más detalles

Inversores De Frecuencia

Inversores De Frecuencia Inversores De Frecuencia QUÉ ES UN INVERSOR? Un inversor es un control para motores, que hace variar la velocidad a motores C.A. De inducción. Esta variación la logra variando la frecuencia de alimentación

Más detalles

Práctica No. 4 del Curso "Microcontroladores" Uso del Convertidor ADC

Práctica No. 4 del Curso Microcontroladores Uso del Convertidor ADC Objetivos Práctica No. 4 del Curso "Microcontroladores" Uso del Convertidor ADC Caracterizar el convertidor ADC del Microcontrolador MSP430 y con base en él realizar algunas aplicaciones para la medición

Más detalles