No veo nada más que Embedded C. Es una de las habilidades más importantes y necesarias en la industria integrada.
En muchos sentidos, programar un sistema embebido no es muy diferente a la codificación para una computadora de escritorio, pero existen algunas diferencias clave:
- En un sistema integrado, los recursos (memoria y potencia de la CPU) son limitados. En comparación, con los sistemas de escritorio, comúnmente se supone que no tienen límites.
- Los sistemas integrados suelen ser en tiempo real.
- El número de sistemas operativos en uso en las computadoras de escritorio es bastante pequeño. Existen numerosas opciones para los sistemas embebidos, incluido el “metal desnudo” (es decir, ningún sistema operativo).
- Para la primera aproximación, el hardware de todas las PC es idéntico. En comparación, cada sistema integrado es diferente, por lo que la programación cercana al hardware es más común.
En los primeros días de los sistemas embebidos, el factor No. 1 – y, en cierta medida, los números 2 y 4 – resultó en que la mayoría de la programación se realizara usando lenguaje ensamblador. Esto sigue siendo una opción, pero ahora el ensamblaje se usa solo cuando es absolutamente esencial.
- ¿Cómo podemos encontrar la falla en el firmware / hardware en un sistema embebido?
- ¿Qué significa exactamente un ingeniero incorporado?
- ¿Cuáles son los temas candentes de los sistemas embebidos?
- ¿Qué examen es necesario para hacer un doctorado en sistemas integrados en Alemania?
- ¿Cuáles son las mejores instituciones de formación de sistemas integrados en Banglore? ¿Y por qué?
Las necesidades de los desarrolladores integrados son lo suficientemente especiales como para que se espere que se hayan desarrollado lenguajes especializados para satisfacer sus requisitos únicos. Hay ejemplos de lenguajes que se han diseñado desde cero para aplicaciones integradas (por ejemplo, PL / M, Forth, Ada), pero no han encontrado aceptación universal.
C
C fue diseñado en la década de 1970 por Dennis Ritchie en AT&T Bell Labs. El lenguaje se basó en un intento anterior de desarrollar un lenguaje de alto nivel llamado B que tuviera los beneficios del ensamblaje. Esto, a su vez, había comenzado como BCPL en Cambridge, Inglaterra. El libro de referencia original, The C Programming Language de Brian W. Kernighan y Dennis M. Ritchie, se publicó en 1978. La estandarización completa (por ANSI) tomó otros 10 años, y desde entonces ha habido varias iteraciones.
Aunque nunca fue diseñado o destinado para uso incorporado, C sigue siendo el lenguaje de programación integrado más utilizado, con compiladores disponibles para casi todos los microprocesadores, microcontroladores y núcleos de procesadores del mercado.
Aunque C es un lenguaje estructurado, ofrece una gran flexibilidad, lo que permite escribir código que es bastante legible, pero con la ofuscación una opción fácilmente disponible.
Eche un vistazo al árbol genealógico general de los lenguajes de programación.
Tiene una variedad de idiomas para aprender, pero le sugiero que comience con C. Es ampliamente aceptado, y muchos de los lenguajes se derivan o son variantes de C. Fueron diseñados para facilitar la programación, pero con C puede tener un acceso más profundo hacia el hardware.