Escolar Documentos
Profissional Documentos
Cultura Documentos
Arquitectura de Sistemas
Universidad Latino
Arquitectura de Sistemas
Decodificador Telefónico.
• 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 teléfono.
• 2 cables listos RJ11 (cable de teléfono).
• 1 contacto de multi señal telefónica.
• 4 Leds.
Ahora, nos guiaremos del siguiente diagrama para armar nuestro circuito
DTMF.
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 presentación que la anterior,
aquí solo le cambiamos a Leds Azules, ya que es un color muy bonito, jejeje, en
fin, no le prestemos atención alos otros cables naranjas que además 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 señal
binaria del MT8870 e interpretarla por medio de la PC, sin tener que ver la
representación binario si no el número real. Pero eso no nos importa por ahora.
Tecla 1 Tecla 2
Tecla 3 Tecla 4
Tecla 5 Tecla6
Tecla 7 Tecla 8
Tecla 9.
Tomemos en cuenta que para que esto funcione debemos tener una señal de
teléfono, es decir una línea, ya que sin este no podríamos poner a prueba el
funcionamiento microchip.
Diagrama de colgado y
descolgado finalizado.
En estas imágenes podemos ver que el resultado fue inverso, ya que cometí el
error de conectar al revés el led, basta con invertir la polaridad.
Muestra de Funcionamiento
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 Then
Dual 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
Arquitectura de Sistemas
Universidad Latino
Elaboró:
Maestro:
10 de Diciembre 2009.