Hey, que se puso activo el hilo este.
A ver, para ir por partes.
RedPic creo que fue muy linda tu explicacion sobre modems pero nuestro amigo quiere otra cuestión.
AUDIO --> PIC --> comunicacion serie --> PIC --> AUDIO
Es una comunicación en un solo sentido y donde no le interesa saber "qué" está recibiendo, sino solo mandarlo a otro lugar.
antoniof tu dijiste:
Escrito originalmente por antoniof
Incluso si consigues los 11.2Kbytes por segundo, estás seguro de que el conversor AD del PIC te da esa velocidad?. Tendrás que utilizar un conversor analógico-digital externo.
Cuando lleguen los datos al pic receptor como vas a pasarlos a analógico?
Te lo digo porque hay dsPICs que tienen módulos de interfaz con codecs externos que te proporcionan una calidad muy superior e incluso en estereo.
Te paso a responder.
Primero, tu estas confundiendo bits por segundo, con bytes por segundo. UN conversor de pic 16F877 a 20Mhz tranquilamente puede digitalizar 10 mil muestras por segundo o 11200 muestras por segundo si se utiliza siempre el mismo canal. La recibes en PARALELO (tomas solo los 8 bits mas significativos) y eso mismo se transmite en SERIE por el pic.
Para pasarlo a analogico del lado del receptor, ya describi que lo puede hacer con un dac y un circuito que le elimine el valor medio de continua y luego amplifique esa señal para sacarla por el parlante. Es más, no está mal la idea de en este caso usar un transformador, que permite de un solo paso amplificar y adaptar impedancia de una forma mas elegante que solo con operacionales.
Creo que un dspic es exagerado para lo que nuestro amigo quiere hacer, además un micrófono estereo? para que quieres eso... las guitarras, los microfonos, los teclados, son todos mono.
Además, para convertir audio a 16 bits, no solo es cuestión de poner un conversor... solo pensar que 2^16 = 65536 valores, lo que implica que con una señal de 5V, tenemos 76 microVoltios entre valor y valor... para lograr eso, REALMENTE hay que tener un circuito de una calidad excelente, con eliminacion de ruido por todas partes, compensaciones de temperatura, etc!! No es para novatos ni mucho menos, además que es MUY COSTOSO. Uno coloca el conversor, y los ultimos 6 u 8 bits, terminan siendo RUIDO, es decir que si uno aplica una señal toda esos ultimos bits no aportan nad de información sino que es solo ruido.
Nuevamente 8 bits creo que es adecuado para lo que nuestro amigo pretende.
Escrito originalmente por bartox
Tienes razon, ya me estrañaba a mi que consiguiese tanta velocidad de muestreo con un cristal de 20MHz como maximo jeje, perdon
.
He calculado que como mucho llegara a unos 50KHz. ¿Puede ser? ¿Alguien sabe que frecuencia se puede samplear con un cristal de 4MHz y con uno de 20MHz en el PIC?
Mmm, no es tan facil hacer un cálculo asi como dices tu porque depende mucho de tu circuito externo, de todas formas como referencia puedes ver en la datasheet en el modulo A/D como se calcula el Tacq (tiempo de adquisición) y luego le debes sumar el tiempo de conversión.
Tacq lo calculas de tu circuito de entrada, que en el ejemplo de microchip dura unos 12useg aproximadamente
El Tconversion depende del cristal que hayas usado y del modo que hayas elegido en el A/D.
Imaginemos funcionado a 20Mhz con 32Tosc de clock source, nos dará unos 1.6useg por TAd. Una conversion a 10 bits, demora unos 11Tad = 17.6 useg
Además entre conversiones se debe esperar 2TAD = 3.2 useg
Esto da un total de unos 32.8 useg tipico para cargas de 1Khm, si no cambias de canal entonces podrás tener ese tiempo de muestreo, de alrededor de unos 20Ksps. Esto siempre para 20Mhz.
En las datasheet de los PIC18 está explicado cuanto es el sampling time que pueden soportar sus A/D, en algunos casos hay hasta de 200Ksps.
Nuevamente no creo que te haga falta un dsPIC para esta aplicación.
Saludos