*** Prueba de sintetizador con PIC, mp3 adjunto ***Retomando este tema, capture la salida del PIC reproduciendo un texto que habia empezado a escribir en diciembre para armar un video de demostracion, como seguramente va a pasar un tiempo antes que lo complete, hice un mp3 de eso.
Para refrescar como funciona esto, el PIC recibe texto por RS232 a 1200bps, y lo habla en tiempo real ni bien llegan comandos validos, lo cual no es muy apto para tipear en vivo pero si es interesante cuando se le envia un texto armado desde alguna computadora o microcontrolador. En este caso le envie el texto desde una notebook usando un programa terminal y envio de archivo ASCII, pero lo mismo podia funcionar si pegaba en el programa un texto cortado de otro lado.
Adjunto el mp3 resultante, en una calidad horrible porque el audio dura 1 minuto 44 segundos y tenia que hacerlo caber en los 512K que se permite para los archivos adjuntos. El mp3 esta en 32KHz, 40Kbps, asi que el original suena mejor y sin ese eco que aparece, aunque la inteligibilidad es la misma, no se entiende mas uno que otro. El texto enviado esta un poco arreglado para que suene mas natural, agregando o quitando espacios segun como sonaba, esto es, que algunas palabras van pegadas a otras, y otras palabras van divididas en partes agregando pausas intermedias. La forma en que hablamos difiere bastante de como escribimos, la mayoria del tiempo no usamos espacios entre palabras, asi que para obtener resultados mas naturales hay que ir probando.
Lo unico que no esta terminado del sintetizador es el sonido de la J, que no suena muy bien aunque se parece a como deberia sonar.
El texto procesado es exactamente este:
el proshe+kto te+kstoabo+s,seinisio+ ko+mou+na konber_sio+n delprogra+ma piksi+nt,desarosha+do pa+raun mikrokontrolado+r pik diesise+ise+fe se+isku-a-r2enta-i-ocho- a-.
labo+s ke+esta+n eskucha+ndo,sejene+r2a konun pik,elkualresi+be elte+ksto en se+r2ie amildos_sie+ntos bits por se-gundo-.
la prime+r2a konber_sio+n pa+r2akomputado+r2as deo+chobits,sei+so pa+r2a ko+modor sese+ntaikua+tro,emitie+ndo soni+do dijita+l dekua+trobits,asietemi+lochosie+ntos je+rts demu-e-streo-.
ma+sta+rde sekonbirtio+ elprogra+ma a ko+digo dese+ta oche+nta,i serealisa+r2on ber_sio+nes par2a sinkle+ir s_pe+ktrum, ta+nto pa+r2a losmode+los dekuar2entaio+choka+,emitie+ndo soni+do por el parla+nte inte_gra+do;ko+mo pa+r2a losmode+los de sie+ntobeintio+choka+,emitie+ndo sonido atrabe+s del_chi+p,a i grie+ga tre+s,oche+ntainue+be-dose-.
tambie+n seisie+r2on konber_sio+nes pa+r2a se+ta e+kis oche+ntaiu+no;ta+imeks sinkle+ir dosmi+lsese+ntaio+cho;ikomputado+r2as e+me_e+se_e+kis.
enlasber_sio+nes pa+r2a se+ta e+kis oche+ntaiu+no,i s_pe+ktrum kuar2entaio+choka+;se simu+lael soni+dodekua+trobits,atrabe+sdeun algor2i+tmo demodula_sio+n dea+nchode- pul_so-.
en e+stas ber_sio+nes pa+r2a komputado+r2as kon se+ta oche+nta,la frekue+n_sia de muestre+o es de nuebemi+lkinie+ntos jerts.
Y en castellano seria:
El proyecto Texto A Voz se inicio como una conversion del programa PICSynth, desarrollado para un microcontrolador PIC16F648A. La voz que estan escuchando se genera con un PIC, el cual recibe el texto en serie a 1200 bits por segundo.
La primera conversion para computadoras de 8 bits se hizo para Commodore 64, emitiendo sonido digital de 4 bits, a 7800 Hz de muestreo.
Mas tarde se convirtio el programa a codigo de Z80, y se realizaron versiones para Sinclair Spectrum, tanto para los modelos de 48K, emitiendo sonido por el parlante integrado, como para los modelos de 128K, emitiendo sonido a traves del chip AY-3-8912.
Tambien se hicieron conversiones para ZX81, Timex Sinclair 2068, y computadoras MSX.
En las versiones para ZX81 y Spectrum 48K, se simula el sonido de 4 bits a traves de un algoritmo de modulacion de ancho de pulso.
En estas versiones para computadoras con Z80, la frecuencia de muestreo es de 9500 Hz.
]picsynth2012.zip[/file]