关 闭

新闻中心

EEPW首页 > 工控自动化 > 设计应用 > 基于CMOS图像传感器OV7720的网络摄像机设计

基于CMOS图像传感器OV7720的网络摄像机设计

作者: 时间:2011-04-08 来源:网络 收藏


2 系统总体
2.1 系统组成

系统总体分为硬件和软件设计两个部分。硬件设计模块主要包括微控制器模块、接口模块和相机控制模块三部分。微控制器模块主要由主控芯片、DATAFLASH和SDRAM组成,其中主控芯片是整个系统的核心,负责整个系统的调度工作。DATAFASH里固化了嵌入式Linux内核及其文件系统、应用软件和系统配置文件。SDRAM作为内存供系统运行使用。接口模块主要是配合主控芯片传送MPEG-4码流。相机的控制模块主要是由OV529和芯片组成,通过SCCB(Serial Camera Control Bus)将的视频流传送到OV529;OV529通过控制将视频流转化成MEPG-4码流,并完成转发控制相机命令的功能。当系统启动时,微控制器通过SPI将Linux内核转入SDRAM中,系统从SDRAM中启动。
软件设计部分主要包括嵌入式Linux移植、CGI控制程序和MEPG-4解码程序三个部分。嵌入式Linux系统存放到由AT91SAM7X256控制的DAT-AFLASH中,它负责整个系统软件的调度工作。CGI控制程序主要负责对的控制和对MPEG-4视频流的相关设置。MEPG-4解码程序主要负责对通过得到的MPEG-4数据流的解码工作。
2.2 SCCB通信规范
SCCB(Serial Camera Control Bus)是OminiVision公司定义的主从模式串行通信协议,用于控制该公司系列芯片的内部寄存器。该协议有通信使能信号SIO_E、时钟信号SIO_C和数据信号SIO_D,在简化引脚的封装中不再提供SIO_E引脚,协议也变成了两线串行通信。协议支持的最高串行通信速率是400 Kb/s,规定在通信中只能作为SLAVE工作。一SCCBMASTER可以控制1~8个SLAVE工作,由不同的ID来识别,在只有一个SLAVE时固定SLAVE的ID为42H(写)和43H(读)。该协议符合网络CPU的I2C口时序子集,设计中OV529作为SCCB的MASTER,并且只带1个SLAVE 。协议要求数据线必须在时钟信号高电平期间稳定,在低电平时更新。协议支持3字节写、2字节写和2字节读三种传输模式。传输数据时每个字节包括9位串行数据位,除了8位数据,还有第9位不相关位或NA位,用在有多个SLAVE的系统来标识通信是否完成。SLAVE可以用两种方式应答该位,一种是正在被写的SLAVE在收到数据后驱动该位为0表示成功;另一种是SLAVE不应答该位,这种情况下所有SLAVE的第9位保持悬空。在3字节写周期MASTER必须提供子地址,即芯片中寄存器的地址,第3字节为所写数据。读周期不提供子地址,但必须由MASTER把数据后的NA位(第9位)驱动为高电平。所以在每个读周期前必须有3字节或2字节写操作,使SLAVE获得寄存器地址,其中的2字节写周期并没有写数据,它的用途是在读操作前提供给SLAVE子地址。

3 硬件系统实现
3.1 微控制器模块
微控制器模块是该系统的核心部件,采用Atmel公司的ARM7芯片AT91SAM7X256作为系统的主控芯片。它是一款Atmel 32位ARM RISC处理器小引脚数FLASH微处理器,主频为55 MHz,处理速度快,功能强,性价比高,能很好地满足嵌入式Linux系统的需求。它在系统中的主要作用是在系统上电时配置其他芯片的功能寄存器,在正常工作状态下调度整个系统工作,通过片内以太网控制器控制物理层芯片发送码流,并通过片内的SPI总线实现对外围DATAFLASH和SDRAM的控制。
3.2 网络模块
AT91SAM7X256的在片以太网卡端口与网络物理层芯片DM9161E的MII接口通信。发送数据时首先置发送使能信号ETXEN有效。数据发送端ETX0~ETX1与DM9161E的ETX0~ETX1引脚对应连接,作为数据发送通道,以DM9161E的时钟信号REF_CLK发送数据。数据接收端ERX0~ERX1与DM9161E的RXD0~RXD1引脚对应连接,作为数据接收通道。管理时钟信号EMDC和管理数据输入/输出信号EMDIO用于芯片控制参数的写入和读取。DM9161E的MDINTR端用来产生中断信号。片内以太网卡通过DMA通道进行数据发送,不影响AT91SAM7X256的正常运行。首先正确设置传送控制寄存器和传送地址寄存器的传送数据块字节数、数据块存储首地址等参数,随后依次从指定数据存储区地址读取数据,送入内部发送缓冲器中,由MAC对数据进行封装发送,同时记录已传送字节数,直到数据块发送完毕。当发送完一组数据后,发出DMA中断请求,由AT91SAM-7X256进行相应的处理。整个网络子系统电路由AT91SAM7X256控制和调度。


评论


相关推荐

技术专区

关闭