2010-01-23 16 views
6

Me pregunto si alguien sabe de un lugar en la web que puedo comprar o descargar módulos de software, escritos en C o C++, para la interacción entre microprocesadores y otros componentes, como DAC, ADC o UART. Algo así como un git-hub para el software C incorporado. ¿Este lugar existe?lugar para obtener software para componentes integrados?

+0

¿Qué fabricante de chips? –

+1

generalmente este tipo de libs son gratis. Los encontrará bajo el nombre de "Biblioteca de soporte de chips" o CSL en resumen. –

Respuesta

1

Normalmente, el fabricante del dispositivo le proporcionará una libc que puede usar para todas las cosas de bajo nivel.

0

Primero, decida a qué fabricante de chips ir ... luego, vaya a su sitio oficial o contáctelos, obtendrá las libs para los IO compatibles y otros materiales de comunicación.

+3

Hay mucho que decir al hacer esto al revés. –

+0

@nobugz: lo siento pero no pude entender tu comentario ... ¿Podrías por favor elaborar un poco? – wrapperm

+0

averigüe qué chip es compatible con muchas bibliotecas disponibles primero, luego tome la decisión de compra. –

2

Quizás también desee echarle un vistazo al libro Jean Labrosse's "Embedded Systems Building Blocks". Tiene algunas librerías de C rectas para hacer frente a UART, E/S analógicas, temporizadores, etc.

Por supuesto, usted todavía tiene que conectarlos a la aplicación de hardware del chip real (en otras respuestas han indicado, se puede generalmente obtienen libs para ayudar con eso de los proveedores de chips), pero pueden ser un contenedor conveniente para permitirle mover más fácilmente su software de nivel superior de un dispositivo a otro. No hay cosas que rompan la tierra que serían particularmente difíciles de hacer por su cuenta, pero está ahí para tomar, ¿por qué no? Incluso si no es exactamente lo que querrías, es una ventaja.

3

Posiblemente esté buscando algo llamado 'paquete de soporte de la placa' o BSP. Para un sistema operativo dado, tendrá una colección de controladores/bibliotecas para ayudarlo a comunicarse con el componente de hardware.

Dicho esto, algunas interfaces de hardware estándar para p. Ej. 16550 Uart puede tener controladores que vienen con el sistema operativo.

0

Ok, ¿qué tal para TI? Los BSP son algo de lo que soy consciente, pero realmente no existen para el software que existe por debajo del nivel O/S.

En segundo lugar, digamos que quería software deseado para que el microcontrolador TI MSP430 hable con DAC7565. Realmente no puedo encontrar software que relacione esos dos de manera confiable.

Estoy hablando de un paquete de software completo, algo equivalente a una gema en Ruby, donde podría llamar a funciones como "OutputVoltage (voltaje int unsigned, unsinged int channel)" y ser ajeno a la implementación de hardware.

@nobugz Sí, estoy de acuerdo, pero eso es muy restrictivo. C debe ser como Ruby en la que sólo puede concentrarse en lo que quiere hacer, no tener que dedicar tiempo a sí mismo debido a la restricción de la disponibilidad de software ...

+0

Está escribiendo comentarios en el recuadro donde aparecen las respuestas. Así no es como debe funcionar SO. –

0

@Shaihi

no estoy, yo soy un ingeniero de software con una empresa de ingeniería que diseña a medida sus propios tableros. Simplemente no puedo creer que en todo el mundo y en toda la historia de la ingeniería de software sea la primera persona que necesite interconectar este microcontrolador y este DAC. Por lo tanto, debe existir en algún lugar. Tal vez no puedo tenerlo en mis manos, pero alguien, en algún lugar lo ha hecho antes.

Soy un ingeniero muy joven, pero parece que hay cientos o miles de tipos que terminan escribiendo el mismo software una y otra vez. Y además de eso, dado que hay muchos ingenieros de software que son terriblemente buenos para la abstracción y la reutilización, estoy dispuesto a apostar que hay muchos ingenieros que terminan reescribiendo el mismo software una y otra vez porque el software que utilizan la escritura está demasiado unida a esa aplicación específica.

Parece un desperdicio gigante de horas de ingeniería.

+0

Así es como funciona el código fuente cerrado (al menos, como yo lo sé). Puede buscar los controladores en el repositorio de Embedded Linux y si alguien lo usa que tiene el BSP en la línea principal, puede contactarlo para comprarle el HW o simplemente tomar la implementación. Sé, por ejemplo, que con Windows CE terminas escribiendo mucho código de una nueva. Tenemos un proyecto interno que reduce la cantidad de trabajo, pero como no es nuestro principal negocio, no lo vendemos. No estoy familiarizado con alguien que lo haga. – Shaihi

+0

Supongo que publicaste esta pregunta para alguien que podría conocer a una empresa que hace esto, así que descuida mi comentario :) – Shaihi

0

¿Revisó las notas de la aplicación en el sitio web del vendedor de A/D? Muy a menudo tienen código C. El problema con el código de lenguaje ensamblador es que hay tantos vendedores diferentes de ADC y microprocesadores y tantas formas diferentes de conectar el chip que no pueden proporcionar una biblioteca de propósito general. Además, un programador puede querer sondear el indicador de fin de conversión o permitir que el chip interrumpa cuando se complete la conversión. Es muy específico de la aplicación. Su mejor esperanza es que el proveedor tenga algún código de ejemplo que le sirva de guía sobre cómo usar el chip. La buena noticia es que los manuales del usuario para estos periféricos son mucho mejores de lo que eran hace 20 años.

Además, el proveedor probablemente tenga ingenieros de aplicaciones que lo ayudarán con su diseño.

Cuestiones relacionadas