decodificador telefónico

Download Decodificador Telefónico

Post on 23-Jun-2015

2.591 views

Category:

Documents

5 download

Embed Size (px)

DESCRIPTION

Una practica sobre como configurar el DTMF 8870

TRANSCRIPT

Arquitectura de Sistemas

Arquitectura de Sistemas

Ingeniera en Sistemas Computacionales7mo Cuatrimestre

Universidad Latino

Dual Tone Multi Frecuency

Arquitectura de Sistemas

Arquitectura de Sistemas

Decodificador Telefnico (DTMF)

Dual Tone Multi Frecuency

Arquitectura de Sistemas

Decodificador Telefnico.

DTMF: Dual Tone Multi Frecuency // Multi Frecuencia de Doble Tono. DataSheet del MT8870:

Material para armar el MT8870.Dual Tone Multi Frecuency

Arquitectura de Sistemas

Chip MC8870. 1 Cristal de 3.57 MHz. Resistencias: 2 de 120Kohms, 4 de 330Kohms y 1 de 390Kohms. 2 Capacitor de .1uF 1 Protoboard. 1 telfono. 2 cables listos RJ11 (cable de telfono). 1 contacto de multi seal telefnica. 4 Leds.

Ahora, nos guiaremos del siguiente diagrama para armar nuestro circuito DTMF.

Q1 a la Q4 no olvidemos que son las salidas, en el cual le meteremos Leds para representar en binario la seal del teclado del telfono, tampoco olvidemos que las resistencias de 330Kohms acompaan a los Leds. StD o el Pin 15, es una de las entradas del telfono, como tambin el Audio In, que son los pins 2 y 3.

C1, C2 = Capacitor de 1.uF. R1, R2 y R3= resistencias. X-Tal= Cristal de 3.57 Mhz.

Dual Tone Multi Frecuency

Arquitectura de Sistemas

El Microchip MT8870, es el Decodificador DTMF, su labor es convertir la doble seal de tonos que emite el teclado del telfono, ya que el telfono maneja frecuencias de 697 a 1633 MHz, entonces, el DTMF se basa en ese rango, ya que cada tecla del telfono emite una cierta doble seal de frecuencia lo que determina que tecla es la que fue presionada, una vez que el DTMF lo capture lo interpreta en 2 partes: Fila y Columna como se muestra en la siguiente imagen.

sta tabla, representa como el DTMF reconoce cada tecla por medio de coordenadas, segn la tecla que se presione en el telfono se emite la seal al DTMF, lo que este comienza a decodificarlo y genera el resultado de forma binaria, lo que as representan sus pines 11, 12, 13, y 14. (Q1, Q2, Q3 y Q4).

Dual Tone Multi Frecuency

Arquitectura de Sistemas

Podemos observar en la imagen el Circuito Ya armado, aunque algo desordenado, pero por ahora solo queremos ver la funcionalidad del circuito, ms tarde le daremos un retoque.

Dual Tone Multi Frecuency

Arquitectura de Sistemas

Podemos observar las salidas de los Leds los Qs, los Capacitores de .1uF que son la spastillas rojas, el cristal de color plata, el microchip MT8870.

Pero bueno, aqu podemos observar una mejor presentacin que la anterior, aqu solo le cambiamos a Leds Azules, ya que es un color muy bonito, jejeje, en fin, no le prestemos atencin alos otros cables naranjas que adems de dar salida a los Leds se lanzan a las entradas del microchip: PIC16f877A, quien es el que nos permitir unir otros componentes para poder convertir la seal binaria del MT8870 e interpretarla por medio de la PC, sin tener que ver la representacin binario si no el nmero real. Pero eso no nos importa por ahora.

Dual Tone Multi Frecuency

Arquitectura de Sistemas

Las siguientes imgenes muestras como el circuito reconoce de forma binaria cada tecla del telfono, observemos:

Tecla 1

Tecla 2

Tecla 3

Tecla 4

Tecla 5

Tecla6

Tecla 7

Tecla 8

Dual Tone Multi Frecuency

Arquitectura de Sistemas

Tecla 9.

Tomemos en cuenta que para que esto funcione debemos tener una seal de telfono, es decir una lnea, ya que sin este no podramos poner a prueba el funcionamiento microchip. Para ve el video, visite: http://www.youtube.com/watch?v=klKra0ZMMDk

Dual Tone Multi Frecuency

Arquitectura de Sistemas

Detector de timbrado y descolgado

Este circuito de colgado y descolgado su labor es detectar cuando el telfono est colgado o descolgado, dicha operacin arroja una seal o un cambio de voltaje, el telfono maneja un voltaje de 48vlts, lo que necesitaremos ser hacer un puente de diodos para poder tener un voltaje de referencia fija , lo que nos permitir polarizar el transistor BC548, el transistor nos proporcionara dar una salida de uno lgico o lo que es equivalente a 5vlts. Es decir cuando el telfono est colgado nos arroja un o lgico, es decir nuestra terminal o en este caso nuestro Led no se encender, a partir de que descolguemos recibiremos el 1 lgico. Para elaborar este circuito necesitamos: Un puente de diodos 2w005M. Un led. 3 recistencias de, 1 de 100kohms, 1 de 330 kohms, 1 de 2.2 kohms. Un transistor BC548. Un Protoboard.

Ahora observemos los datasheet del transistor BC548.

Dual Tone Multi Frecuency

Arquitectura de Sistemas

En el siguiente diagrama observaremos como se deben conectar las partes.

Detector de colgado y descogado. Ahora observemos las imgenes:

Diagrama de colgado y descolgado finalizado.

En estas imgenes podemos ver que el resultado fue inverso, ya que comet el error de conectar al revs el led, basta con invertir la polaridad.

Dual Tone Multi Frecuency

Arquitectura de Sistemas

Decodificacin de Tonos y envi por el Puerto Serial con PIC16F877ADescripcin: Programacin de la captura de las seales captadas por el decodificado de tonos del telfono, lo que hace es esperar siempre la entrada de tonos para poderlos mandar por el puerto serial. El Programa est hecho con el compilador Proton IDE y la Simulacin del circuito esta hecha con Proteus como muestra las siguientes imgenes.

Figura 1.- Entorno de Proton donde se muestra parte del programa

Dual Tone Multi Frecuency

Arquitectura de Sistemas

Figura 2 Simulacion en Proteus donde se muestra los componentes Componestes utilizados en la simulacin: Cristal de 4mhz Capacitores Resistencias Circuito max232 PIC16F877A Puerto COM Botones Los Botones sirvieron para simular la entrada de las seales de entrada de los tonos de teclado. Para simular el puerto serial se mostro el siguiente Programa Virtual Serial Port Driver, Como muestra en la siguiente imagen

Donde muestra dos puertos emulados como muestra en la siguiente ImagenDual Tone Multi Frecuency

Arquitectura de Sistemas

Muestra de Funcionamiento

Imagen donde se muestra el simulamiento del chip donde se muestra la terminal proporcionada por el proteus, se dar click en los botones para demostrar la decodificacin y envi de datos al puerto serial.Dual Tone Multi Frecuency

Arquitectura de Sistemas

En la terminal se muestra el vio de datos por el puerto serial despus del pulsado de los botones para simular la salida del DTMF

Datos Recibidos en el puerto virtual

Programa Hecho en Proton

Dual Tone Multi Frecuency

Arquitectura de Sistemas

Device = 16F877A ALL_DIGITAL = True XTAL = 4 SERIAL_BAUD = 9600 serial RSOUT_PIN = PORTC.6 RSOUT_MODE = true RSOUT_PACE = 1 RSIN_PIN = PORTC.7 RSIN_MODE = TRUE

' Define el microcontrolador utilizado ' Define todod los puertos como digitales ' Define la velocidad del resonador 'Configuracion de velocidad del puerton 'Configuracion de Salida del Serial

HSERIAL_BAUD = 9600 HSERIAL_RCSTA = %10010000 HSERIAL_TXSTA = %00100100 HSERIAL_CLEAR = On '---------Configuracion de Puertos--------TRISB = %11111111 'Poner el Puerto b como entrada TRISC = %00000000 'Poner el puerto c como salida Dim DMF As Byte 'Variable De Entrada del DTMF Dim Ent1 As PORTB.0 'Entrada del puerto c 0 Dim Ent2 As PORTB.1 'Entrada del puerto c 1 Dim Ent3 As PORTB.2 'Entrada del puerto c 2 Dim Ent4 As PORTB.3 'Entrada del puerto c 3 Dim Dat As Byte 'Variable Temporal para enviar los datos '--------Iniciar los Puertos----------------PORTB = 0 Ent1 = 0 Ent2 = 0 Ent3= 0 Ent4 = 0 DMF = 0 '----------Inicio del Programa Inicio: 'Funcion de Inicio y Principal que espera siempre la entrada de lo DTMF If Ent1 == 1 Or Ent2 == 1 Or Ent3 == 1 Or Ent4 == 1 Then 'Condicion que espera la entrada en algun puerto DelayMS 185 'Al entrar espera 185 milesundos para evitar el rebote GoTo Procesar 'Enviar ala siguiente Funcion EndIf GoTo Inicio 'Regreso recursivo para espera el pulso a decodificar End Procesar: 'Funcion que procesa los datos de entrada 'Se ponen varios if que lo que hace es espera una o varias entradas en el puerto b para sumarlas 'y luego enviarla ala siguiente funcion de envio If Ent1 == 1 Then DMF = DMF + 1 EndIf If Ent2 == 1 Then DMF = DMF + 2 EndIf If Ent3 == 1 Then DMF = DMF + 4 EndIf If Ent4 == 1 ThenDual Tone Multi Frecuency

Arquitectura de Sistemas

DMF = DMF + 8 EndIf Dat = Dat + DMF 'Usar la variable temporar para enviar los datos DMF = 0 'regresa la sumadora a 0 para esperar otros valores GoTo Enviar 'Manda ala funcion de envio de datos End Enviar: 'Funcion de envio 'Lo que hace es enviar los datos por el puerto serial y luego regresar los valores a 0 'y regresa al inicio de la funcion pricipal para espera el siguiente numero HSerOut ["Boton Pulsado = ",Dec Dat,$0A,$0D] 'Funcion para envio serial que el DEC es una especificacion 'Para el envio de Decimales y $0A,$0D es un salto de linea Dat = 0 GoTo Inicio End

Dual Tone Multi Frecuency

Arquitectura de Sistemas

Arquitectura de Sistemas

Ingeniera en Sistemas Computacionales7mo Cuatrimestre

Universidad Latino

Elabor:

P.T.I. Jos Rodolfo Baas Baas Jess Ricardo Echeverra Ak Mario Enrique Rodrguez Lara

Maestro:

I.A.S. Mario Armando Alonso Bustamante

10 de Diciembre 2009.

Dual Tone Multi Frecuency