1 引言
如何更好的获得监控现场的图象数据一直是棘手的一个问题,传统的方法是采用CCD摄象机获取现场的视频信息,这种方法易于实现,但成本较高。随着ARM系列处理器应用的越来越广和基于linux的嵌入式技术的迅速发展,利用linux自身带有的TCP/IP协议来实现远程监控、图象传输已成为可能。本文提出的正是一种这样的方法,利用市场上很常见的中星微系列的USB摄象头来得到现场的图象数据,利用linux内核中的Video4Linux编程接口函数采集图象,并把得到的图象通过Internet传输到上位机PC上,在PC上实现图象的保存和显示。
2 硬件系统设计原理
3 软件系统设计
本文的软件系统设计采用C/S(客户机/服务器)模式,以S3C2410平台作为服务器,以PC作为客户端。服务器的主要任务是把得到的图象数据发送到Internet上去,客户端的任务主要是从Internet上接收得到的数据,并把数据以保存成文件。下面分别讨论两者的具体实现。
3.1 服务器端软件系统设计
3.1.1 建立宿主机开发环境
本文以PC为宿主机,并带有RedHat9.0系统,开发环境就建立在这个平台上,其主要包括:交叉编译器的的选择和安装、NFS和TFTP服务器的配置等。
对于嵌入式系统的开发,由于没有足够的资源在目标板上运行开发工具和调试工具,所以通常采用交叉编译调试的方式。开发时使用宿主机上的交叉
编译、汇编及连接工具形成可执行的二进制代码。然后把可执行文件下载到目标机上运行。本文采用的交叉编译器为arm-linux-gcc,具体安装不再赘述。为了方便调试和下载烧写,可让宿主机支持NFS和TFTP服务器。需要特别说明的是为了支持TFTP服务器需要在安装RedHat9.0时须选择完全