基于ARM9的CMOS图像采集系统的设计
1 绪论
根据有关科研机构的调查,人类信息的在传递时主要靠的媒介是图像和语言。在人们所获得的信息中,视觉的信息占据了60%,听觉的信息占据了20%,其他的例如味觉,触觉加起来占据了20%。因此,图像是我们在传递信息的所用到的重要媒体和手段。
图像采集系统是一种对现实中图像进行采集的系统,采集的图像主要涉及到人们生活,学习等各个方面,不仅如此在农业,制造业,电子加工业都有着广泛的应用。系统实现的主要的功能是对图像进行实时的采集,存储,显示以及传输。人们利用这种系统能够记录下现实中的图像,对图像进行存储便于以后的分析和使用,并且能够传输图像到网上使人们能够在网上分享大家采集来的图像,以及将图像传输给相关的机构进行分析和调研。
最近几十年的快速发展使嵌入式对图像的采集提供了强有力的技术支持, 32
位嵌
入式RISC微处理器一直在嵌入式领域占据了领头羊的位置。据统计,ARM系列的微处理器几乎已经深入到人们社会生活的各个领域。基于ARM核所研发的的微控制器等一系列芯片不但占据了高端微控制器的市场的相当大的份额,同时也利用ARM微控制器的自身优势在逐渐向低端微控制器相关应用领域扩展,ARM微控制器的优点在于其低功耗和高性价比,并且利用自身的优势向传统的8位/16位微控制器提出了巨大的挑战。目前已经有85%的无线通信设备采用了ARM微处理器以及相关的技术,随着不断的发展ARM以其高的性价比的优势,在该领域的地位也正日益巩固。随着宽带技术的加强,采用ARM技术的ADSL芯片正在逐步获得与同类产品的竞争优势。
此外,ARM向着高速,高分辨率等方向不断发展使其在语音以及视频处理方面也得到了优化,使其对DSP的传统优势作出了严峻的挑战。ARM科技在当下通用的数字机顶盒、数字语音播放器和游戏机中得到普遍的推广。不仅如此在数码相机和打印机中有相当大的比例也都使用了ARM科技。手机中的32位SIM卡也使用了ARM技术。可以看到,ARM处理器正在逐渐代替传统的8/16位微处理器。未来的ARM处理器,将占据相关领域的主要市场。
–1–
基于ARM9的CMOS图像采集系统的设计
2 课题研究的背景及意义
2.1 课题研究的背景
从上个世纪70年代一直到现在我们所熟悉的单片机始终在8位机的档次上徘徊,由8位的单片机作为主要处理器的设计模式始终引领着应用的潮流。当然在一段时期里16位单片机也曾掀起过波浪但是不久也销声匿迹了。科技的发展使人们的需求也日益增长,人们对单片机功耗的高低,速度的快慢、存储能力的大小、通信能力的强弱、功能的多样性、开发设计的方便程度等不断提出更高、更加严格的要求,而随着ARM系列处理器的开发与设计,不仅弥补了8/16位处理器的不足而且还提供了8/16位处理器所没用的优势,并由此引领了新的应用的高潮的到来,不得不说ARM系列微处理器是近些年来发展十分快速的一种微处理器[1]。
便携式电子消费品以及智能设备是ARM系列32位处理器的一个非常重要的应用场所。ARM微处理器的出现以及发展加快了嵌入式产品由原来的军事、工控领域向民用、消费领域的渗透。以MP4、MP5、机顶盒、掌上电脑等产品为代表,便携式电子消费产品已经正式走入了普通人民群众的生活和学习。不仅如此许多智能手机终端都是以ARM9或更高端的ARM芯片为核心处理器而设计的,装入uc/os、linux、WCE等嵌入式操作系统然后再配以相关的应用程序,从而实现了优雅的图形界面和各种独特的智能功能。
在当今,电子设备的功能不断强大,传统的图像采集的方式主要限制于拍照,而这也越来越不能满足人们要求,基于嵌入式的实时图像采集的方法因为其实时性,便携性,以及网络传输性受到广大用户的好评和欢迎,成为近年来的技术热点,不断受到人们的重视。今天的ARM系列芯片价格相低廉,功能强大,其性价比的绝对优势使在以ARM9微处理器为核心的系统平台上实现图像采集系统的设计已经成为可能。
图像采集系统的的前提是需要合理的选择一个性价比高的图像采集芯片。一个好的图像采集芯片会对图像采集系统后续的存储和传输提供便捷,特别是对图像后续的传输功能的实现有着不可比拟的优势。
当今主流的图像传感器主要可以分为两类:CCD(Charge Coupled Device,电荷耦合器件)图像传感器以及COMS(Complementary Metal Oxide Semiconductor补充金属氧化物半导体)图像传感器。CCD一般输出带制式的模拟信号,需要经过视频解码器得到数字信号才能传入微处理器中,而CMOS图像传感器直接输出数字信号,可以直接与微处理器进行连接[2]。不同的CMOS图像传感器有不同的性能,主要表现在图像分辨率大小不同、帧速率不同、曝光方式不同等,CMOS图像传感器可直接通过I2C来设置图像分辨率大小及曝光、增益等参数,而CCD图像传感器则需要对视频解码器进行设置来控制图
–2–
基于ARM9的CMOS图像采集系统的设计
像的曝光、增益等参数信息。相对于CCD图像传感器,CMOS图像传感器具有低功耗、小体积、高速数据传输和方便控制等优点,因此,CMOS图像传感器更适用于嵌入式系统应用中。
2.2 课题研究的意义
众所周知,从上世纪四十年代开始数字计算机的在各个国家各个领域都得到了非常迅猛的发展,随之而来的图像采集系统技术也开始萌芽发展。到了20世纪五十年代中后期,传统的拍照类图像采集方式逐渐向更高级别的实时图像采集系统方面发展,随着嵌入式技术的不断发展采集的设备和仪器不断地趋于便携与智能,功能也不断地提高和加强。截至目前,国内的图像采集系统技术已经得到了很大的发展,工业图像采集系统的功能不断加强,并且已经具有了一定的实时性和便携性,据统计具有便携性以及实时性图像采集功能的装置已经广泛普及了市场,市场占有率大约达到了80%。目前,图像采集系统类产品的市场已具有一定的规模,但随着社会以及科技的发展,人民生活水平的提高,更得益于嵌入式技术的快速发展,智能设备的不断更新及销量的大幅上升,因此功能更加全面的图像采集系统,其销售潜力还有巨大的空间。同时由于各大技术厂商之间的竞争越来激烈,因此图像采集系统的技术越来越受重视。
完整的数字图像处理系统大体上包括了对图像信息的采集、存储、传送、处理、输出、显示等几个方面。而作为实现图像处理系统的基础,图像数据采集在整个图像书记处理系统中都具有重要的意义。本文设计的图像采集系统的核心处理器采用的是三星ARM9处理器S3C2440A,本文详细的讲述了该系统的各个方面的设计包括硬件的设计以及图像传感器的选择与驱动实现的方法和步骤。本文的思路和理念对嵌入式图像采集、处理系统的设计有一定的实际意义和参考价值。
此外,在本设计的基础上我们合理的配上一些应用软件,便可以较快的在摄像采集,监视控制,安全防卫,识别鉴定等各个领域得到相应的应用,具有广泛的应用前景。
–3–
基于ARM9的CMOS图像采集系统的设计
3 系统总体设计方案
3.1 系统硬件方案设计
本文设计的方案是致力于实现图像的采集显示以及利用网络对图像数据进行传输,目前基于嵌入式的图像采集系统的方案主要有以下几种: 1)图像传感器+FPGA+DSP 2)USB摄像头+ARM
3)图像传感器+FPGA+ARM(无Camera接口) 4)图像传感器+ARM(有Camera接口)
方案l的图像处理速度快,但是由于缺乏扩展接口和功能单一,无法完成较复杂的应用。方案2比较容易实现,但是整个系统体积比较大,稳定性和移动性 都较差;方案3的应用比较普遍,但是使用FPGA器件进行时序控制和数据读取,增加了实现的复杂程度,也降低了平台的集成度。方案4的集成度最高,通过ARM直接控制图像传感器增加了系统的可靠性和稳定性,同时提供丰富的扩展接口和外围设备,可以满足更高级的应用。因此具有Camera接口的ARM9处理器以其较高的性价比,较低的功耗,较高的数据处理速度和丰富的扩展接口成为图像采集系统CPU的首选[3]。
根据以上的分析设计系统由五个模块组成:处理器模块,存储模块,图像传感器模块,液晶显示模块,以太网传输模块。系统总体设计方案如图3.1所示。
CMOS图像传感器SDRAM液晶显示S3C2440以太网图3.1 系统总体设计方案
NAND FLASHPC机 –4–
基于ARM9的CMOS图像采集系统的设计
(1) CPU模块由S3C2440A微处理器组成。控制系统负责整个系统的运行控制,包括发送相关的命令字给采集系统、接收传回的图像数据以及把图像数据传给液晶屏显示和以太网传输系统。另外,还包括对意外异常的处理、采样参数的设定、以太网参数的设定、液晶显示器相关参数的设定、存储模块参数的设定等。
(2)存储器模块主要NAND FLASH和SDRAM两部分组成。其中NAND FLASH选用的是256M的K9F2G08U0B芯片,SDRAM选用的是两片64M的MT48LC16M16A2-75D芯片。由于考虑到本设计的图像采集系统不需要将FLASH的数据经常的读取,以及成本和尺寸的要求,所以采用的是NAND FALSH作为程序和数据的存储空间,为了能够充分的使用32位CPU处理器的数据的处理能力系统采用两个SDRAM级联成32位存储系统作为程序的运行空间。
(3)图像传感器模块主要由CMOS图像传感芯片OV9650组成。图像传感器模块主要是负责对图像信息的采集,为后面的图像显示与传输提供提供原始的数据。有图像传感器采集的图像数据经过核心处理器的处理,然后在液晶屏上进行显示,在存储器单元中进行存储 ,并将其能够通过以太网向PC机上进行传输。
(4)以太网模块是以太网传输芯片DM9000以及外围电路组成以太网传输模块实现的主要功能是将采集到的图像通过以太网向上位机也就是PC机终端进行传输,以便进行后续处理和研究工作。
3.2 系统软件方案设计
1)软件设计平台的选择
目前基于ARM平台的软件一般可以分为两种:一种是基于嵌入式系统的软件设计;一种是基于裸机开发的软件设计。选择哪一种平台的软件设计主要是基于设计实际情况的需要。
基于嵌入系统的软件方案设计的优势有:
? 对实时任务有很强的支持能力,能完成多任务并且有较短的中断响应时间,从
而使内部的代码和实时内核心的执行时间减少到最低限度。
? 具有功能很强的存储区保护功能。可扩展的处理器结构,以能最迅速地开展出
满足应用的最高性能的嵌入式微处理器。 缺点有:
? 系统运行的效率相对较低,稳定性较差,设计的方案较为复杂导致遇到程序的
修改相对的复杂。通用性不好,代码可移植性也受限,门槛较高。
–5–