¿Por qué compilador IAR?

4

Acabo de ver una nota de aplicación de Atmel sobre cómo compilar algo de código en IAR y me pregunto: ¿por qué alguien usaría un compilador externo si Atmel ya proporciona Atmel Studio, con una interfaz de Visual Studio?

Espero que Atmel Studio tenga las últimas actualizaciones, optimizaciones y códigos para todas las MCU y CPU de Atmel, ¿cuáles son las ventajas de usar IAR? ¿Es solo para personas que están acostumbradas a trabajar con IAR o para mantener un estándar en un gran equipo de diseño?

    
pregunta mFeinstein

3 respuestas

5

Si bien el compilador "propio del fabricante" tiene sus ventajas marginales, para Atmel Studio en este caso, las desventajas correspondientes son muchas:

  • Menos personas verán e informarán errores, o sugerirán mejoras, que para un producto con mayor alcance, como IAR: no solo los usuarios de Atmel compran IAR. Así que menos correcciones o mejoras serán lanzadas. Aquí se hace referencia a errores y características específicos de Atmel, no a entornos de desarrollo genéricos.
  • La inversión en desarrollo es más difícil de justificar para una empresa (es decir, Atmel) cuyo producto comercial principal no es el compilador . Por lo tanto, menos funciones lanzadas por unidad de tiempo.
  • Para muchas casas de desarrollo, el tiempo dedicado a aprender una nueva interfaz más es un gasto injustificable , si se puede usar una plataforma de desarrollo ya familiar. Esto reduce el costo de reentrenamiento a las partes específicas de la arquitectura de hardware de destino solo. IAR es multiplataforma, por lo tanto, es una mejor inversión en este sentido.
  • IAR tiene específicamente funciones útiles en el espacio equipo / desarrollo distribuido , Visual Studio de Microsoft reserva sus propias características de colaboración para sus versiones empresariales, no la versión independiente subyacente de Atmel Studio

Además de esto, la pregunta se aplica genéricamente a todas las plataformas de desarrollo: ¿por qué sobrevivirían comercialmente dos o tres o una docena de productos si ya existe uno que hace el trabajo?

Por ejemplo, uso Code Composer Studio cuando tengo la opción, incluso si tengo acceso a IAR o Atmel Studio, no porque CCS sea definitivamente mejor de alguna manera específica, sino porque es con lo que me siento más cómodo. Otros también juran por su sabor preferido, al igual que con las preferencias de bebidas: " ese aroma sutil de turba y esa riqueza de cuerpo completo de los barriles sazonados ".

    
respondido por el Anindo Ghosh
2

Además de los motivos enumerados en las otras respuestas, IAR generalmente puede proporcionar archivos de salida más pequeños en comparación con avr-gcc (he escuchado afirmaciones de que el 10% es más pequeño, aunque es difícil encontrar buenos puntos de referencia). En una ejecución de producción por volumen, los ahorros de poder usar un procesador más pequeño pueden superar con creces el costo del compilador.

    
respondido por el Jeffrey Nichols
1

Es muy útil tener disponible un proceso de compilación no interactivo, que puede automatizarse e integrarse en un proceso de prueba y lanzamiento más amplio.

Además, IAR está "certificado" ( enlace ) que es un requisito en algunos mercados.

    
respondido por el pjc50

Lea otras preguntas en las etiquetas