(通信与信息系统专业论文)基于dm642多功能滴定仪的软件实现.pdf_第1页
(通信与信息系统专业论文)基于dm642多功能滴定仪的软件实现.pdf_第2页
(通信与信息系统专业论文)基于dm642多功能滴定仪的软件实现.pdf_第3页
(通信与信息系统专业论文)基于dm642多功能滴定仪的软件实现.pdf_第4页
(通信与信息系统专业论文)基于dm642多功能滴定仪的软件实现.pdf_第5页
已阅读5页,还剩55页未读 继续免费阅读

(通信与信息系统专业论文)基于dm642多功能滴定仪的软件实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 摘要 在粮油品质检测中,需要进行滴定实验以获得样品中某种物质的浓度,以此 作为质量好坏的判断依据。目前国内流行的检测标准都是以颜色变化为主。但在 实际中,无论是人工操作还是仪器判断都存在着缺陷和不足,直接影响判断的准 确性。 本文以一款多功能滴定仪的开发过程为背景,重点工作是系统软件的设计, 主要体现在以下三个方面的软件设计与功能实现上。首先,实现了d m 6 4 2 图像采 集功能;其次,实现了u s b 控制器中数据传输功能:最后,设计了d m 6 4 2 与p c 的通信协议,并在p c 主机上开发了功能强大、界面友好的应用软件。 系统图像采集范围达到2 4 0 * 3 2 0 像素,在1 0 f p s 的采样速率下运行良好,达到 设计要求。目前,整套系统已通过测试,可以自动检测粮油的各种品质参数,具 有良好的稳定性、可重复性和可重新配置升级的功能。该设备已通过成都粮食储 藏科学研究所验收。即将投入实际应用和批量生产。 关键词:d m 6 4 2 ,u s b ,波形描述符,c m o s a bs t r a c t i nt h eq u a l i t yi n s p e c t i o no fc e r e a l sa n do i l s ,t i t r a t i o ne x p e r i m e n ti sn e e d e di no r d e r t oo b t a i ns o m em a t e r i a lc o n c e n t r a t i o n ,w h i c hi sc o n s i d e r e da st h ek e yd a t at od e t e r m i n e t h ec e r e a l sa n do i l sq u a l i t y a tp r e s e n t ,t h ep o p u l a rt i t r a t i o ne x p e r i m e n ts t a n d a r di s b a s e do nc o l o rc h a n g e b u ti np r a c t i c et h e r ee x i s tf l a w si nm a n u a lo p e r a t i o no r e q u i p m e n to p e r a t i o n ,w h i c ha f f e c tt h ea c c u r a c yo ft h er e s u l t s t h i sp a p e rt a k e st h em u l t i f u n c t i o n a lt i t r a t i o ne q u i p m e n ta sb a c k g r o u n d i ti s m a i n l yd i s c u s s e dt h a ts o t t w a r ed e s i g ni nt h es y s t e m t h ew h o l ep a p e ri sc o n s i s t e do f t h r e ep a r t so fs o f t w a r e ,w h i c ha r et h es o f t w a r ea b o u ti m a g ea c q u i s i t i o nf u n c t i o no i l d m 6 4 2 ,t h es o f t w a r ea b o u td a t at r a n s p o r ta n da p p l i c a t i o ns o f t w a r eo np c a tp r e s e n tt h es y s t e md e v e l o p m e n ti sc o m p l e t e d i th a sp a s s e das e r i e so ft e s t si n t h ec h e n g d ug r a i ns t o r a g er e s e a r c hi n s t i t u t e i ti si n d i c a t e dt h a tt h es y s t e mh a sw e l l a c c u r a c ya n ds t a b i l i t yt h r o u g ht h et e s tr e s u l t k e y w o r d s :d m 6 4 2 ,u s b ,g p i f , c m o s 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工 作及取得的研究成果。据我所知,除了文中特别加以标注和致谢的地 方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含 为获得电子科技大学或其它教育机构的学位或证书而使用过的材料。 与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明 确的说明并表示谢意。 签名:熟丛 日期:叫。年多月节日 论文使用授权 本学位论文作者完全了解电子科技大学有关保留、使用学位论文 的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁 盘,允许论文被查阅和借阅。本人授权电子科技大学可以将学位论文 的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或 扫描等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后应遵守此规定) 签名:熟篮 导师签名:逊垒么丝 纠 日期:叫d 年月斗日 第一章绪论 1 1 项目背景介绍 第一章绪论 目前实验室滴定分析采用的都是传统滴定法,它是根据指示剂的颜色变化指 示滴定终点,然后测量标准溶液消耗体积,计算分析结果。另外,电位滴定法也 是实验室中常用的滴定方法,其工作原理是在滴定过程中通过测量电位变化以确 定滴定终点的方法。二者原理不同但互为补充,使滴定方法更加多样、更加准确。 这两种滴定方法各有所长,同时也存在着一定的局限性。基于颜色变化的传 统滴定方法易于操作,便于实现,无论是国际还是国内实行的滴定方法都是以传 统滴定方法为标准,具有广泛的认同性。但传统滴定法由于要加指示剂可能引起 溶液量的变化或者对颜色判断有误而引起误差。甚至由于溶液颜色过深,浑浊等 因素无法完成滴定过程。 电位滴定法一般具有较高的准确度和精密度,容易准确测定终点。但分析时 间较长,所以对具有挥发性物质的检测,电位滴定法存在着局限性。另外,当溶 液浓度过低时,无法保证测量的准确性。 权衡两种方法的利弊,发现对于粮食质量检测中几个典型的滴定实验,基于 颜色变化的传统滴定法更具优势,更加权威。国家现行标准中详细阐述了传统滴 定法的操作过程及判断标准。 传统滴定法大多是人工操作,很难解决颜色判断不准,误差大,结果不可靠, 可比性差等缺陷。 因此设计一种自动滴定仪,采用机器视觉技术,利用c m o s 图像传感器获取 滴定实验过程的实时图像,根据颜色变化实现滴定过程的自动处理、控制及判断, 从而解决人工滴定诸多缺点。适用于粮食存储、质量品质判定、粮食加工、粮食 交易、陈粮鉴别等领域。 1 2 现有系统的缺陷和不足 基于颜色变化的自动滴定仪可以看作是人工滴定法的扩展。其滴定原理与人 工滴定法相同,只是通过仪器设备自动判断滴定终点。 随着电子技术的飞速发展,基于传统滴定法的滴定仪也迅速出现。较早期的 电子科技大学硕士学位论文 设备只能完成滴定过程,判断滴定终点,实验后期的数据记录、数值计算等操作 还要靠人工完成。这种半自动的滴定仪并没有从根本上解决人工干预的问题,不 但存在由于人工操作而引入的误差,而且依旧要求操作者对滴定实验十分了解, 来完成后期实验数据的处理工作。操作者一边要操作仪器,另一边要处理数据, 从某种程度上反而增加了负担。 随后,一种自动的滴定仪应运而生。它完全实现了滴定过程的自动判断及后 期的数据处理,不再引入人工操作误差,降低了实验对操作者的技术要求,甚至 可以直接打印出实验分析报告。但这样的滴定仪具有一定的局限性:由于硬件系 统的制约,它只能进行一种或两种相似的滴定实验;其次,无法修改参数,改变 实验步骤,这样进一步限制了它的应用。所以,这种滴定仪只能完成对特定实验 的自动检测工作,不能完成其他滴定实验,从而限制了它的应用范围。 随着个人电脑的迅速普及,人们更倾向于利用电脑完成各种工作。同时,各 种应用软件的开发也变得简单,围绕电脑的外部硬件资源也越来越丰富。具备上 述软、硬件基础,人们开发了一种以电脑为中心,可以实现更多功能,完成更多 实验的多功能滴定仪。其系统主要是由基于p c i 总线的标准工业摄像头连接电脑 完成滴定实验的实时图像采集,由软件程序判断、控制滴定过程,从而完成实验。 在软件中可以灵活更改参数,修改步骤等。使得该系统的应用范围更加广泛。但 是基于p c i 总线的图像采集消耗了大量的电脑硬件资源,同时电脑还要完成计算, 判断等多种工作,极大的降低的系统的稳定性,经常出现“死机情况。 1 3 新的多功能滴定仪的优点 新的多功能滴定仪仍是以颜色变化为判断标准的滴定系统,其设计也是围绕 个人电脑为设计基础。不同的是为了减低电脑的硬件资源的消耗,外围采用专门 的硬件处理单元完成图像采集、计算等前期的基本数据处理工作。p c 主机只接收 少量的数据用来完成判断,同时发送少量的数据控制外设。p c 端则专注于文件的 管理,方法的编辑,绘图,显示,计算,打印等常规的文件处理。 这样的设计思路,将数据采集和计算放在专门的处理单元中,降低了数据传 输量,不但提高了处理数据的能力,而且节约了时间和p c 端的系统资源。另一方 面,p c 主机从繁琐的计算中解脱出来,更加专注于人机交互,文件管理等功能, 使得系统的操作更加简单、友好。使操作者可在无任何基础的情况下都能完成实 验操作。对于有经验的操作者可以根据实验情况,修改甚至开发新的实验方法, 2 第一章绪论 实现系统的功能扩展。真正的做到“傻瓜式操作一,膏一机多用 ,是名副其实的多 功能滴定仪,不但可以用来做基本的粮油检测,还可以用于实验的开发研究。 1 4 新的多功能滴定仪的设计要求 为了实现上述多功能滴定仪的设计目标,从两个方面对系统设计提出要求。 首先,对于专门的数据处理单元要具有较强的数据处理能力,同时还要具有较丰 富的标准外设接口,能与其他芯片连接,完成图像的采集和外设的控制等。具备 成本较低,开发方便等特点。 其次,对于p c 端的软件设计同样有一定的要求。与数据处理单元的连接接口 应采用较通用的u s b 接口,方便快捷,具有“热插拔 的特点。开发的应用软件 应简单、友好,也要考虑到具备一定的扩展性。满足不同操作者的实验要求。 1 5 新的多功能滴定仪的设计思路 由于多功能滴定仪的功能较复杂,所以将其分成若干个模块来设计是十分有 效的方法,这样各个模块之间的接口设计将成为整个设计中十分重要的部分,同 时也是决定系统性能优劣的重要因素。在后面的章节中,将重点介绍各个模块间 的接口设计及其对应的函数设计。本文的重点是各个模块中的软件设计,相关的 硬件原理只做简单介绍。 1 6 本章小结 本章首先介绍了项目开发的背景。阐述了滴定仪产生的背景及发展的基本过 程。分析了以往各种类型滴定仪的缺点和不足,并提出了新型的滴定仪应具备的 基本功能。同时也对系统的设计提出了基本要求。让读者对本文的背景和设计思 路有一定了解,为后续具体开发工作的介绍做了基本的准备。 3 电子科技大学硕士学位论文 2 1 功能模块设计 第二章系统框架设计 由上一章的介绍可知,新的多功能滴定系统应该通过专门的数据处理单元来 完成滴定过程中实时的图像采集和图像数据的处理等基本工作,而p c 端完成的是 接收少量处理后的与颜色相关的数据,来完成判断、控制等功能,大部分工作集 中到人机交互、文件管理、显示打印等功能上。所以笼统的可以将该系统分为两 部分,第一部分是数据采集及处理模块,这部分工作由专门的数据处理单元完成, 第二部分是判断控制及文件管理模块,这部分工作由p c 机完成,如图2 - 1 所示。 数据采集及判断控制及 处理模块文件管理模块 2 2 系统硬件模块设计 图2 - 1 系统中两大功能模块 系统按照硬件模块可以划分为:图像传感器模块,其主要功能是采集实验过 程中实时的图像数据;数据处理单元模块,其功能接收图像传感器传来的数据, 并完成简单的平滑去噪等计算;u s b 传输模块,主要完成数据处理单元与p c 机间 的通信功能,该单元连接着两大功能模块,是系统中的关键环节;p c 软件模块, 主要功能是接收处理后的数据,用以判断终点,同时发送命令控制外设进行相应 的动作,更多的是完成文件管理和人机交互;最后是外设单元,具体为电子注射 泵和搅拌电机。 分模块的设计方法将系统分为几个部分,根据各个模块的具体任务来有针对 性的实现,便于分工协作和调试。但对于各个模块间的连接必须从整个系统层面 出发,设计出合理的结构,这样才能使后续的开发更有效率,系统更稳定。 为了减轻p c 机的负担,将所有的外设挂在数据处理单元,这样p c 主机只通 过一根u s b 数据线与外围设备相连,系统外形设计也因此变得简单明了,不会出 4 第二章系统框架设计 现各种繁多的控制线路。因此,数据处理单元必须拥有足够的、丰富的外设接口 来接收图像传感器的数据,控制外设,并且能与p c 机通过u s b 接口通信,还要 完成较大的计算量。 2 3 芯片选择及其简介 2 3 1 核心处理芯片 在众多的数据处理单元中满足上述条件的只有d s p 。在d s p 各个系类中, t m s 3 2 0 d m 6 4 2 无疑是满足该系统设计要求的首选型号。 t m s 3 2 0 d m 6 4 2 是公司c 6 0 0 0 系列中的一款定点d s p 芯片,其核心是c 6 4 1 6 型高性能数字信号处理器,该芯片采用第二代高性能、先进的超长指令字v e l o e i t l 2 结构的d s p 核及增强的并行机制,在7 2 0 m 赫兹的时钟频率下,其处理性能为 5 7 6 0 m i p s ,具有极强的处理性、高度的灵活性和可编程性【l 】。 d m 6 4 2 外围集成了非常完整的音频、视频和网络通信等设备及接口,特别适 用于电子视觉,网络视频监控,图像处理等领域。 2 3 2c m o s 图像传感器芯片 为了节约系统开发成本,压缩系统体积,我们选用了c m o s 图像传感器。具 体型号为o m n i v i s i o n 公司生产的o v 7 6 6 0 。o v 7 6 6 0 是一款3 0 万像素的c m o s 传 感器,支持多种输出格式,该系统中采用的输出格式为r g bb a y e r 格式。 该款图像传感器拥有标准的s c c b 接口,该接口协议是一个与1 2 c 类似的协 议,所以通过d m 6 4 2 片上外设资源中的1 2 c 接口对其配置【2 】。o v 7 6 6 0 输出的数 据为8 位并行输出。 2 3 3u s b 芯片 在p c 主机的众多外围接口中,u s b 接口大有取代其他接口的趋势。u s b 接 口统一了各种接口设备的连接头,并且具有“热插拔 的特性,随时可以插入或 拔出u s b 设备,不需再另外关闭电源。总之,u s b 简化外部接口设备与主机之间 的连线,可以连接更多的接口设备,并且拥有比传统的r s 2 3 2 并行接口快许多的 数据传输速度。因此,在该系统中d m 6 4 2 与p c 主机的通信接口,选择了流行的 u s b 接口。 5 电子科技大学硕士学位论文 在该系统开发中,选择了c y p r e s s 公司的e z - u s bf x 2 系列。该系列芯片是 首款集成u s b 2 0 协议的微处理器,他支持1 2 m b p s 的全速传输和4 8 0 m b p s 的高速 传输。e z u s bf x 2 拥有一个独特的结构,其智能串行接口引擎完成与u s b 协议 有关的功能,将嵌入的m c u 解放出来,简化了固件代码的开发【3 】。f x 2 中还包括 一个通用可编程接口( g p m ) ,它支持所有通用的总线标准,可与d s p 直接连接。 正是使用这个接口与t m s 3 2 0 d m 6 4 2 相连,来实现d m 6 4 2 与p c 主机的通信功能。 e z - u s bf x 2 系列拥有多种型号,这里采用的型号是c y 7 c 6 8 0 1 3 5 6 a 。 2 3 4p c 端主机应用程序开发环境 p c 主机端的应用软件也是整个系统中十分重要的部分。不但要实现滴定实验 过程中自动控制和判断的功能,还要完成其他各种各样的人机交互操作。所以, 选择一个合适开发环境,可以准确便捷的实现系统设计中的各种目标。 综合项目要求和各种开发工具的基本特点,选择了n i ( n a t i o n a li n s t r u m e n t s ) 公 司的l a b w i n d o w s c v i 作为p c 主机端应用软件的开发环境。 l a b w i n d o w s c 是一个完全的标准c 开发环境,用于开发虚拟仪器应用系统 【4 j 。它所提供的拖放式的用户编辑器及自动代码生成工具和各种函数库,可以让用 户以极快的速度开发出复杂的测量应用系统【4 】。 2 4 系统框图 根据上述选择的芯片和开发环境,将系统的硬件结构具体划分为几个基本的 硬件模块。如图2 。2 所示。 中断 图2 2 系统硬件结构框图 通过框图不难看出,该系统是以俐s 3 2 0 d m 6 4 2 为核心,充分利用其丰富的 6 第二章系统框架设计 片上外设资源。前端通过d m 6 4 2 的1 2 0 接口配置c m o s 图像传感器( o v 7 6 6 0 ) , 并通过视频接口接收图像数据。通过h p i 接口与u s b 控制器( c y 7 c 6 8 0 1 3 ) 连接, 实现d m 6 4 2 与p o 主机间的通信功能。通过g p i o 的硬件中断控制采集图像的时 间。另外,利用e m i f 接口不但扩展了存储空间,而且与串口芯片相连接,扩展出 标准的r s 2 3 2 通信接口,用来控制注射泵和电机等外设。 这样的设计结构大大降低了p c 主机的负担,同时充分利用d m 6 4 2 的外设资 源,减少了各种数据线,外围设备与p o 主机仅有一根u s b 数据线相连。 2 5 系统工作基本原理 由于系统比较复杂,需要各个模块协调工作,所以先将整个系统的工作流程 简单阐述一下,使读者对整个系统有一个基本的了解,同时也为后续的软件设计 提供一个概括的思路。 系统基本工作流程是:系统上电后,d m 6 4 2 加载程序,通过1 2 0 接口对c m o s 图像传感器进行配置,主要是确定输出模式,图像大小等,完成e m i f 接口配置。 然后,采集两帧图像,由于初始阶段图像数据并不稳定,予以丢弃,然后进入待 机状态,d m 6 4 2 模块准备就绪。在p c 主机端打开用户应用程序自动完成u s b 控 制器固件的下载,u s b 模块准备就绪。开始试验时,用户通过应用程序发送命令 控制u s b 控制器的一个i o 引脚产生一个脉冲,d m 6 4 2 通过外部中断检测到这个 脉冲时,进入中断服务程序,采集三帧图像数据并完成数据的平滑去噪处理,而 后u s b 控制器将数据写入自己的端点( e n dp o i n t ) f i f o 中,自动传输至p c 主机, p o 主机显示图像,绘制曲线,并根据对数据的判断结果,发送控制搅拌电机、注 射泵的命令。至此完成了一次数据采集、判断和控制的过程。如此反复,直至数 据满足结束条件,最终完成滴定过程的自动判断和控制。基本工作流程如图2 3 所示。 7 电子科技大学硕士学位论文 2 6 本章小结 图2 - 3 基本工作流程图 本章介绍了系统的设计思路,将系统按功能分成几个模块,阐述了系统的基 本工作原理。从上面的介绍,不难发现系统功能的实现主要是通过d m 6 2 、 u s b 控制器、p c 主机三个部分相互配合来完成的。每个部分都有各自的功能, 同时又相互联系。所以它们之间的各个接口及接口相关的函数设计就显得尤 为重要。后续的文章将围绕这两部分进行详细的阐述和介绍。 8 第三章图像采集与传输功能的软件实现 第三章图像采集与传输功能的软件实现 从上章的阐述来看,d m 6 4 2 不但完成了数据处理的任务,而且还起着连接 各个模块的重要作用。由于项目本身的要求,没有大量的、复杂的算法计算,可 以说并没有完全发挥出d m 6 4 2 高性能的数据处理能力。但是充分利用多种片上外 设资源协调工作,是该系统实现的特点和难点。这套系统可以应用于其他具有复 杂算法和数据处理要求的项目中。只需添加相应的图像处理算法即可,便于升级 和扩展。所以,抛开针对滴定仪的各种特殊设计,单单从一个视频采集、处理、 显示的系统来看,这套系统也具有速度快,性能高,实现简单,成本低廉的优点。 可以作为后续视频系统的开发平台和学习的范例。 d m 6 4 2 作为系统的核心部分,完成图像采集,数据处理,协议解析,外设控 制等多种任务。灵活运用d m 6 4 2 的多个片上外设接口,是实现该系统功能的关键。 在该系统中用到的d m 6 4 2 外设接口及其功能如表3 1 所示。 表3 - 1 使用到的d i d 6 4 2 外设 外设接口名称用途 e m i f 接口扩展s d r a m 、f l a s h 连接串口芯片 v i d e op o r t 视频接口读入图像传感器o v 7 6 6 0 图像数据 j 2 c 接口配置图像传感器o v 7 6 6 0 的工作模式,图像大小等 h p i 接口u s b 芯片通过该接口读入图像数据传至p c ( 、p i o 检测脉冲,触发中断。 3 1e 川f 接口设计 e m i f 是外部存储器接1 2 1 ( e x t e r n a lm e m o r yi n t e r f a c e ) ,是d s p 芯片上的存储 器扩展接口。一般来说,e m i f 可以实现d s p 与多种类型存储器( s r a m 、f l a s h 等) 的连接【5 j 。 该接口主要包含三个部分:s d r a m 、f l a s h 和串口芯片。其中s d r a m 用 于扩展存储空间,图像数据需要大量的存储空间,而d m 6 4 2 提供的片上存储空间 十分有限,必须为其扩展存储空间。而f l a s h 用于静态保存程序,上电后自启动 9 电子科技大学硕士学位论文 加载程序到相应的s d r a m 空间中。与串口芯片的连接则主要是为d m 6 4 2 扩展出 标准的r s 一2 3 2 接口,控制注射泵和搅拌电机等外设。 e m i f 接口主要涉及硬件方面的设计,由于采用了和开发板相一致的存储器型 号,软件配置有可供参考的例程。而且这部分也不是本文介绍的重点,这个不再 赘述。 3 2i2 c 接口设计 1 2 c 总线是一种由p h i l i p s 公司开发的两线式串行总线。其主要特点是简单有 效。它是由数据线d s a 和时钟线s c l 构成的串行总线,可发送和接受数据。最高 传送速率1 0 0 k b p s 。所有1 2 c 设备都挂在总线上,所以每个设备都有唯一的地址。 c m o s 图像传感器采用的是s c c b 接口协议,该协议可以看做1 2 c 协议,所 以直接用d m 6 4 2 中的1 2 c 接口对其配置。其中,s i oc 和s i od 分别是s c c b 总线的时钟线和数据线。s c c b 总线协议支持两种地址形式:从设备地址,高7 位 用于选中芯片,最低位用于区分读操作或者是写操作。内部寄存器地址,用来决 定要操作的内部寄存器单元的地址。 在配置过程中,采用简单的三相写数据的方式,即先发送o v 7 6 6 0 的设备地 址d ,然后发送要写入数据的寄存器地址,最后发送要写入的数据。对于每个需 要修改的寄存器,都采用三相写数据的方法【6 】。 在使用d m 6 4 2 的片上1 2 c 接口时,需要注意几点:首先,1 2 c 接口所用的时 钟是由d m 6 4 2 系统时钟分频得到,将1 2 c 模块的输入时钟通过三次分频得到 1 0 0 k h z 的时钟。其次,在d m 6 4 2 的配置中,1 2 c 接口函数根据读或写操作自动 添加最低位。而在o v 7 6 6 0 的使用手册中标明其写操作地址i d 是0 x 4 1 ,读操作地 址是0 x 4 2 6 。根据上面的要求,去掉最后的读写位。1 2 c 从设备地址统一为0 x 2 0 。 最后,由于1 2 c 总线时钟频率较低,在发送数据之前,必须检测总线是否空闲, 否则将造成数据丢失,导致程序瘫痪。在条件允许的情况下,尽量加大检测时间, 以确保程序的正常运行【7 】。 d m 6 4 2 提供c s l 函数库,提供了配置1 2 c 模块的c 代码实现,这样省去了配 置繁多的寄存器的工作,使1 2 c 接口的开发直观、快捷。 与1 2 c 接口相连的o v 7 6 6 0 是一款性能优越的低功耗图像传感器。输出速率 达到3 0 帧每秒。它支持多种输出格式,如r a wr g b 、和y c b c r 等。在这 个系统中,采用的输出格式为r a wr g b 。另外,输出图像的大小为2 4 0 * 3 2 0 像素。 1 0 第三章图像采集与传输功能的软件实现 所以,根据这样的要求需要修改对应的寄存器。仅有一个决定输出格式的寄存器, 而图像大小是由六个寄存器决定。水平方向始、末坐标值,竖直方向始、末坐标 值,另外,还有两个低位地址的补充值。因为寄存器字长为8 位,而v g a 格式的 图像大小最大可为6 4 0 * 4 8 0 ,所以需要辅助寄存器才能表达完整。具体设置表3 2 所示。 表3 - 20 v 7 6 6 0 关键寄存器配置 地址 名称设置描述 值 0 x 1 2c o m 70 x 0 5 b i t 2 和b i t 0 决定输出为r a wr g b 格式 0 x 1 7h s t a r t0 x 2 7 水平方向起始点位置的高8 位 0 x 1 8h s t o p0 x 4 5水平方向结束点位置的高8 位 0 x 1 9v s t i u 0 x 1 4竖直方向起始点位置的高8 位 0 x l av s t o p0 x 6 4竖直方向结束点位置的高8 位 0 x 3 2h r e f0 x b f b i t 2 :0 为h s t a r t 低三位b i t 5 :3 为h s t o p 低三位 o x 0 3通f0 x 0 0 b i t 1 :0 为v s t r t 低两位,b i t 3 :2 为v s t o p 低两位 3 3vid e 0p o r t 视频接口 d m 6 4 2 作为一款优秀的视频处理芯片,提供了三个功能强大的视频接口, v p 0 、v p l 、v p 2 8 1 。它们可以配置成视频采集接口、视频显示接口或数据流传输 接口( t s i t r a n s p o r ts t r e a mi n t e r f a c e ) 。每个视频接口都由两个通道组成:通道a 和 通道b 。并且提供了一个可分配的5 1 2 0 字节的f i f o 缓存空间。当配置成采集模 式时,支持b t 6 5 6 、y c 、r a wv i d e o 等多种标准的输入格式,方便与其他视频采 集芯片连接【8 】。 视频接口通过f i f o 缓存空间来存储数据,为了快速的搬移数据,视频接口与 d m a 同时操作来实现数据从f i f o 到片上或片外存储空间的搬移。也就是说当 f i f o 缓存中的数据达到一定程度时,产生一个d m a 事件( e v e n t ) ,触发一次d m a 搬移动作。具体的门限值可以通过软件设置,通常采用一行数据的大小作为触发 门限。 电子科技大学硕士学位论文 3 31vj d e 0p o r t 与0 v 7 6 6 0 连接原理 对于r a w 格式来说,并行输出的数据中不包含同步信息,所以o v 7 6 6 0 提供 二个同步信号:帻同步信号和行同步信号。具体时序如图3 - 1 所示。v s y n c 表示 一帧数据有效,h e r f 表示一行数据有效。 h r e f r d 【7 :0 】 + 豳 j _ _ j _ 三1 :二 r o w 0r o w lr o w 2 图3 - 1o v 7 6 6 0 输出时序示意图 对于r a w 格式的图像数据,d m 6 4 2 的v p 接口提供了一种解决帧同步问题的 方法。通过检测行同步信号的时间间隔来间接地进行帧同步进而舍弃帧同步信 号。其硬件连接原理如图3 - 2 所示。 c l k 玎q+ 一4 8 姗z p c l kv c l k n q a h r e fc a p e n a d 7 :0 j v p x d 9 :0 】 s i oc s c l s 1 0d s d a 图3 - 2 视频接口也o v 7 6 6 0 连接原理 首先将d m 6 4 2 的v p o r t 接口配置成r a w 格式。在r a w 采集方式下,当 c a p e n a 信号被使能时,v p o r t 接口开始采样v p x d 数据线上的数据。通过 v c x s t o p 和v c y s t o p 寄存器设置d m 6 4 2 单帧采样数据的个数。当采样数据达 到f i f o 的门限值时,触发d m a 事件,实现图像采集功能。对于并行输出的r a w 第三章图像采集与传输功能的软件实现 格式的数据中不包含同步信息,d m 6 4 2 提高了一个专门针对r a w 方式的帧同步 解决方案:通过设置v c x s t r t l 寄存器中垂直消隐间隔( v e r t i c a lb l a n k i n gp e r i o d ) v c v b l n k p 和开始同步使能位( s t a r t u ps y n c h r o n i z a t i o ne n a b l e ) s s e 来间接地实 现帧同步功能纠。 在o v 7 6 6 0 的h r e f 引脚上产生如图3 3 所示的波形,其中两帧之间的时间间 隔一一垂直消隐间隔远远大于两行之间的时间间隔一一水平消隐间隔。对于 o v 7 6 6 0 来说两行之间的时间间隔为1 4 4 个p c l k 时钟周期,而两帧之间时间间隔 高达2 3 5 2 0 个p c l k 时钟周期【1 0 1 。利用这一时间关系,d m 6 4 2 可以实现r a w 格 式下的帧同步功能。在s s e 置位且视频口使能的情况下,d m 6 4 2 在两个设置的消 隐间隔后,开始采集数据。通过设置v c v b l n k p 定义一个时间长度作为消隐间隔。 为了保证能准确的找到一帧数据的开始,实现同步功能,v c v b l n k p 必须大于 o v 7 6 6 0 的水平消隐间隔且小于垂直消隐间隔的一半。消隐间隔时间的相互关系如 图3 3 所示。 v c i _ 卜 v c h :水平消隐间隔 v :垂直消隐间隔 v c :设定的垂直消隐间隔 图3 - 3 消隐间隔时间关系示意图 另外,要注意的是由于系统的要求,将v p o r t 接口配置成单帧采样模式,即 采集一帧图像数据后不再继续采集,完成判断、控制等操作后继续采集下一帧。 这样两帧之间的间隔时间较长,所以对于o v 7 6 6 0 输出地图像数据并不是每帧都 需要。值得注意的是通过消隐时间间隔确定同步信息的方式只在视频口使能后进 行一次。由此引发了一个十分重要的问题:在采集了第一帧图像数据后,v p o r t 接口不在继续采集,但o v 7 6 6 0 仍在正常工作。当要采集下一帧数据时,由于同 步操作只进行一次【9 】,v p o r t 接口无法确定帧的开始,也就是说丢失了同步信息。 这样必须关闭v p o r t ,然后重新找到帧同步位置,完成正确的采集过程。 每采集一帧图像必须关闭、开启视频接口,才能实现帧同步操作。如果连续 的采集就不存在这样的麻烦。但在该系统中,溶液反映的时间并不是十分迅速, 1 3 电子科技大学硕士学位论文 没有必要以很高的频率采样,而且如果采用连续采样的方式增加了传输的数据量, 浪费资源,加重了系统负担同时也并不能明显的提高系统的性能。所以,这样的 操作模式,只是针对这个系统的具体情况设计的。如果应用到视频监控领域上, 完全可以改为连续采集方式,为系统的升级和扩展预留出足够的空间。 3 3 2 视频采集功能的软件实现 作为可编程器件,d m 6 4 2 提供的片级支持库( c s l ) 提供了各种外设的c 语 言函数接口,利用这些函数可以方便直观的实现对外设的配置和操作,免去的繁 杂的配置寄存器的过程,但要正确的实现外设功能,不但要了解其工作原理,还 要熟悉相关寄存器的作用。 下面简要介绍一下d m 6 4 2 视频采集功能的软件设计思路,具体详细介绍参见 相关使用手册。 ( 1 ) 首先,要宏定义一些关键的参数。具体有图像水平像素点( 2 4 0 ) 、垂直像素点 ( 3 2 0 ) 、一帧图像数据的总个数( 2 4 0 * 3 2 0 ) 、触发d m a 的f i f o 门限值,采用行水平 像素点的个数为触发门限( 由于d m 6 4 2 的d m a 为6 4 位,视频口总线为l o 位,所 以需要1 6 位来储存,所以一行数据除以四就是f i f o 触发的门限值) 。 ( 2 ) 接下来就是把视频接e 1 配置成我们需要的工作模式。首先,使能视频接口, 设置一帧数据的总个数、f i f o 的触发门限、视频接口的工作模式( 1 0b i tr g b ) 。 最重要的是置位s s e 位和设置v c v b l n k p 的值。前面讨论过水平消隐时间为1 4 4 个p c l k 时钟周期,而垂直的消隐时间为2 3 5 2 0 个p c l k 时钟周期。v c v b l n k p 在寄存器占有1 2 个比特位。其最大的表达值为4 0 9 6 个p c l k 时钟周期,根据要 求4 0 9 6 满足条件,所以将v c v b l n k p 设置成最大值即可【l 。 ( 3 ) 在配置d m a 通道时,采用2 d 搬移模式。首先设置触发d m a 的事件为视频 口触发,源地址为固定地址,是视频口寄存器y s r c a 1 1 】,而目标地址为存储器的 某个连续的存储空间。 ( 4 ) 最后,使能视频接口和d m a 通道。 通过上述的配置,能够实现视频采集功能,但无法采集下一帧数据,前面介 绍过,这种配置方式对帧同步操作只进行了一次。为了能够采集到后续的图像数 据还要添加额外的功能。 系统设计的要求是在发送采集图像命令的时候,视频口才进行采集动作,并 不是同步的采集显示。这样不但节约了传输带宽,降低了运算量,而且还可以灵 1 4 第三章图像采集与传输功能的软件实现 活控制采集数据的间隔时间。 为了达到上述要求,将一个g p i o 作为外部中断映射到i n t 4 中断上,其中断 服务程序控制着启动采集数据的动作,达到了灵活控制采样间隔的目的。具体工 作原理是:将该g p i o 引脚与u s b 控制器的一个i o 引脚相连【1 2 1 。这样在p c 端 发送命令,使u s b 控制器的i o 引脚产生一个脉冲,当d m 6 4 2 检测到这个脉冲时, 执行中断程序,完成采集一帧图像数据的动作。 前面我们知道,帧同步操作只在视频口使能的时候进行一次,如果同步信息 丢失,必须关闭并重新使能视频口。所以中断程序的主要内容就是关闭并重新使 能视频接口,重新找到同步信息,完成正确的采集功能。操作流程如图3 4 所示。 3 4h pi 接口设计 图3 4 视频接口软件设计流程 h p i ( h o s t - p o r ti n t e r f a c e ) 是d m 6 4 2 中的一个并行接口,通过这个接口其他主机 或控制器可以直接访问d m 6 4 2 中的存储空间。在访问过程中,d m 6 4 2 为从属设 1 5 电子科技大学硕士学位论文 备,可以理解成r a m 、f i f o 等存储器【1 3 1 。外部主机通过产生相应的时序,访问 h p i 接i z l - - 个特殊的寄存器,来达到访问d m 6 4 2 存储空间的目的。这三个寄存器 是: h p i 控制寄存器f f m ic o n t r o lr e g i s t e rh p i c ) 、h p i 地址寄存器g - w la d d r e s s r e g i s t e rr e , m ) ,h p i 数据寄存器f f i v id a t ar e g i s t e rr i v i d ) ( j 3 】。 d m 6 4 2 有3 2 并行的外部引脚。所以d m 6 4 2 支持1 6 位和3 2 位接口连接,通 过外部引脚来连接方式来决定其接口工作模式。在该系统中采用的1 6 位模式。 在该系统中利用d m 6 4 2 的h p i 接口与c y p r e s s 公司的c y 7 c 6 8 0 1 3 u s b 控 制芯片连接,实现d m 6 4 2 与p c 主机的通信功能。h p i 接口与c v 7 c 6 8 0 1 3 把d m 6 4 2 与p c 主机联系起来,为p c 端应用程序的开发打下基础,同时该接口设计也是系 统实现的关键部分。 3 4 1h pl 接口与u s b 控制器连接原理 d m 6 4 2 的h p i 接口原理是通过h c n t l i :0 高低电平的组合来选择不同的寄 存器。具体说明如表3 3 所示。h r w 用来区分读写操作。d m 6 4 2 字长为3 2 比特 位,而我们选择的h p i 接口字长为1 6 比特位,所以一个完整的i - i p i 寄存器访问包 含两个半字的操作。用h w i l 来区分第一个和第二个半字。h c s 在其下降沿锁存 各个控制信号( h c n t l 1 :0 、h r w 、h w i l ) 。作为反馈信号,h r d y 表示当前 访问准备就绪【1 5 1 。 表3 - 3h p i 寄存器选择方法 h c 阿n ,1h c 岍i ,2描述 00访问h p i c 寄存器 01访问h p i a 寄存器 1o 访问h p i d 寄存器,i - i p i a 地址自动增加( 自动增量模式) l 1访问h p i d 寄存器,i - i p i a 地址不变( 固定地址模式) 与h p i 接口相连的是c y 7 c 6 8 0 1 3 u s b 控制器。c y 7 c 6 8 0 1 3 中的通用可编程接 1 2 1 ( g e n e r a lp r o g r a m m a b l ei n t e r f a c eg p i f ) 是一个可编程的状态机模块1 4 1 。在g p i f 模式下,c y 7 c 6 8 0 1 3 可由软件来编程输出读写控制波形。所以,它几乎可以对任 何通用总线接口进行访问。 g p i f 中通常有多个控制信号和反馈信号,用来完成对其他总线接口的访问。 1 6 第三章图像采集与传输功能的软件实现 在该系统中采用的是5 6 引脚的封装,对应有三个控制引脚c t l 2 :0 ,和两个反馈 信号r d y i :0 。根据h p i 接口的工作原理将c y 7 c 6 8 0 1 3 与d m 6 4 2 的i - i p i 接口连 接,如图3 - 5 所示。 霾霸溺 :h d 【1 5 p 】t 琴蓊 黔j 蕊善辫 j k 黪! 。j 。觋j 1 5 - o 【j 黪喀冁黪绷黪澄强醣盼3 、r 虢i :冀o j 搿 鼹j 参嬲 rr 彰餮。,;一:7 翻 隧 l r,r l ,j i i j 。j 。,。i 缓j 羚rr ll 黪;r j ;,:霆 rr“,7 r 。 7 ;i 秀雾彩。7 :j 笺蠕 j- 1 - 馘j :# ! 链矗露翻 图3 - 5u s b 控制器与h p i 接e 1 的连接原理 u s b 控制器c y 7 c 6 8 0 1 3 通过两个通用的i o 引脚p a 3 :2 与h c n t l 1 :o 】相连 用来决定访问哪个寄存器。通过g p i f 接口在c t l 2 :0 a :产生相应的访问时序并检 测r d y 反馈信号,就能够完成对d m 6 4 2 的h p i 访问。 这个接1 2 1 设计重点部分在于u s b 控制器能够准确的产生访问时序,并按h p i 接口的访问顺序进行操作。作为d m 6 4 24 端,并不需要特殊的配置代码,只是通过 外部引脚设置选择h p i 工作在1 6 位的模式下,使能h p i 外设接口标志位。 3 5u s b 功能的软件设计与实现 u s b 控制器在该系统中的作用是将d m 6 4 2 与p c 联系起来,将d m 6 4 2 采集 到的图像数据传输到p c 主机端,并且将p c 主机端发送的各种控制命令发送到 d m 6 4 2 中,由d m 6 4 2 完成采样,处理,控制外设等一系列动作。u s b 功能的实 现是该系统的重要部分。 系统中采用的是c y p r e s s 公司的e z - u s bf x 2 系列的c y 7 c 6 8 0 1 3 。该芯片 是以8 0 5 1 单片机为核心,只要具备了单片机开发的基础,就很容易开发出相应的 固件。其次,它集成了u s b 2 0 协议模块,处理复杂繁琐的u s b 通信。它提供的 e z - u s b 固件函数与固件结构,极大地降低了编写固件代码的难度。另外,完全图 像化的g p i f 接口开发环境,更简化了它与其他器件的连接设计。使接口函数的编 1 7 电

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论