Autor Tema: Agregar sonido a los proyectos  (Leído 20648 veces)

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

Desconectado Marttyn

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1835
    • IDEAA
Agregar sonido a los proyectos
« en: 19 de Noviembre de 2006, 03:35:04 »
Hola!  :-/
despues de mucho buscar por todo internet y fuera tambien encontre 3 soluciones para que nuestros pics puedan manejar sonidos... creanme que busque mucho, y solo he dado con estas 3 soluciones, que son las mas practicas de implementar, si alguien sabe algo mas de esto que lo comente, ya que seguro es de interes de muchos.

la primer forma, y la que mas facilmente encontre fue los integrados ISD de winbond. estos integrados estan diseñados especificamente para reproducir sonidos, con lo cual su calidad es muy buena, y su manejabilidad tambien. hay diferentes tipos, con diferentes caracteristicas y segundos de grabacion. su bus de direcciones permite grabar varios sonidos en diferentes posiciones y poder acceder a ellos.
su principal desventaja es que no estan muy difundidos por aqui en españa, con lo que pocos comercios los tienen, y si los tienen tienen poca variedad... ademas, su excesivo precio es su principal desventaja (23€ me querian cobrar por el isd1420 que graba 20 segs)...

la segunda manera la encontre de casualidad paseando por la jugueteria del corte ingles (grandes superficies comerciales en españa)... te venden un "Bla Bla", que es un aparatito que tiene 2 botones un altavoz y un microfonito. con un boton grabas y con otro reproducis lo que grabaste.... solo permite almacenar una grabacion a la vez, de 20 segs de duracion max. estos aparatitos los venden para meter dentro de unos osos de peluche que tambien venden, asi se le pueden poner mensajes personalizados a los osos de peluche estos... una idea bastante original.... ni bien lo vi me compre uno (6€ solo el aparatito) y lo desmonte todo hasta quedarme con el interior que es lo que interesa. haciendo pruebas llegue a la conclusion de que puede ser una alternativa simple que a muchos les puede venir bien... su calidad de reproduccion es normal...

la tercera manera que encontre y es la que mas trabajo me costo llegar a ella fue el sistema de Roman Black que solo con una resistencia y un condensador consigue sonido MUY barato y de aceptable calidad... su programa lo que hace es convertir los sonidos a formato de 1bit para luego poder reproducirlos con un pic utilizando SOLO CON UN PIN!!!!!!!!!!!!  :shock:
este sistema me parece realmente bueno para algunas aplicaciones. seria interesante estudiar sus aplicaciones.
yo por ahora no tengo lo conocimientos para implementar esto en un proyecto... pero me gustaria que si alguien ha usado o sabe como funciona, nos lo explique...
se que basicamente saca una señal por un pin del pic, pero no se como se implenta, se pograma o lo que se hace...

de verdad es algo interesante, y prometo hacer pruebas hasta cansarme y poner los resultados para que podais usar este sistema de forma eficaz, pero primero necesito un pqueño empujoncito en la direccion correcta.
alguien me ayuda?

salu2
La gente ve las cosas que existen y se pregunta por qué.
Yo prefiero imaginar lo que no existe y preguntarme por qué no.

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
Re: Agregar sonido a los proyectos
« Respuesta #1 en: 19 de Noviembre de 2006, 03:55:05 »
Hola:

Mira en mi web (la direccion esta en mi firma) hice un reloj que "habla" con un ISD25120, recuerdo que no me costo mas de USD$10 te puede ser de ayuda el documento que hice, almenos eso espero.
« Última modificación: 19 de Noviembre de 2006, 04:15:28 por LordLafebre »

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: Agregar sonido a los proyectos
« Respuesta #2 en: 19 de Noviembre de 2006, 04:55:37 »
Se ve muy interesante el algoritmo BTc ese que has linkado.

El hardware es tan simple que dan ganas de probarlo. En realidad, esa resistencia y condensador lo único que hacen es modificar la onda que sale del PIC. De ser cuadrada como le corresponde al tratarse de una señal digital, para a ser una onda curva con rampas de subida y bajada cuya inclinación dependerá de los valores de esa resistencia y ese condensador.

Si te fijas en uno de los gráficos que el autor muestra, se ve perfectamente como la onda resultante va subiendo a medida que el PIC le va chutando "11111" y se pone a bajar en cuanto el PIC chuta "00000".



Claro, este sistema sólo sirve para reproducir. Lo de capturar ya es otra historia.

Desconectado jfmateos2

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3145
Re: Agregar sonido a los proyectos
« Respuesta #3 en: 19 de Noviembre de 2006, 05:48:06 »
En la revista Resistor nº 217 viene un artículo sobre grabación de audio en tarjeta SD.Card implementado en Basic mediante un PIC18F458. El PIC se conecta a un micro a través de un par de amplificadores, y éste se encarga de muestrearlo a 8 bits, una canal y 8kHz mediante Pulse Code Modulation, resultando un archivo WAV. La calidad del muestreo quizás no dé para música, pero creo que debe funcionar bastante bien para grabar voz.

Creo que también leí un artículo sobre muestreo de audio con PIC en Everyday Practical Electronics, pero ahora no lo encuentro.

Saludos

Desconectado Marttyn

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1835
    • IDEAA
Re: Agregar sonido a los proyectos
« Respuesta #4 en: 19 de Noviembre de 2006, 17:00:17 »
Como dice jack el destripador, vamos por partes...  :-)
Lafebre, tu proyecto fue la mejor info que encontre sobre isd en este foro, la verdad esta muy bien, y es para tener en cuenta, ademas tienes otras cosas interesantes en tu pagina... pero ya te digo que por aqui los integrados isd estan muy por encima de los precios normales, y si bien, tendre que probarlos algun dia, los utilizare cuando realmente valga la pena, mientras tatno quiero buscar algunas alternativas para reproducir sonido.
Nocturno, si que parece muy simple, y es por eso que quiero probarlo, de momento solo quiero reproducir sonido proveniente de un fichero, grabar por ahora no me interesa. Como bien dices la resistencia y el condensador hacen de filtro para darle forma a la onda cuadrada.
jfmateos2 estuve intentando encontrar la revista, pero solo se publica impresa, al igual que el libro...  :( de momento seguire con la interminable informacion que hay por internet. pero si no me equivoco, lo que tu dices son digitalizadores de sonidos... y lo que busco yo es en realidad es reproducirlos, osea convertirlos a analogicos, provenientes de un ficehro digital almacenado en una memoria 24xx o si cupiera en la memoria del mismo micro.
estuve intentando hacer unas pruebas, pero no lo he conseguido. con el porgrama paso el fichero wav a un archivo asm, para luego programarlo en el micro, pero simulando en proteus me dice que el hex generado es invalido, y si lo quemo al pic no funciona.  :z)
supongo que al fichero asm que genera el programa habra que modificarle algo para indicarle que pic se utilizara, al igual que los pines de salida... por ahora estoy haciendo mis pinitos en C, con lo que assembler es chino para mi por ahora.
si alguien entiende algo de esto, que me diga el camino a seguir para hacer las pruebas y encantado os dire como me ha ido
gracias a todos por vuestras respuestas!
salu2
La gente ve las cosas que existen y se pregunta por qué.
Yo prefiero imaginar lo que no existe y preguntarme por qué no.

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5474
    • Electrónica Didacta
Re: Agregar sonido a los proyectos
« Respuesta #5 en: 20 de Noviembre de 2006, 15:55:17 »
Marttyn si se puede con un pic, pero es por el camino largo (comparando con los ISD).
Lo que voy a sugerir es para reproducir voz a 8 Khz ó un poco mas.

-la primera etapa sería la del micrófono (debes buscar el circuito para polarizar un mic de electrect por ej)
-la segunda etapa sería un elevador de nivel dc, para subir la onda para valores de 0 a ~5V
- también se podría usar un compresor de audio para aumentar o disminuir el nivel de la onda.
- la proxima etapa es el CAD del pic, y todo el código se resumiria a capturar el resultado del CAD + un pequeño retardo (para asegurar los 1/8Khz) y enviarlo a un puerto.
-la salida de ese puerto iría a un DAC, por ej el DAC0808.
 para el circuito del DAC puedes revisar su datasheet

agregado:
-se me olvidaba la etapa de un filtro pasabajos para recortar las armonicas no deseadas y suavizar
la onda cuantizada de la salida del DAC.

con estos pasos (un poco resumido) puedes reproducir audio hasta los 4Khz usando el método digital de la manera sencilla.

el siguiente paso sería adaptar un circuito para guardarlo en algún dispositivo de almacenamiento (memoria SD, disco duro, etc)

Salu2
Pedro
« Última modificación: 21 de Noviembre de 2006, 13:17:54 por PalitroqueZ »
La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado QATQET

  • PIC10
  • *
  • Mensajes: 3
Re: Agregar sonido a los proyectos
« Respuesta #6 en: 03 de Diciembre de 2006, 21:44:42 »
Gracias a LordLafebre por el proyecto del reloj parlante, está muy completo y bien explicado, lo cual me ayudo bastante  :D

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
Re: Agregar sonido a los proyectos
« Respuesta #7 en: 04 de Diciembre de 2006, 12:48:30 »
Hola:

Gracias, que bien que te sirvio.  :mrgreen:

interticio

  • Visitante
Re: Agregar sonido a los proyectos
« Respuesta #8 en: 04 de Diciembre de 2006, 19:31:41 »
Hola a todo.
Este tema es muy importante y me parese que dentro de las pociblidades que existen, la de un PIC me parese que es la mejor.  En realidad un pic tiene todo para grabar sonido solo hay que saver como utilizar los recursos.
En primer lugar acondicionar la señal de entrada, luego ingresarla al PIC a traves de un A/D e ir grabandola en una memoria(interna o I2C). Para reproducir esta grabacion solo sera necesario convertir estos datos digitales en una señal analogica, para despues filtrarla con un filtro pasa bajos( es la resistencia y el capacito que tiene conectado el PIC a la salida) que se encarga de eliminar los armonicos de alta frecuencia que son no deceados,  producto de la dijitalizacion de la señan.

Por otro lado en el PROTEUS existe un ejemplo que reproduce sonido pero no lo graba. Este se llama doorbell.

Espero que les sea util mi informacion ya que estoy inbolucrado en el tema debido a que estoy construyendo un osciloscopio digital que basicamente funcioa de la misma manera que esto, nada mas que a elevada frecuencia de muestreo.

Desconectado Marttyn

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1835
    • IDEAA
Re: Agregar sonido a los proyectos
« Respuesta #9 en: 04 de Diciembre de 2006, 21:51:42 »
tu sabes como sacar el sonido por el pic?
yo estuve mirando para probarlo, pero el programa btcenconder te convierte un sonido en un fichero ASM... pero no se que hacer con el  :( y la verdad no se assembler para entender lo que hace
si bien entiendo medianamente toda la teoria de funcionamiento, no se que hay que programarle al pic o donde guardar el fichero de sonido para luego poder reproducirlo.... cualquier ayuda seria bien recibida, y cuando saque algo en limpio lo publico... creo que es un buen tema este, ya que hay muy poco sobre el tema de sonidos en el foro (descontando el despertador de lord :))
salu2
La gente ve las cosas que existen y se pregunta por qué.
Yo prefiero imaginar lo que no existe y preguntarme por qué no.

Desconectado vszener

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2395
Re: Agregar sonido a los proyectos
« Respuesta #10 en: 06 de Diciembre de 2006, 09:30:11 »
Si trabajas en C y concretamente con el compilador de la casa CCS, revisa en las librerias que trae el compilador y encontrarás una llamada TONE.C con la cual se pueden hacer 'ruiditos'.


Suerte!!! ;)
· Nos vemos en los bares!!!!!
· Mi Blog: Aqueronte

Desconectado todopic

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3495
    • http://www.todopicelectronica.com.ar
Re: Agregar sonido a los proyectos
« Respuesta #11 en: 19 de Diciembre de 2006, 19:08:36 »
esos trenes de onda, son llamados "ondas magicas"... alguna vez lei el la desaparecida revista de cekit, y trabajan generando con trenes de bit, cada uno de los 4 cuadrantes de la onda, es decir, la señal de bits, es para el primer cuadrante (0 a 90 grados) luego, se lee de atras para adelante, para formar de 90 a 180, luego se complementa leyendo como para 0-90.... y finalmente se complementa para leer como 90-180.. espero se entienda.
 :mrgreen:
La idea es como manifesto Nocturno, y normalmente se trabaja con al menos 64 bit

Un abrazo

Norberto
Firmat - Santa Fe - Argentina

www.TodoPic.net

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

Desconectado Marttyn

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1835
    • IDEAA
Re: Agregar sonido a los proyectos
« Respuesta #12 en: 20 de Diciembre de 2006, 20:40:08 »
pues, eso de cekit me sonaba, asi que me puse a buscar y me di cuenta que esas revistas las tengo YO!!! :) recuerdas en que numero esta este tema? ya que la verdad compre toda la coleccion pero creo que nunca lei mas alla del tercer fasciculo  :mrgreen:
salu2
La gente ve las cosas que existen y se pregunta por qué.
Yo prefiero imaginar lo que no existe y preguntarme por qué no.

Desconectado todopic

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3495
    • http://www.todopicelectronica.com.ar
Re: Agregar sonido a los proyectos
« Respuesta #13 en: 20 de Diciembre de 2006, 20:43:43 »
no no... que numero era mmm, tendria que buscar, yo les anotaba en la tapa lo que me resultaba interesante (pravticamente todas estan escritas  :D )
se llamaba electronica & computadores

Norberto
Firmat - Santa Fe - Argentina

www.TodoPic.net

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

Desconectado soy_ismael

  • PIC10
  • *
  • Mensajes: 15
Re: Agregar sonido a los proyectos
« Respuesta #14 en: 13 de Marzo de 2007, 07:18:07 »
Hola! tambien estoy interesado en conseguir reproducir voz (de manera digna, no necesito hi-fi) te dejo un link pos si te ayuda.
Es este: www.euitt.upm.es/taee06/papers/SD/p186.pdf
Espero que te sirva. No abandoneis este tema. :-/

¿Como vas tu? ¿Lo has conseguido? a mi me queda mucho camino para llegar a hacer algo decente. Tengo mucho interés en aprender a manejar eeproms externas, ya que tengo varios proyectos en mente y todos necesitan mas memoria que la ofrece el propio pic.


Saludos!


 

anything