诚博国际平台 » 编程知识 » Canon等单反相机里面的程序用的是什么编程语言?

Canon等单反相机里面的程序用的是什么编程语言?

admin 编程知识 210 次浏览 没有评论
本人学过编程,但不了解相机程序的编制语言。但根据相机硬件特性来看,相机程序应该是汇编语言或者是C系列语言编出来的。 既然说到编程语言,就顺便再安利几句为什么我认为是汇编和C编出来,这是依据这两种语言的特性决定的。 汇编语言是一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言。它通常被应用在底层,像硬件操作和高要求的程序优化的场合,以及驱动程序、嵌入式操作系统和实时运行程序都会用到汇编语言。 C语言是一门通用计算机编程语言,应用广泛。可以通过简易的方式进行编译、以及不需要任何运行环境支持便能运行,还提供了许多低级处理的功能。
 web设计的色彩
了解这个问题,首先要明白嵌入式设备的生产流程及原理。 一台嵌入式设备,这里就以相机为例。核心部分是CPU,也就是运算核心,总控大脑,当然相机还包含CCD、CMOS这类的感光芯片,也是属于相机的核心部分。这些芯片,通常是由芯片生产厂商直接集成到一块PCB线路板上,俗称开发板。然后由芯片厂商根据芯片的指令集提供相应的操作系统,通常都是UNIX系列的改版系统。到这一步,基本都是汇编范畴,也是开发者不用太过关心的部分。这个操作系统会提供给中间层的开发者一套API,这套API绝大多数都是基于C语言。 相机厂商购买芯片厂商的开发板之后(这里分开叙述是为了使步骤明确,很多相机厂商自己同时也是芯片厂商,没有芯片制造能力的相机厂商,则可以采用购买的方式),首先根据芯片厂商提供的API文档为自己生产的硬件编写驱动程序,再在操作系统的基础上编写启动后的逻辑应用,比如加载驱动、显示用户界面等等。这部分开发叫做中间件开发,中间件开发最终会将操作系统、驱动程序、可执行的逻辑应用全部打包并且采用一定的压缩算法(这一步可选,根据相机ROM大小而定),生成一个适应相机ROM大小的firmware,也就是最终使用者可以遇到的固件升级里面的“固件”。这个固件会通过串口或者其他连接方式烧录到相机的ROM当中。 同时中间件厂商会提供给上层应用开发者一套基于自己的逻辑应用而开发的SDK,如NikonCtrl、EosCtrl、SonyWifiCtrl、EDSDK等等。这些SDK对上层提供的也是C接口。上层应用开发者可以使用这些SDK开发运行于PC、PAD、Mobile等设备上的应用程序,这些应用程序可以通过这样的路径【App→SDK→中间件逻辑应用→驱动程序→硬件】来实现控制相机的目的。
义乌奥美编程,转载链接。本文永久链接: http://code.ywbb.com/458.html

发表评论

Go 诚博国际