嵌入式数字摄像机配置系统设计
扫描二维码
随时随地手机看文章
0 引 言 本文以basler a202k面阵ccd摄像机的配置为目标设计嵌入式摄像机配置系统。basler公司提供了2种摄像机配置方案:一是利用该公司提供的摄像机配置软件cct+(camera configuration tool plus),二是利用该公司提供的二进制配置命令,由用户编程实现。本文采用二进制配置命令,通过设计的嵌入式系统配置摄像机。该摄像机的二进制配置命令帧格式如下: 起始字 描述字 数据段 bcc 结束字 bcc是块检查字(block check character),需要由用户计算。 此外还有测试图像命令、选择启动点,视频输出格式选择、水平binning和竖直binning等命令。摄像机配置和摄像机特性的关系为:aoi(area of interesting)用于局部扫描的控制,binning用于分辨率的控制,定时器用于曝光时间的控制等。1 系统结构与原理 设计的摄像机配置系统所在的图像处理系统框架。 其中rs232和rs644是控制通道所用的协议,即摄像机配置系统的通道;lvds和camera link是数据通道用到的协议。 根据所在系统的通道协议和摄像机的配置命令,同时考虑到必要的人机交互,设计了摄像机配置系统3大模块:数据处理模块,对二进制配置命令进行必要的处理;通信模块,通过rs232串口收发摄像机配置命令;人机接口模块,用于对摄像机配置的调节更改以及配置参数的显示。此外还有支持处理器工作的时钟、电源等。 系统的工作原理为:处理器接收数据输入,根据接收到的输入执行相应的操作,通过串口读写配置命令,从而达到对摄像机的配置调节,并根据需要显示配置参数。2 硬件设计 由于高的性价比,单片机广泛应用于信号检测、信号处理、数据采集和控制系统中。设计的系统以at89c51ac2单片机为处理器,以拨码开关、键盘阵列为调节输入,以数码管作为显示输出。同时利用了键盘/显示芯片intel 8279简化系统设计。串口芯片选用max232a。系统工作时钟为11.059 2 mhz,整个系统采用+5 v单电源供电。 以下介绍开关电路、键盘显示电路的设计和功能分配;串口电路和其他电路为单片机系统的常规电路,故此从略。2.1 开关电路 利用单片机p1口的直接输入/输出功能,接开关和led,单片机复位时,p1口皆为高电平,常态为高电平,led不亮。当某一开关接通时,对应的p1.i口被拉成低电平,对应的led亮。2.2 键盘/显示电路 intel 8279有键盘处理和自动显示功能。在8279内部有2个ram:一是键盘fifo堆栈/传感器ram,具有自动消抖动和双键互锁功能;另一个是显示ram,最多可为16个数码管提供ram。 设计的系统需要用到6个数码管,因此需要扩展8279的扫描输出线。选用3~8译码器74ls138来扩展,同时设8279的工作方式为外部译码方式。由于8279的驱动能力较弱,采用74ls06驱动。数码管编号为d0~d5。d0和d5分别表示显示数据的最低位和最高位,其余类推。3 软件设计 软件系统的总体思想如下:首先对单片机和8279进行初始化,然后通过单片机,把不需要调整的命令送到摄像机对摄像机进行控制;再写进另一部分命令,先给一定的初值,送到摄像机,可以根据需要随时通过键盘进行调整,这部分命令一直存储于单片机的ram。然后单片机不断查询键盘和开关,一旦有动作,就调用与动作相对应的子程序进行相应的处理。3.1 存储单元的分配 at89c51ac2内部有256 b的片内ram,其中有一半为特殊寄存器,剩下的另一半可供用户自由使用。128 b的ram不能存储所有的摄像机配置命令。为简化电路,硬件电路不外接ram,系统采用分时复用策略使用这128 b的ram。ram的分配如下:00h到07h是寄存器r0到r7。08h到0fh用以传送开关命令和暂存从摄像机读回的命令;10h到15h用以暂存经过调整要传送给8279的显示ram的数据;16h到18h用以暂存从命令帧中提取的数据;19h到1ch用以暂存命令数据的上下限。20h之后的ram,用以存放经常调整的摄像机配置命令。3.2 数据处理3.2.1 显示预处理 从摄像机读回的命令中提取的命令值在写进8279显示ram之前要做一定的调整。为简化程序,在显示子程序中,数据的显示代码(共阴极)只列了从00h到0fh的16个。而命令值的一个字可以是00fh到ffh中的任意一个,从10h到ffh的数值必须转换为00h到0fh的组合来显示,如ffh一个字变为两个字:0fh和0fh。3.2.2 数据判限和计算 对于大部分的摄像机配置命令,数据段的值只有在一定的范围内或是一定值的组合时才是有效的。但是摄像机本身并不执行这些数据限制的检查。这项功能由软件编程实现。数据计算包括数据值的加一操作和数据值的减一操作。<