Autor Tema: marcador por tono DTMF (novato)  (Leído 19113 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Suky

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 6759
Re: marcador por tono DTMF (novato)
« Respuesta #15 en: 03 de Noviembre de 2009, 16:29:00 »
japifer_22 coloca puntos, comas, etc para que se pueda entender tu redacción, si??? Luego el tema de el envío de datos ya intentamos explicarte el tema en otro foro! Que duda tenes??? Creo que fuimos claros de como se puede mandar  :?
No contesto mensajes privados, las consultas en el foro

Desconectado japifer_22

  • PIC18
  • ****
  • Mensajes: 405
Re: marcador por tono DTMF (novato)
« Respuesta #16 en: 03 de Noviembre de 2009, 23:15:43 »
hola suky, bueno primero que todo, disculpen mi mal escrivir es que de flojo no arreglo las cosas con respecto artografia y puntuaciones, pero ahora si que empieso a darle bien OK :mrgreen:.
bueno con respecto a como mandar los datos entendi parte de ello, como bien tu mensionas devido a mi publicacion del tema en otro foro, pero el punto es el siguiente, y el cual sigo sin entender;
se que se tiene que enviar por un solo pin los datos, pero lo que no entiendo es como hacerlo, osea cuant otiempo tengo que esperar para enviar el segundo dato y demaces, por que se save que tengo que envierle desde el D0 al D4 y de esa misma manera, pero lo que no se es como representar el 1 y el 0 para envierle esto al HT9200A.

Desconectado Suky

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 6759
Re: marcador por tono DTMF (novato)
« Respuesta #17 en: 03 de Noviembre de 2009, 23:34:47 »
La forma de enviar puede ser la siguiente:

Código: C
  1. #define DATA PIN_B4
  2. #define SCLK PIN_B2
  3. #define CE PIN_B1
  4.  
  5.    output_low(SCLK);
  6.    output_low(CE);
  7.  
  8.    for(i=1;i<=5;++i) {
  9.       output_high(SCLK);
  10.       output_bit(DATA, shift_left(Control,1,0));
  11.       delay_us(xx);
  12.       output_low(SCLK);
  13.       delay_us(xx);
  14.    }
  15.    output_high(CE);

En el datasheet dice a que frecuencia máxima trabaja así que ya esta!
No contesto mensajes privados, las consultas en el foro

Desconectado japifer_22

  • PIC18
  • ****
  • Mensajes: 405
Re: marcador por tono DTMF (novato)
« Respuesta #18 en: 04 de Noviembre de 2009, 00:14:55 »
jajaja hola suky, saves que me da risa esta situaciòn, por que ahora lo que no entiendo es tu codigo, osea entiendo partes pero no todo. ahora bien, lo que no entiendo es la linea

Citar
output_bit(DATA, shift_left(Control,1,0));

bueno esto en parte por que nunca e usado esta función, pero se que hace esta función desplaza a la izquierda un bit de un array o de una estructura, pero no se como se maneja ni nada por el estilo.
me puedes explicar plissss. :mrgreen:
« Última modificación: 04 de Noviembre de 2009, 00:19:33 por japifer_22 »

Desconectado Suky

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 6759
Re: marcador por tono DTMF (novato)
« Respuesta #19 en: 04 de Noviembre de 2009, 00:29:13 »
Vamos por partes:  :undecided:

output_bit (pin, value)
Setea el pin con el valor de value, que en este caso vendrá dado del shift_left.

Syntax:
 shift_left (address, bytes, value) o shift_right (address, bytes, value)
 
Parametros:
 address es una variable, bytes es el numero de bytes a trabajar, value es 0 o 1, valor del carry.
 
Returns:
 0 o 1 del bit que salga al rotar.

Más detalles en la ayuda del CCS  :mrgreen:

Ahora tu determinarás que usar, left o right.

Saludos!
 

« Última modificación: 04 de Noviembre de 2009, 00:31:36 por Suky »
No contesto mensajes privados, las consultas en el foro

Desconectado japifer_22

  • PIC18
  • ****
  • Mensajes: 405
Re: marcador por tono DTMF (novato)
« Respuesta #20 en: 04 de Noviembre de 2009, 01:23:30 »
ya aver........ si esta es mi ultima duda (ojalas  :mrgreen:) la variable control es la qu uso para indicar el numero ???, por ejemplo yo digo control = 10100 esto quiere decir, que si uso shift_left desplazo hacia la izquierda de a un bit osea pongo el cero, reseteo, pongo el cero nuevamente y reseteo luego pongo el uno y vuelvo a resetear algo asi es o no ????? asta completa el valor de control o no ????? dando por terminado el primer numero que en este caso se compone de "5" bit ??

Desconectado Cryn

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4169
Re: marcador por tono DTMF (novato)
« Respuesta #21 en: 22 de Noviembre de 2009, 19:35:19 »
Tengo un problema con el MT8880, con este ya he generado y recibido tonos DTMF, tengo un rectificador y un NPN conectado a este, el rectificador está conectado a la línea telefónica mi circuito es idéntico al de acá salvo que he quitado la parte del PNP porque no hará falta el control de colgado y descolgado de la línea ya que el tubo del teléfono será el que determine el colgado y descolagado. Puedo introducir los DTMF mediante ese circuito a la línea.

Mi problema es que cuando no se marca ningún tono con el MT8880 el transistor NPN  hace que la tensión de línea colgado baje de 51V a 47V y hasta a 35V (47V con resistencia de 30k, 35V con resistencia de 1.5k), y curiosamente ese transistor comienza a calentar paulatinamente.

He medido la tensión en el pin 8 (TONE OUT) del MT8880 y esta cuando no se envía ningún tono tiene una tensión entre 2 a 3V, lo que me parece extraño y me hace pensar que está haciendo conducir de cierta manera al PNP, ya que cuando con un cable llevo la base a GND el problema de la baja de tensión se resuelve y no hay calentamiento.

No se si el problema irá con el hardware, porque he probado con rangos desde 1.5k a 30k para la base del PNP y el calentamiento sigue existiendo, para valores más altos de resistencia quizá el transistor no llegue a conducir y no envíe los tonos. O no se si el problema irá por alguna configuración del MT8880 que haga que la salida en el pin 8 TONE OUT se ponga a cero.

A ver que me dicen, espero su ayuda, muchas gracias

saludos.
.

Desconectado krostby

  • PIC10
  • *
  • Mensajes: 33
Re: marcador por tono DTMF (novato)
« Respuesta #22 en: 27 de Noviembre de 2009, 23:53:22 »
japifer_22, que es lo que realmente quieres hacer ???  yo tengo un circuito conectado a la linea TF y funciona perfectamente bien (8870).

Krostby

Desconectado japifer_22

  • PIC18
  • ****
  • Mensajes: 405
Re: marcador por tono DTMF (novato)
« Respuesta #23 en: 28 de Noviembre de 2009, 16:17:12 »
hola yo no e trabajado con el mt8880, y oestoy trabajando con el CM8870 y HT9200, el 8870 me pudo funcionar, pero ahora estoy intentando de generar el codigo para el HT9200. en este ultimo no e podido avansar mucho por que e etado haciendo otras cosas, pero en cuanto lo tenga lo publcare aki para que le echen un vistaso.

krostby hola bueno te comento que seria vastante amabre de tu parte para ver que diseño tienes, y si me lo puedes mandar, ya que el qu tengo yo funciona pero el problema que no siempre detecta los tonos.
bueno nos estamos contactando que esten bien.......
salu2s!