¿Cuál es el nombre del lenguaje de programación utilizado para crear software utilizado en cámaras DSLR?

Las cámaras DSLR son ejemplos de sistemas electrónicos integrados bastante pequeños. Para admitir la programación integrada, un lenguaje de programación debe ser:

  • Compacto: no hay una gran cantidad de memoria Flash o RAM disponible.
  • Eficiente: las CPU en el sistema son pequeñas y no terriblemente potentes, ya que necesitan entregar una batería de larga duración. La mayor parte del hardware en el procesador de una DSLR está dedicado al procesamiento de imágenes, y parte de eso es una programación muy poco convencional.
  • Compilado Eso también es una cuestión de eficiencia. Es probable que el idioma utilizado no importe mucho porque queda poca vestimenta de ese idioma en su DSLR. El código de alto nivel está en un servidor de Nikon o Canon en algún lugar, sin duda, pero es solo el código binario cumplido que alguna vez llega a una cámara.
  • Tiempo real: la misma rutina se ejecuta de la misma manera cada vez, en términos de rendimiento, uso de memoria, etc. Y el comportamiento del sistema puede predecirse con precisión y confiarse en él.
  • Compatible con el sistema operativo: el lenguaje tiene que encajar bien con el sistema operativo elegido para el proyecto integrado.
  • Portátil: la configuración del procesador que use este año ciertamente cambiará el próximo año a medida que la tecnología mejore y su nueva DSLR necesite incluir más funciones. El código escrito ahora debe moverse fácilmente a nuevos sistemas.
  • Robustas herramientas de soporte integradas: puede ejecutar cualquier idioma que desee en una PC grande y probablemente obtenga buenas herramientas para ello. Pero las opciones para microprocesadores pequeños están limitadas por el tamaño y la demanda de diferentes herramientas de programación.

El lenguaje más común que admite todo esto es el lenguaje de programación C. La mayoría de los dispositivos integrados están programados en C o en el lenguaje C ++ estrechamente relacionado, la mayoría de los sistemas operativos integrados están escritos en C. Linux, µITRON, VxWorks, y otros sistemas operativos integrados probablemente también están escritos en lenguaje C. Es una apuesta segura que muchas, si no la mayoría de las DSLR y cámaras sin espejo usan el sistema operativo µITRON, ya que se desarrollaron específicamente en la década de 1990 para su uso en este tipo de sistemas integrados.

Algunas cámaras más nuevas pueden ejecutar Android, que también se basa en Linux. Todos los elementos de bajo nivel en Android están escritos en C / C ++, pero las aplicaciones de usuario a menudo están escritas en Java.

Lee mas

El sistema operativo más popular del mundo

En el nivel de fabricación de la cámara, utilizan un lenguaje propietario para programar el sistema operativo de su cámara y otras funciones de firmware.

Pero eso no significa que deba usar su lenguaje propietario para programar su pirateo de firmware.

Muchos proyectos de ingeniería inversa como CHDK, que es el más notable, utiliza C, pero eso es solo una elección de ellos y, a menudo, nada que ver con lo que Canon, Nikon o Sony usan en sus sistemas de cámara.

Es principalmente C.

La pregunta más interesante es el sistema operativo utilizado. Hace unos años, era un ITRON, uITRON en particular.

Matlab es uno de ellos.