基于WinCE的嵌入式图像采集系统设计

分享到:

 随着我国科技进步和社会的发展,数字视频图像的采集、存储、处理及传输技术在最近几年得到了广泛的应用和发展,各类图像采集及处理系统已经逐渐深入到人们生活的各个方面。与视频采集卡等传统图像采集系统相比,嵌入式图像采集系统具有体积小、成本低、可靠性高等优点,在智能交通、远距离监控、计算机视觉等领域应用广泛。本文介绍了一种应用ARM微处理芯片和WinCE操作系统的图像采集解决方案。

1 系统总体设计

该设计主要由3大部分组成,USB摄像头通过USB接口与AMR开发板(下位机)相连,PC机(上位机)通过网络接口(网卡)和以太网线与ARM开发板相连。摄像头负责对图像数据的采集,然后将数据传送到运行在WinCE上的服务端程序,服务端程序负责将采集到的图像数据进行处理,然后再将其传送到运行在PC机上客户端程序并显示出来。系统总体框图如图1所示。

 

 

2 系统硬件组成

利用ARM9S3C2440A开发板以及一只中星微芯片ZC030x系列的USB摄像头作为硬件环境,在开发板上烧写一个WinCE 5.0的操作系统,并编写一个服务端程序。这个服务端程序运行在WinCE 5.0上,主要完成调用摄像头进行图像采集功能,然后将采集到的图像数据通过以太网传送到PC机上。这就实现了一个基于嵌入式平台的图像采集与传输系统的简单架构。日后可根据实际需要,在这个架构的基础上进行改进以及增加需要的功能。

目前用于摄像头的DSP主要有中国中星微公司的DSP芯片(ZC030X)和美国OV公司的OV511+芯片。在国内市场上,USB摄像头基本上采用中星微公司的DSP芯片,而OVS11+芯片的摄像头则比较难找到。考虑到中星微的市场普及率,本系统采用了ZC030x的DSP芯片。

3 系统软件的开发

3.1 WinCE驱动架构

在WinCE下的驱动开发,需要面向上下2个界面,即:WinCE的驱动结构和具体硬件的Datasheet,所以必须首先深入了解一下WinCE整个系统驱动架构。在WinCE下驱动模型分为本机驱动模型和流接口驱动模型。本机驱动程序用于低级、内置设备,提供一组微软定制的接口,可以通过移植和定制微软提供的驱动样例来实现。

3.2 图像采集模块

图像数据是通过摄像头来采集的,服务端如何调用摄像头已成为问题的关键。硬件与软件之间的联系,必须通过驱动程序来实现。摄像头的驱动已经封装成动态链接库DLL文件了,而且还提供了所有的功能接口函数。因此,只要直接调用其接口函数就能够实现相应的功能。具体的步骤是打开摄像头设备,初始化摄像头设备,初始化视频信息,获取视频帧与JPEG图像,关闭视频设备。其中,获取视频帧与JPEG图像最关键,获取视频帧与JPEG图像的主要代码如下:

3.3 建立与PC操作系统与WinCE系统文件同步

要建立ARM板上的WinCE与PC机上的操作系统同步,必须安装微软提供的同步软件ActiveSync。安装该软件的主要作用是通过USB接口把PC机上编译的应用程序或者驱动文件下载到WinCE上,其界面如图2所示。

 

 

4 系统测试

联机总体调试,也就是将应用程序下载到实际ARM开发板中进行测试。通过上文所述步骤,基本上已将测试环境部署好了,接下来还有一些部署工作需要完成。具体步骤如下:

(1)用交叉网线将ARM板的网络接口与PC机的网络接口连接起来。
(2)利用同步软件ActiveSync将驱动文件ZC030x.dll和应用服务端程序下载到WinCE系统。将ZC030x.dll放到Windows文件夹下。
(3)插入USB摄像头,此时操作系统会提示输入检测到的设备驱动名称,然后输入“ZC030x”。
(4)在WinCE上运行服务端程序,运行界面如图3所示。
(5)在PC机上运行客户端程序,成功接收到JPEG图像,运行界面如图4所示。

 

 

5 结语

设计了采用USB摄像头与S3C2440处理器组成的嵌入式图像采集系统,经在PC机上运行客户端程序,成功地接收到了JPEG图像。试验表明,该系统具有体积小,稳定性高和快速开发的优点。

继续阅读
说火就火的光学指纹识别,究竟有什么

指纹识别最开始进入公众视野是最初广泛应用在指纹打卡机等安防和智能考勤领域,而在手机领域的流行须得归功于乔布斯和他的苹果系列手机,至此,指纹识别已经成为手机的基本配置,随着全面屏热潮来袭,指纹识别方案也在不断进行创新和突破。

基于WinCE的SPI接口驱动程序设计

随着Windows CE 6.0的发布,其内核性能的明显提升和源代码开放,将促使其在消费电子、工业控制、移动通信等领域得到广泛的应用。

SQLite在嵌入式Wince中的应用

首先介绍了SQLite嵌入式数据库的结构和特点与选择必要性及应用到嵌入式系统Wince中的优点;其次介绍以ARM9与Wince6.0为平台,在Visual Studio 2008中开发的嵌入式数据库。通过研究DataGrid在Windows mobile中自动设置列宽的方法,本设计通过软件编程解决了基于Wince6.0的ARM9嵌入式设备中存在的问题,并分析通过DataGrid属性中TableStyles未改变列宽的原因。

基于ARM9的船载监测系统设计

为满足对海岸线水域监测海量数据的需求,设计一种随航船运行的海水参数测量系统。该系统在ARM9平台上,对电源、通信接口、控制接口及A/D等硬件电路进行了扩展,并通过EVC 4.0编写的应用程序实现自动控制,依次完成对水质参数的测量,对GPS定位参数的读取,通过GPRS短信发送终端将数据发送到数据中心,以及将数据存储在机带SD卡中等工作。系统可同时完成8路A/D转换,适于多种海水参数的测量,体积小,应用灵活,且自带LCD触摸屏,操作方便。由Visual Studio 2010中C#编写的数据中心PC程序,是整

基于单片机的低成本CMOS图像采集系统

在很多场合,由于客观条件限制,人们不可能进入现场进行直接观察,只能用适应性更强的电子图像设备来代替完成,在此背景下发展起来的图像技术成为人们关注的热点应用技术之一,它以直观、信息内容丰富而被广泛应用于许多场合。