![]() |
#11 |
Marciano
![]() |
Creo que vas a tener que leerte unos buenos tutoriales...
Lo de leer audio de un micrófono y sacar audio por unos altavoces, supongo que te refieres a hacerlo en un PC. Pues bien, para eso tienes que usar funciones de librería, y se pueden usar tanto en C como en C++. Pero esas funciones de librería se usan para programar sobre PC, y no tienen nada que ver con lo que luego puedes meter en un microcontrolador. Si quieres leer audio y sacarlo por un altavoz en una tarjeta personalizada con tu propio microcontrolador, tendrás que meter unas cuantas cositas más, principalmente un ADC y un DAC, además de el preamplificador de micrófono y el amplificador de potencia para el altavoz. Por lo que me cuentas te veo un poco perdido. No es posible crear un programa que corra sobre un PC, y luego con un toque de varita mágica, meterlo en un microcontrolador. Son arquitecturas totalmente distintas, con metodologías de programación totalmente distintas. Si quieres hacer algo que corra sobre un microcontrolador, tendrás que desarrollarlo pensando en el micro desde el principio. |
![]() |
#12 |
VmWareando ESX 3.5
![]() |
Gracias Doragasu.
O sea que si yo quisiera hacer un programa tipo WinAmp, haciendolo desde un pc y posteriormente pasarlo a un aparato con cucarachas no se podría hacer, entendido. Y si hiciese un programa en C++ tipo WinAmp y posteriormente quisiera meterlo en un aparato con cucarachas tendría que ser una "empresa" la que hiciera toda la conversión o algo por el estilo? |
![]() |
#13 | |
Editor Marciano
|
Quote:
|
|
![]() |
#14 | |
Marciano
![]() |
Quote:
Supongo que te he liado más :-) Saludos. |
|
![]() |
#15 |
Marciano
![]() |
En efecto, es lo que dice SuperJoc, hay cosas que son iguales y en las que el código (si está bien hecho y abstraído del hardware) no cambia. Pero claro, hay que tener en cuenta las características, la topología y las limitaciones del hardware. Por ejemplo, imagina que programas en C para PC el Winamp del que estás hablando, y ahora lo quieres meter al microcontrolador. Pues bien, tendrías que implementar desde cero (o buscar a alguien que ya lo haya hecho por tí) las funciones de librería que utilices, el sistema de archivos, las capas de acceso al hardware, el interfaz de usuario, etc. Podrías dejar tal cuál (si está bien implementado) la parte de decodificación de MP3, pero probablemente no mucho más. Luego una vez hecho esto, es posible que te encontrases con estos problemas:
- El micro no tiene suficiente memoria para ejecutar el programa. La mayoría de microcontroladores sólo tienen unos pocos KB de RAM. - El micro no tiene suficiente potencia para ejecutar los algoritmos de decodificación. Los microcontroladores suelen tener una potencia extremadamente inferior a la de los PCs actuales. Hay algunos micros más gordotes que sí que pueden (como los ARM 9, ARM Cortex, etc) o los DSPs (Digital Signal Processors), pero son más caros y complicados para su diseño hardware y software. - No tienes interfaz de usuario: tendrías que dotar a tu placa al menos de un display y unas pocas teclas. - Y dependiendo del hardware, muchas cosas más. No es por desanimarte, pero creo que hacer un Winamp para PC no es un trabajo adecuado para alguien que se inicia en la programación, y mucho menos aún el desarrollarlo para un sistema empotrado. Si realmente te interesa el tema, te recomendaría que busques tutoriales en webs de aficcionados, los sigas, y una vez que hayas hecho alguno que otro, tú mismo te darás cuenta de hasta dónde puedes llegar en función de lo ambicioso que seas y la dedicación que le vayas a dar al tema. Por ejemplo, el sistema de riego de macetas del que hablabas al principio sí que podría ser un proyecto bastante viable para alguien que empieza en este mundillo. |
![]() |
#16 |
VmWareando ESX 3.5
![]() |
Tomo nota de todo, veré que se puede hacer con el C++
|
![]() |
#17 |
Marciano
![]() |
OK, suerte
![]() |
![]() |
#18 |
Marciano
![]() |
Si te sirve de consuelo, por la red vi un tutorial para hacer de un ordena viejo una minicadena, usando el discoduro para meter MP3, un display de cristal liquido para poner nombre de la canción y tal, y de software lo minimo necesario para que funcionase el programita que se instalaba....
Por desgracia no recuerdo donde :P |
![]() |
#19 |
Marciano
![]() |
El hilo debería titularse más bien "Empezando en C++ siendo Chuck Norris". Lo de imprimir "Hola mundo" comprendo que no es muy estimulante, pero es que esto... Desarrollar una aplicación de procesado de audio ya es de por sí complejo; hacerlo con un sistema empotrado lo es mucho más. Lo bueno es que si te pones con ello, además de C++, vas a aprender electrónica, sistemas digitales, programación de sistemas y hasta, por el tipo de aplicación que comentas, procesado de señal.
Ya te han dado muy buenas respuestas, de todas formas, una sugerencia bastante elemental es que busques por Internet la aplicación que tienes en mente, porque a lo mejor ya te la encuentras hecha (o si no la misma, sí una similar). Si tu aplicación no tiene requerimientos de portabilidad y los requerimientos de tamaño no son muy estrictos, una alternativa cómoda es usar por ejemplo una placa Nano-ITX. Resultará excesivo, pero te ahorras el diseño electrónico, no vas a tener problemas de prestaciones y no te van a faltar librerías (es un PC). Eso sí (y creo que esto no te va a gustar ![]() Saludos. |
![]() |
#20 |
VmWareando ESX 3.5
![]() |
Gracias a todos, estoy estudiando posibilidades.
|