利用USB2.0单片机实现全数字图像的实时采集

发布者:zdf1966最新更新时间:2007-03-09 手机看文章 扫描二维码
随时随地手机看文章
摘要:主要论述利用USB2.0单片机接口技术实现高分辨率(640%26;#215;480点阵以上)、快速(24帧/s以上)全数字图像的实时采集、传输的原理、方法和系统实现,以及相应的固件程序设计。 关键词:USB2.0 接口技术 数字图像 单片机 引言 传统的方法是用视频采集卡(如1394)对视频信号进行采集,利用相应的软件传给PC机,既不方便,也不经济。本文介绍一种利用Cypress公司2002年发布的世界上第一块带 有USB2.0接口的芯片CY7C68013与PC机(主板为支持USB2.0的华硕主板PB533)实现了高分辨率(640%26;#215;480点阵以上)、快速(24帧/s以上)、全数字图像的实时采集系统。 1 数字图像的实时采集原理 数字图像的实时采集原理如图1所示。在图1中,以Omnivision technologies公司的OV7620/7120芯片作为图像采集芯片,其主要特点是该芯片可提供0.5~30帧/s,640%26;#215;480像素点阵CMOS的彩色或黑白数字图像,工作频率为27MHz,像素时钟为27MHz;以Cypress公司的CY7C68013作为CPU控制和USB2.0接口芯片,该芯片的主要特点是在一块芯片上集成了USB2.0内核和引擎、一个增强型51系列的微处理器,及可编程外围接口的芯片,提供了高效率的时序解决方案,在这种有独创性的结构下,仍然使用低价位的51系列的微处理器,其数据传输速度可以达到56MB/s,可以提供USB2.0的最大带宽。因此在图1中,CPU控制和USB2.0接口芯片选择了上述芯片。图像芯片(OV7620/7120)所采集的图像数据按设定的频率(0.5~30帧/s),在CY7C68013内部51CPU的控制下,直接将其送到CY7C68013的FIFO缓冲区,再由其内部的USB2.0接口通过USB电缆将其图像数据传输到计算机。 2 数字图像的实时传输 为了实现数字图像的实时传输,必须解决影响实时传输的几大因素:一是图像芯片采集速度;二是图像芯片与CY7C68013的FIFO缓冲区之间的传输速度;三是CY7C68013内部的USB2.0与带有USB2.0接口计算机之间的传输速度;四是计算机中应用软件的接收图像、处理图像速度。以下将分别加以具体说明。 (1)图像芯片采集速度 图像芯片采集速度是选择图像芯片的关键指标,在该指标满足的前提下,选取图像分辨率相对较高的图像芯片。如可以选取Photobit公司的PB-0300或Omnivision公司的OV7620以及Philips公司的SAA7111等高分辨率图像采集及处理芯片。 (2)图像芯片与CY7C68013的传输速度 一般的,对于大多数CMOS数字图像采集和处理芯片,其数据传输速度为其像素时钟,与其工作频率基本一致,其周期小于40ns;而当CY7C68013工作在主频48MHz时,其内部的通用编程接口可以将外部5~48MHz的数据传输到内部FIFO缓冲区。可见,应选取像素数据传输速度合适的图像采集及处理芯片。 (3)CY7C68013与计算机之间的传输速度 在USB1.0和USB1.1接口中,只支持低速和全速两种传输方式。在低速方式下其最大传输速度为1.5Mbps;在全速方式下其最大传输速度为12Mbps。显然,在这两种方式下要完成高分辨率(640%26;#215;480像素点阵以上)的数字图像实时传输(24帧/s以上)是不可能的。而USB2.0接口,除支持低速和全速两种传输方式外,还支持高速传输方式。在高速传输方式下,其最大传输速度为480Mbps。因此选取带有USB2.0内核的CY7C68013芯片作为USB2.0接口芯片及带有USB2.0接口的计算机,满足数字图像的实时传输速度要求。 (4)计算机中应用软件的处理速度 计算机中,应用软件的接收图像、处理图像速度,也是完成高分辨率数字图像实时传输所面临的一个很大挑战。特别是在Windows多任务作业下的延迟,更是如此。 此外,USB总线的带宽、操作系统等也会影响数字图像的实时传输。 3 系统实现及固件程序设计 (1)系统实现 本系统的具体和详细设计如图2所示的数据采集逻辑原理图。在图2中,图像采集处理芯片用OV7620/7120,时钟频率为27MHz,像素时钟为27MHz;CPU控制和USB2.0接口芯片用CY7C68013,时钟频率为24MHz,通过对CY7C68013内部的CPUCS寄存器进行修改,使其工作在48MHz方式下。根据芯片OV7620/7120及CY7C68013内部的FIFO、通用编程接口等特点,其具体接法是:将OV7620/7120的像素时钟PCLK接到CY7C68013的IFCLK上;OV7620/7120的HREF、VSYNC分别接到CY7C68013的RDY0、RDY1上;同时将OV7620/7120的VSYNC、CHSYNC分别接到CY7C68013的INT0、INT1上。将CY7C68013的PE0、PE1接在OV7620/7120的I2C BUS上。 图2 (2)固件程序设计 按照图2数据采集逻辑原理图,其固件程序设计主要由以下几部分组成。 ①USB2.0接口的初始化程序设计。本段程序主要通过对CY7C68013的CPUCS寄存器进行设定,使CY7C68013重枚举后工作在频率48MHz下;通过对CY7C68013的USBCS寄存器设定,使其USB内核工作在USB2.0方式下,由固件程序应答USB的传输,而不是由USB内核应答;同时通过对CY7C68013的IFCONFIG寄存器设定,使其CY7C68013工作在通用编程接口方式下。 ②图像芯片的初始化程序设计。本段程序主要通过CY7C68013的PE0、PE1模拟I2C BUS的时序,完成对图像芯片的初始化、显示窗口大小、数据格式、显示帧数等工作。 ③通用编程接口(GPIF)程序设计。本接口程序设计主要完成对CY7C68013通用编程接口的初始化以及控制信号RDYx和CTLx(本设计中未用)、数据宽度(8位)、FIFO缓冲区、计数器等的编程设计,并对OV7620/7120的输入信号HREF、VSYNC等进行逻辑控制,即当HREF为高电平、VSYNC为底时,数据开始传输。 ④USB2.0等时传输程序设计。本段程序主要完成USB2.0的等时传输功能。要实时采样数据,必须使用USB2.0的等时传输技术及中断技术。 ⑤主程序设计。在主程序中,除要完成①~④中断论述的功能外,还要给出USB控制传输的固件应答程序及相应的中断初始化和中断服务程序,其完整程序见本刊网站www.dpj.com.cn。 4 结论 本系统在工业在线检测、无人驾驶汽车等领域得到了很好的应用,满足了应用的需求。
引用地址:利用USB2.0单片机实现全数字图像的实时采集

上一篇:PSoC单片机及其茌燃气变频输配与流量计量中的应用
下一篇:基子Atmega103微控制器的家庭信息终端的设计

小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • 学习ARM开发(16)
    ARM有很多东西要学习,那么中断,就肯定是需要学习的东西。自从CPU引入中断以来,才真正地进入多任务系统工作,并且大大提高了工作效率。采 ...
  • 学习ARM开发(17)
    因为嵌入式系统里全部要使用中断的,那么我的S3C44B0怎么样中断流程呢?那我就需要了解整个流程了。要深入了解,最好的方法,就是去写程序 ...
  • 学习ARM开发(18)
    上一次已经了解ARM的中断处理过程,并且可以设置中断函数,那么它这样就可以工作了吗?答案是否定的。因为S3C44B0还有好几个寄存器是控制中 ...
  • 嵌入式系统调试仿真工具
    嵌入式硬件系统设计出来后就要进行调试,不管是硬件调试还是软件调试或者程序固化,都需要用到调试仿真工具。 随着处理器新品种、新 ...
  • 最近困扰在心中的一个小疑问终于解惑了~~
    最近在驱动方面一直在概念上不能很好的理解 有时候结合别人写的一点usb的例子能有点感觉,但是因为arm体系里面没有像单片机那样直接讲解引脚 ...
  • 学习ARM开发(1)
  • 学习ARM开发(2)
  • 学习ARM开发(4)
  • 学习ARM开发(6)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved