ENCICLOPEDIA DE RADIOELECTRÓNICA E INGENIERÍA ELÉCTRICA Generador multifrecuencia de doble tono (DTMF) en el AVR. Enciclopedia de radioelectrónica e ingeniería eléctrica. Enciclopedia de radioelectrónica e ingeniería eléctrica. / Telefonia Alteridad
introducción Este documento describe una técnica para generar señales DTMF (señales multifrecuencia de doble tono) utilizando cualquier microcontrolador AVR que contenga una unidad de modulación de ancho de pulso (PWM) y RAM estática. Estas señales se utilizan ampliamente en telefonía, donde se reproducen al presionar los botones de marcación de un teléfono. Para generar correctamente una señal DTMF, se deben superponer dos frecuencias: una frecuencia baja (fb) y una frecuencia alta (fa). La Tabla 1 muestra cómo se mezclan diferentes frecuencias para producir tonos DTMF cuando se presionan diferentes teclas.
Tabla 1. Matriz de modelado de tonos
Las filas de la Tabla 1 muestran los valores de baja frecuencia y las columnas muestran los valores de alta frecuencia. Por ejemplo, la matriz muestra que cuando presiona el botón “5”, se deben mezclar las frecuencias fb = 770 Hz y fa = 1336 Hz. Como resultado de la suma de dos señales sinusoidales de diferentes frecuencias, se forma una señal DTMF (1) donde la relación de amplitudes K=Ab/Aa las señales de origen deben cumplir la condición (2) Principio de funcionamiento Además de la información general sobre el uso de la modulación por ancho de pulso, a continuación se mostrará cómo la modulación por ancho de pulso le permite generar señales sinusoidales. El siguiente párrafo describe cómo utilizar la frecuencia de conmutación base para obtener diferentes frecuencias. Después de revisar los fundamentos teóricos, se dará una descripción del propio generador de señales DTMF. Generación de ondas sinusoidales. Dependiendo de la relación entre la duración de los niveles de voltaje alto VH y bajo VL, el valor promedio en la salida PWM cambia. Si la relación entre las duraciones de ambos niveles se mantiene constante, como resultado se generará un nivel de voltaje VAV constante. La Figura 2 muestra una señal modulada en ancho de pulso.
El nivel de voltaje está determinado por la expresión: (3) Se puede generar una señal sinusoidal siempre que el valor promedio del voltaje generado por la modulación de ancho de pulso cambie en cada ciclo PWM. La relación entre niveles alto y bajo debe establecerse de acuerdo con el nivel de voltaje de la onda sinusoidal en el momento correspondiente. La Figura 3 ilustra este proceso. Los datos de origen de PWM se calculan para cada uno de sus períodos y se registran en la tabla de conversión (TC). La Figura 3 también ilustra la relación entre la frecuencia de la onda sinusoidal fundamental y el número de muestras. Cuanto mayor sea el número de muestras (Nc), mayor será la precisión del modelado de la señal resultante: (4)
La frecuencia PWM depende de la resolución PWM. Con una resolución de 8 bits, el valor final (parte superior del recuento) del temporizador es 0xFF (255). Porque El cronómetro cuenta hacia adelante y hacia atrás, luego este valor debe duplicarse. Por lo tanto, la frecuencia PWM se puede calcular dividiendo la frecuencia del reloj del temporizador fCK por 510. Por lo tanto, con una frecuencia de reloj del temporizador de 8 MHz, la frecuencia PWM resultante será de 15.6 kHz.
Cambiar la frecuencia de una señal sinusoidal Supongamos que las muestras sinusoidales se leen de la tabla de búsqueda no de forma secuencial, sino una a la vez. En este caso, a la misma frecuencia de muestreo, se generará una señal con el doble de frecuencia (ver Figura 4).
Por analogía, si lees no cada segundo valor, sino cada tercero, cuarto, quinto (respectivamente, el ancho del paso es 3, 4, 5...), etc. es posible generar frecuencias Nc en el rango [1/T Hz .. 0 Hz]. Tenga en cuenta que para altas frecuencias la forma de onda resultante no será sinusoidal. El ancho del paso lo denotamos según la tabla de conversión como XSWDonde (5) El cálculo de la posición actual en el TP para el siguiente período de PWM (cuando el temporizador se desborda) se realiza utilizando la expresión (6). Nuevo valor en la posición XLUT depende de su estado anterior en la posición X'LUT añadiendo ancho de paso XSW (6)
Agregar diferentes frecuencias para obtener una señal DTMF La señal DTMF se puede generar usando las expresiones (1) y (2). Para simplificar las operaciones aritméticas, el valor del coeficiente K se toma igual a 0.75 para reemplazar la operación aritmética con cambios lógicos. Teniendo en cuenta la expresión (6), el valor actual para el control PWM se puede calcular mediante la expresión: (7) y teniendo en cuenta que Xluta=X'luta + XSWa,XLUTb=X'LUTb + XSWb, finalmente escribimos (8) Implementando un Generador DTMF Este apéndice examina la construcción de un generador de tonos DTMF utilizando una salida PWM de 8 bits (OC1A) y una tabla con 128 muestras de función sinusoidal (Nc), cada una especificada por 7 bits (n). Las siguientes expresiones muestran esta dependencia y también cómo calcular las entradas de la tabla de búsqueda: (9) La ventaja de utilizar 7 bits es que la suma de los valores de las señales de alta y baja frecuencia tiene un tamaño de un byte. Para admitir el conjunto completo de tonos DTMF, se deben calcular e ingresar en la tabla de búsqueda 8 valores para cada frecuencia DTMF de la Tabla 1. Para lograr una mayor precisión, se implementó la siguiente solución: los valores calculados usando la expresión 5 requieren solo 5 bytes. Para utilizar los 8 bytes, lo que reducirá los errores de redondeo, este valor se multiplica por 8. El puntero a la tabla de búsqueda se escribe de la misma manera. Pero en este caso se necesitan dos bytes para almacenar 8 veces el valor. Esto significa que se deben realizar 3 desplazamientos a la derecha y una operación de módulo de base Nc (multiplicación lógica por Nc-1) antes de usar estos bytes como puntero a los valores de onda sinusoidal en (10)
La señal PWM se genera en el pin OC1A (PD5). Un filtro de salida adicional ayudará a que la señal sea más compatible con la forma de onda sinusoidal. Al disminuir la frecuencia PWM, puede que sea necesario utilizar un filtro con una respuesta de frecuencia más pronunciada para obtener un buen resultado. La conexión del teclado se muestra en la Figura 1. El funcionamiento del teclado debe organizarse de tal manera que sea posible determinar la tecla presionada. Esto se puede hacer usando el siguiente algoritmo:
Nota: En STK200, las resistencias están conectadas en serie entre los pines del conector PORTB y los pines del microcontrolador BP5, PB6 y PB7 (consulte el diagrama STK200). Esto causará problemas si el teclado está conectado al conector PORTB. La Figura 6 ilustra el funcionamiento de la subrutina para determinar la tecla presionada. Dependiendo de la tecla presionada, se determina la duración del intervalo. La rutina de interrupción utiliza este valor para calcular la configuración de PWM para las dos ondas sinusoidales de tono DTM. El procedimiento de manejo de interrupciones se muestra en las Figuras 7 y 8. Esta rutina calcula un valor para compararlo con la salida del temporizador para el siguiente período de PWM. La rutina de interrupción primero calcula la posición del siguiente valor de muestra en la tabla de búsqueda y lee el valor almacenado allí. La posición de la muestra en la tabla de búsqueda está determinada por el ancho del pulso y el ancho del pulso real está determinado por la frecuencia generada. El valor final que se escribe en el registro de comparación del temporizador se determina mediante la fórmula (7), que tiene en cuenta los valores de muestra de ambas frecuencias DTMF.
Publicación: cxem.net Ver otros artículos sección Telefonia. Lee y escribe útil comentarios sobre este artículo. Últimas noticias de ciencia y tecnología, nueva electrónica: Cuero artificial para emulación táctil.
15.04.2024 Arena para gatos Petgugu Global
15.04.2024 El atractivo de los hombres cariñosos.
14.04.2024
Otras noticias interesantes: ▪ Aguja encontrada en Groenlandia ▪ Júpiter desvía cometas y envía asteroides a la Tierra ▪ Paneles solares para FlixBus Feed de noticias de ciencia y tecnología, nueva electrónica
Materiales interesantes de la Biblioteca Técnica Libre: ▪ sección del sitio Amplificadores de potencia. Selección de artículos ▪ artículo Enfermedad venérea. Fundamentos de una vida segura ▪ artículo ¿Qué hay en el área de EE. UU., cuyo código de área es 321? Respuesta detallada ▪ artículo Especialista en actividad económica exterior. Descripción del trabajo ▪ Artículo Optoacopladores. Parte 2. Enciclopedia de radioelectrónica e ingeniería eléctrica.
Deja tu comentario en este artículo: Todos los idiomas de esta página Hogar | Biblioteca | Artículos | Mapa del sitio | Revisiones del sitio www.diagrama.com.ua |