Autor Tema: como medir un tono con pic  (Leído 5143 veces)

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

Desconectado psicopic

  • PIC12
  • **
  • Mensajes: 93
como medir un tono con pic
« en: 02 de Octubre de 2004, 18:33:00 »
epa Gente....
Estoy comensando a ver la forma de medir la frecuencia de un tono de audio de 400 khz con que pic se podria lograr esto y que ideas me pueden dar a ver si me funciona lo que quiero ya que requiero detectar un tono especifico con un 10% +-
Gracias por las Ayudas

Desconectado manex_1987

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1127
RE: como medir un tono con pic
« Respuesta #1 en: 03 de Octubre de 2004, 14:01:00 »
Hola

Yo usaria un conversor frecuencia-voltaje (por internet hay varios esquemas) conectado al ADC de un pic, por ejemplo el 16F88, el 16F877, etc...



salu2

Desconectado psicopic

  • PIC12
  • **
  • Mensajes: 93
RE: como medir un tono con pic
« Respuesta #2 en: 03 de Octubre de 2004, 15:12:00 »
gracias manex es buena la opcion vere que consigo en la red

Desconectado wqtrp

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 170
RE: como medir un tono con pic
« Respuesta #3 en: 03 de Octubre de 2004, 15:23:00 »
hola,
q te parece si pones esa señal a la entrada de uno de los timers,

tipo timer 1 del f452, creo q eso te daria una buena precicion si con otro timer de precicion (con cristal, el oscilador ) lo mides durante un tiempo


Suerte .....

Desconectado pocher

  • Moderador Local
  • DsPIC30
  • *****
  • Mensajes: 2568
RE: como medir un tono con pic
« Respuesta #4 en: 04 de Octubre de 2004, 10:28:00 »
Si no te importa que el programa esté en C, los de CCS tienen un programa de un frecuencímetro que tiene un amplio margen de medida de frecuencias (1Hz hasta MHz) y para la frecuencia que tú quieres medir te la saca clavada. Está hecho para un 877 (para un 87x también valdría) y usa el TMR1 como contador externo de pulsos, utiliza un cristal de 20MHz.

Un saludo

Desconectado Carlete71

  • PIC18
  • ****
  • Mensajes: 433
RE: como medir un tono con pic
« Respuesta #5 en: 04 de Octubre de 2004, 12:00:00 »

Pocher conoces algo como eso pero con el 16F84?

Saludos,

Desconectado pocher

  • Moderador Local
  • DsPIC30
  • *****
  • Mensajes: 2568
RE: como medir un tono con pic
« Respuesta #6 en: 04 de Octubre de 2004, 12:17:00 »
Como este no. En la web de Pablin hay un frecuencímetro para un 16C54 (que seguramente ya habrás visto).

Desconectado Carlete71

  • PIC18
  • ****
  • Mensajes: 433
RE: como medir un tono con pic
« Respuesta #7 en: 04 de Octubre de 2004, 12:38:00 »
Si ese lo he visto, pero con el 16F84, hab"ia un par en la página de XooTRAooX, pero esta ya no existe

Bueno, la lo conseguiré.

Gracias de todos modos,

Saludos,

Desconectado manex_1987

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1127
RE: como medir un tono con pic
« Respuesta #8 en: 04 de Octubre de 2004, 14:38:00 »
Lo que hace la ignorancia jeje. Mis soluciones siempre son mas complejas que las vuestras por eso... pero nunca dejo de aprender!

salu2!

Desconectado psicopic

  • PIC12
  • **
  • Mensajes: 93
RE: como medir un tono con pic
« Respuesta #9 en: 04 de Octubre de 2004, 20:26:00 »
Bueno - Bueno que les parece que consegui el 2917 que es un conversor de frecuencia a tension a ver si de pronto funciona con eso y les cuento primero ver si consigo el fulano integrado de todas maneras si alguin consigue o sabe otra solucion bien recibida sera....

saludos....

Desconectado odukec

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 174
RE: como medir un tono con pic
« Respuesta #10 en: 05 de Octubre de 2004, 17:16:00 »
Hola..

Yo hice algo pero en c.. para el 16f84 sirve.. es lo siguiente..  habilito la interrupcion del tmr0 y la externa.. coloco el preescaler en 64 y con un cristal de 4Mhz, eso hace que este se desborde aproximadamente cada 1ms creo variables para medir el tiempo.. milisegundos, segundos.. cuando hay interrupcion externa (RB0), cambio de flanco de alto a bajo o viceversa, pongo a ceros estas variables, y un "flag" a uno .. cuando de nuevo hay interrupcion externa, miro el "flag"para saber si pongo a cero de nuevo las variables, de lo contrario capturo el valor de las variables de tiempo.. y tengo el periodo de dicha señal y de nuevo pongo el "flag" a cero..

Como dije anteriormente esta en lenguaje c.. lo uso para lo mismo para detectar un tono, de 425Hz y asi saber cual es su periodo, logicamente a la entrada de RB0 tiene que haber una señal cuadrada.

Saludos

Desconectado PWRINVITRO

  • PIC12
  • **
  • Mensajes: 78
RE: como medir un tono con pic
« Respuesta #11 en: 14 de Octubre de 2004, 15:58:00 »
esos conversores de frecuencia a voltaje son para principiantes ademas de que tienes q montar toda una circuiteria como el conversor y un adc... no resulta prductivo.... la mejor manera es configurar el timer0 como contador de pulsos externos y SIN prescaler osea le asignas es prescaler al watchdog ya q  contar pulsos con prescaler es demasiado impreciso y mucho mas cuando se trata de frecuencias altas.... lo mejor es contar los pulsos de 1 en 1 o de 10 en 10 o de 100 en 100 todo depende de la frecuencia para 400k seria bueno contar los pulsos de 100 en 100 inicializando el timer en .156 cada vez q cuente 100 pulsos interrumpes al micro con la interrupcion por timer e incrementas un registro, recargas el timer y sales de la interrupcion para lograr esto con precision tienes q activar la interrupcion y enseguida yamar a un retardo de 1 segundo exacto, como se te va a desbordar el registro q estas encrementando necesitaras incremetar otro registro cuando se desborde al anterior para poder contar los 400 khz, justo cuando el segundo del retardo termine tendras la informacion disponible en los registros q estuviste incrementado en la interrupcion, los multiplicas por 100 y voala!!! esto te dara exelentes resultados con un margen de error muy pekeño casi imperceptible a lo sumo 2 hz siempre y cuando hagas una rutina muy optimizada...... luego del proceso ejecutas tu rutina de binario a BCD o a ACCII y la envias a un display o lcd o a un PC o lo q kieras hacer con esa data!!!  SUERTE, claro mientras mas baja sea la frecuencia mas exacto sera el conteo y por supuesto hasta necesitaras menos registros y podras contar de 10 en 10 o de 1 en 1 y sera mas facil.... !!!! ah y con un cristal de 4 megas podras medir aproximadamente 1MHZ

Desconectado psicopic

  • PIC12
  • **
  • Mensajes: 93
RE: como medir un tono con pic
« Respuesta #12 en: 14 de Octubre de 2004, 19:38:00 »
gracias pwrinvitro... suena bien tratare de hacer eso a ver si me sale pero ufff  esta un pelo complicada la cuestion pero tratare de hacerlo a verrrrr si me sale si no pana te aviso para que me digas como es la cosa saludos pues y gracias...

Desde maracaibo.... Venezuela

Up..LA VINO TINTO

Desconectado PWRINVITRO

  • PIC12
  • **
  • Mensajes: 78
RE: como medir un tono con pic
« Respuesta #13 en: 14 de Octubre de 2004, 20:27:00 »
Bueno suena complicado pero en realidad es muy facil solo incrementar un registro cada vez q se desborda el timer como el conteo va a yegar hata 4000 por ser una frecuencia de 400k necesitas 12 bits para poder contar hasta 4000 por ende debes incrementar otro registro al desbordarce el q estas incrementando los puedes yamar DATO_L y DATO_H, cada vez q se desborda dato_l incrementas dato_h esto lo haces chequeando la bandera Z del status eso no tiene gran problema lo unico q es medio engorroso es la rutina de multiplicacion por 100 un dato de 12 bits y sin embargo es solo codigo el resulta entra en 24 bits facilmente o 3 registros la rutina de binario a bcd si la haces diviendo entre 10 es un paseo... y ademas es un gran ejercicio ya q te acostumbras a trabajar con cantidades enormes de bits concatenados!!!

Desconectado todopic

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3495
    • http://www.todopicelectronica.com.ar
RE: como medir un tono con pic
« Respuesta #14 en: 14 de Octubre de 2004, 21:58:00 »
Hola Amig@s,... creo que hay un pequeñito error....un tono de audio de 400khz... ni los murcielagos lo van a escuchar je je
creo que hay una k de mas... y sera 400 hz...

Un abrazo

Norberto
Firmat - Santa Fe - Argentina

www.TodoPic.net

Solo se tiran piedras, al arbol que tiene frutos...


 

anything