(电路与系统专业论文)基于dsp的智能机器人教学设备开发.pdf_第1页
(电路与系统专业论文)基于dsp的智能机器人教学设备开发.pdf_第2页
(电路与系统专业论文)基于dsp的智能机器人教学设备开发.pdf_第3页
(电路与系统专业论文)基于dsp的智能机器人教学设备开发.pdf_第4页
(电路与系统专业论文)基于dsp的智能机器人教学设备开发.pdf_第5页
已阅读5页,还剩56页未读 继续免费阅读

(电路与系统专业论文)基于dsp的智能机器人教学设备开发.pdf.pdf 免费下载

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

文档简介

摘要 摘要 智能机器人作为现代工业的标志及自动化程度的体现,代表了高新技术的发 展前沿,在工业应用和科学研究等领域的影响也越来越大。智能机器人教学设备 正是针对这种形势而开发的,在机器人人才培养方面具有重要意义。 本智能机器人教学设备具有视觉和运动功能,可以识别和跟踪目标,实现自 主智能控制,同时作为教学设备还兼顾了系统的模块化和可扩展性设计。 根据以上功能描述,将智能机器人教学设备分为四大模块进行设计:以 t m s 3 2 0 v c 5 4 1 6d s p 为核心的控制模块,搭载c m o s 摄像头芯片h v 7 1 3 1 e 1 的 机器人视觉模块,利用u s b 2 0 芯片c y 7 c 6 8 0 1 3 构成的数据传输模块和机器人运 动模块。接着进行了电路的p c b 设计,解决了高速数字设计中存在的信号完整性 和电磁兼容性问题。 本设计实现了可组合扩展的、模块化的智能机器人教学设备,满足了机器人 人刁培养的需要。 关键词:机器人教学设备t m s 3 2 0 v c 5 4 1 6u s b 2 0c m o s 摄像头p c b 设计 a b s t r a c t a b s t r a c t a st h e s i g n o fm o d e mi n d u s t r ya n dt h ee m b o d i m e mo fa u t o m a t i o n ,t h e i n t e l l i g e n c er o b o tr e p r e s e n t st h ed i r e c t i o no fn e wt e c h n o l o g y ,i tp l a y sm o r ea n dl 融o r e i m p o r t a n tr o l e si na p p l i c a t i o no fi n d u s t r ya n ds c i e n t i f i cr e s e a r c h t h ei n t e l l i g e n tr o b o t d e v i c eb a s e do nd s pi sd e v e l o p e df o rt h er e a s o n sm e n t i o n e da b o v e a n di th a s i m p o r t a n tm e a n i n g si nt h ec u l t i v a t i o no f r o b o tt a l e n t s t h ed e v i c e h a st h ef u n c t i o n so fv i s i o na n dm o t i o na n di tc a nr e c o g n i z ea n dt r a c k t a r g e t st or e a l i z et h ei n t e l l i g e n tc o n t r 0 1 a tt h es a r n et i m et h em o d l l l a ra n ds c a l a b l e d e s i g ni sc o n s i d e r e d f i r s t l y , a c c o r d i n gt ot h er e q u i r e m e n t s ,t h es y n e mi sd i v i d e di n t of o u ri n d e p e n d e n t m o d u l e s ,w h i c ha r ed e s i g n e ds e p a r a t e l y t h ef o u rm o d u l e sa r e a sf o l l o w :t h e c o n t r o l l i n gm o d u l e 、v i t ht m s 3 2 0 v c 5 4 1 6d s pc h i pa si t sc o r e t h ev i s i o n a lm o d u l e u s i n gc m o sc a m e r ac h i pn a m e dh v 7 1 3 1 e 1 ,t h ed a t at r a n s f e r r i n gm o d u l eu s i n g u s b 2 0c h i pn a m e dc y 7 c 6 8 0 1 3a n dt h em o t i o nc o n t r o l l i n gm o d u l e t h e s em o d u l e s a r ec o n n e c t e dt h r o u g he x p a n d i n gi n t e r f a c ec i r c u i t s a n dt h e nt h ep a p e rc a r r i e so i lt h e p c bd e s i g na n ds o l v e ss o m ep r o b l e m si nt h eh i g h - s p e e dd r c 嘶td e s i g n ,s u c ha st h e p r o b l e m so fs i g n a li n t e g r i t ya n de l e c t r o m a g n e t i cc o m p a t i b i l i t y t h ed e s i g nr e a l i z e sat e a c h i n gf a c i l i t yo f i n t e l l i g e n tr o b o tw h i c hc a l lb ea s s e m b l e d i nm o d u l e i ts a t i s f i e st h en e e do f t a l e n t sc u l t i v a t i o nc o n c e m i n gw i t hr o b o t k e yw o r d s :t e a c h i n gf a c i l i t yo fr o b o t ,t m s 3 2 0 v c 5 4 1 6 ,u s b 2 0 ,c m o sc a m e r a , p c bd e s i g n 第一章绪论 第一章绪论 1 1 机器人的发展历史 从机器人诞生到本世纪8 0 年代初,机器人技术经历了一个长期缓慢的发展过 程。到了9 0 年代,随着计算机技术、微电子技术、网络技术等的快速发展,机器 人技术也得到了飞速发展。除了工业机器人水平不断提高之外,各种用于非制造 业的先迸机器入系统也有了长足的进展1 1 11 6 】。 自从机器人问世以来,其技术上的发展已经经历了三代【2 l : 第一代是可编程的示教再现型机器人。它不配备任何传感器,一般采用简单 的开关控制、示教再现控制和可编程序控制,机器入的作业路径或运动参数都需 要示教或编程给定。 第二代是具有一定的感觉功能和一定自适应能力的离线编程机器人。这种机 器人配备了简单的内外部传感器,能感知自身运动的速度、位置、姿态等物理量, 并以这些信息的反馈构成闭环控制。简单的外部传感器,如简单视觉、力觉传感 器等,因而具有部分适应外部环境的能力。 第三代是智能机器人。目前正处于研究和发展阶段的智能型机器人,具有多 种外部传感器组成的感觉系统,可通过对外部环境信息的获取、处理,确切地描 述外部环境,能自主地完成某项任务。一般地,它拥有自己的知识库、多信息处 理系统,可在结构化或半结构化的环境中工作,能够根据环境的变化做出对应的 决策。具有很强的自适应能力,并具有自学习、自组织功能。 1 2 智能机器人硬件体系结构 智能机器人是一项涉及多项技术领域的综合研究,属于人工智能发展的最新 技术【3 】。它涉及到了机器视觉、智能控制、通信、机器人学、人工智能等多个领 域与学科。智能机器人的电路控制体系,主要包括驱动控制系统( 运动控制卡、本 体驱动电机、视觉云台控制电机) 、视觉系统( 摄像头、图像采集卡等) 、非视觉传 感器系统( 红外、超声等) 、上位机系统等功能模块。它采用主从结构的分布式处 理方式。用上位机系统协调控制各个子模块系统。各个子系统都有自己的处理器 和数据处理机制,数据处理都在相应子模块的处理器中完成;上位机只是负责数 据融合、任务分解、策略选择制定和协调控制各子模块的工作。当上位机需要某 个模块的数据时,该子模块向上位机提供经过处理以后的数据。大量的数据处理 2 基于d s p 的智能机器人教学设备开发 过程都在各个子模块中完成,上位机得到的都是经过处理后的少量数据,采用这 种方式既提高了上位机的效率,又增加了系统的稳定性,方便系统的维护为了 保证智能系统的功能扩展、技术上的更新和控制算法的研究,系统应具有一定的 开放性和软硬件结构上的可扩展性。合理的模块化设计、有效的任务划分和系统 实时性和多任务要求都是机器人平台研究上越来越应该解决但还没有完全解决的 问题【4 。 近年来,数字信号处理器( d i g i t a ls i g n a lp r o c e s s o r ,d s p ) 以其完善的结构 和优良的性能在通信领域、消费类电子、汽车电子产品等领域的应用日益占有重 要地位,被誉为信息社会革命的旗手,其价格也逐步降低。业内人士预言,d s p 将是未来集成电路中发展最快的电子产品,并成为电子产品更新换代的决定因素。 多个d s p 芯片并行处理的实用化研究,也成为近年来d s p 研究热点之一。因此, 使用d s p 技术提升智能机器人感知、控制性能,提高计算能力,降低总体成本成 为一种发展趋势。 1 3 机器人教学设备概况 机器人产生的初衷是面向工业、农业、国防等领域的不断发展,随着机器人 自身系统的不断升级、更新,人们越来越注意到培养机器人设计、操作人才已成 为机器人发展过程中一个不可或缺的环节。高校作为科技人才培养的重要基地, 对于机器人人才的培养是责无旁贷的。于是一种专门面向教学研究,旨在培养机 器人方面基础人才的教学机器人也就应运而生了。 目前,国内己有部分高校研制开发出了较为成型的机器人教学研究设备,例 如哈尔滨工业大学,清华大学等。另外还有许多高校也正投入到相关产品的研发 工作中,相信不久会有更多相应产品的问世。 1 4 论文背景和工作 1 4 1 问题的提出和研究意义 1 问题的提出 机器人的发展日新月异,新的技术层出不穷,有着很大的发展前景。同时, 面对2 1 世纪激烈的竞争,培养新代机器人方面人才也显得至关重要。作为人才 培养重要一环的大学教育应该为此创造更多的便利条件,充分调动起学生的学习 积极性,培养学生在机器人学习和设计方面的创新意识、思维、方法和能力。由 此,一款优秀的机器人教学实验设备将是大学实验中所不可缺少的。 第一章绪论 目前已有的机器人教学实验设备,硬件架构单一而且固定,实验大多为验证 性,学生无法对其进行相关的设计和改进,难以调动学生的学习兴趣和创新思维, 而且系统多为以单片机作为核心,无法实现复杂的图像信号的处理。 基于d s p 的智能机器人系统正是基于以上的情况而研制的教学设备。通过让 学生利用该设备完成从简单到复杂的智能机器人的设计,制作和开发,从中学习 到机器人设计方面的相关知识,同时机器人系统的智能水平会随着学生对知识掌 握程度的增加而增加,从而提高了学生的学习兴趣,也为一些创新设计提供了条 件,培养了学生的创新能力和创新意识。 2 研究意义 培养机器人方面的人才和学生的创新精神是都是任重而道远的任务。从国家 利益角度而言,创造思维、创造能力和创造精神关系到国家能否有长久发展动力; 从个人角度而言,创造思维、创造能力和创造精神关系一个人能否成为社会的栋 梁。机器人方面人才的培养也是推动我国机器人研究快速发展的重要环节。 本设计实现了具有可组合扩展的、从简单到复杂的智能机器人实验平台,适 应人才培养的需要。该设计成果适合理工科类本科的实践教学,特别适合在电工 电子类实践教学中推广。在促进具有创新能力的人才培养以及推动我国机器人实 验教学发展方面,都将有重要的社会效益和现实意义。 1 4 2 本文的工作和内容安排 本文研究目标是可扩展的智能机器人教学设备硬件系统设计。针对培养学生 创新能力、创新精神和机器人方面人才的问题,探索了一种可扩展的、模块化的 智能机器人开发硬件平台。 全文共分为六章,内容如下: 第一章对智能机器人的历史,硬件体系结构和实验教学设各的发展作了简单 的介绍。 第二章介绍了选用d s p 芯片的标准,并针对本文所采用的t m s 3 2 0 v c 5 4 1 6 芯片,详细介绍了其基本结构和硬件资源。接着阐述了智能机器人控制系统的详 细设计方案,包括d s p 芯片的配置、自启动、外部存储空间的扩展,d s p + f p g a 组合的应用,图像数据的预处理,系统电源的设计和运动模块的设计。 第三章介绍了c m o s 摄像头芯片h v 7 1 3 1 e 1 的内部结构和特点,芯片工作时 序的特点,以及摄像头芯片与d s p 的硬件接口和图像采集程序。 第四章对本文所采用的c y 7 c 6 8 0 1 3u s b 2 0 芯片做了深入的了解。介绍了该 芯片的特点,u s b 设备上电后的工作过程,芯片的固件程序,通用驱动程序和用 户应用程序的设计以及与d s p 的硬件接口。 4 基于d s p 的智能机器人教学设备开发 第五章详细阐述了硬件系统的p c b 设计。从电路板的布局、布线,信号完整 性和电磁兼容性两方面,探讨p c b 设计中应该注意的问题,最后介绍了电路调试 过程中的一些方法和流程。 第六章分析和总结了智能机器人硬件系统的设计成果,本文的主要工作,同 时指出了有待改进的设计。 第二章基于t m s 3 2 0 v c 5 4 1 6 的控制系统设计 5 第二章基于t m s 3 2 0 v c 5 4 1 6 的控制系统设计 2 1 智能机器人教学设备的设计要求 智能机器人教学设备应具有视觉和运动功能,利用内置d s p 芯片采集和处理 图像,实现对目标的识别和跟踪,从而实现小车的智能控制。 同时要求将系统划分为几个独立的模块,各个模块分立设计,可以按照机器 人功能要求组合,实现特定的功能。 针对以上设计要求,我们将系统分为由d s p 和f p g a 构成的核心控制模块, 由c m o s 摄像头构成的视觉图像采集模块,由u s b 2 0 芯片构成的数据传输模块 和由步进电机组成的运动模块。各个模块分立设计,功能独立,可以按照系统要 求随意组合。系统结构框图如图2 1 所示。 图2 1 系统结构框图 2 2d s p 芯片概述 d s p 芯片,也称数字信号处理器,是一种具有特殊结构的微处理器。d s p 芯 片的内部采用程序和数据分开的哈佛结构,具有专门的硬件乘法器,广泛采用流 水线操作,提供特殊的d s p 指令,可以用来快速地实现各种数字信号处理算法。 根据数字信号处理的要求,d s p 芯片一般具有如下的一些特点; ( 1 ) 在一个指令周期内可完成一次乘法和一次加法: ( 2 ) 程序和数据空间分开,可以同时访问指令和数据空间; ( 3 ) 片内具有快速r a m ,可通过独立的数据总线在两块中同时访问; ( 4 ) 具有低开销或无开销循环及跳转的硬件支持; ( 5 ) 快速的中断处理和硬件的支持; 6 基于d s p 的智能机器人教学设备开发 ( 6 ) 具有在单周期内操作的多个硬件地址产生器; ( 7 ) 可以并行执行多个操作; ( 8 ) 支持流水线操作,取指、译码和执行等操作可以重叠执行; 设计d s p 应用系统,选择d s p 芯片是非常重要的一个环节。只有选定了d s p 芯片才能进一步设计外围电路及系统的其它电路。总的来说,d s p 芯片的选择应 根据实际的应用系统需要而确定。一般来说,选择d s p 芯片时应考虑如下诸多因 素f 7 1 : 1 d s p 芯片的运算速度。运算速度是d s p 芯片的一个最重要的性能指标, 也是选择d s p 芯片时所需要考虑的一个主要因素。d s p 芯片的运算速度可以用以 下几种性能指标来衡量: ( 1 ) 指令周期,执行一条指令所需要的时间,通常以越为单位; ( 2 ) m a c 时间,即执行一次乘法和一次加法所需的时间; ( 3 ) f f t 执行时间,即运行一个n 点f f t 程序所需的时间; ( 4 ) m i p s ,即每秒执行百万条指令; ( 5 ) m o p s ,即每秒执行百万次操作; ( 6 ) m f l o p s ,即每秒执行百万次浮点操作; ( 7 ) b o p s ,即每秒执行十亿次操作; 2 d s p 芯片的价格。根据个价格实际的应用情况,确定一个价格适中的 d s p 芯片; 3 d s p 芯片的硬件资源; 4 d s p 芯片的开发工具; 5 d s p 芯片的功耗; 6 其它的因素,如封装的形式、质量标准、生命周期等; d s p 应用系统的运算量是确定选用处理能力多大的d s p 芯片的基础。那么如 何确定d s p 系统的运算量以选择d s p 芯片呢? 1 按样点处理 按样点处理就是d s p 算法对每一个输入样点循环一次。例如:一个采用l m s 算法的2 5 6 抽头的自适应f i r 滤波器,假定每个抽头的计算需要3 个m a c 周期, 则2 5 6 抽头计算需要2 5 6 * 3 = 7 6 8 个m a c 周期。如果采样频率为8 k h z ,即样点之 间的间隔为1 2 5ns 的时间,d s p 芯片的m a c 周期为2 0 0 ps ,则7 6 8 个周期需要 1 5 3 6 l ls 的时间,显然无法实时处理,需要选用速度更快的芯片。 2 按帧处理 有些数字信号处理算法不是每个输入样点循环一次,而是每隔一定的时间间 隔( 通常称为帧) 循环一次。所以选择d s p 芯片应该比较一帧内d s p 芯片的处 第二章基于t m s 3 2 0 v c 5 41 6 的控制系统设计 7 理能力和d s p 算法的运算量。假设d s p 芯片的指令周期为p ( m ) ,一帧的时间 为t ( 您) ,则该d s p 芯片在一帧内所提供的最大运算量为1 y p 条指令 自从d s p 芯片诞生以来,d s p 芯片得到了飞速的发展。d s p 芯片高速发展, 一方面得益于集成电路的发展,另一方面也得益于巨大的市场。在短短的十多年 时间,d s p 芯片已经在信号处理、通信、雷达等许多领域得到广泛的应用。目前, d s p 芯片的价格也越来越低,性能价格比日益提高,具有巨大的应用潜力。 d s p 芯片的应用主要有: ( 1 ) 信号处理一如数字滤波、自适应滤波、快速傅里叶变换、相关运算、频 谱分析、卷积等; ( 2 ) 通信如调制解调器、自适应均衡、数据加密、数据压缩、回波抵消、 多路复用、传真、扩频通信、纠错编码、波形产生等: ( 3 ) 语音一如语音编码、语音合成、语音识别、语音增强、说话人辨认、说 话人确认、语音邮件、语音储存等; ( 4 ) 图像图形一如二维和三维图形处理、图像压缩与传输、图像增强、动画、 机器入视觉等; ( 5 ) 军事一如保密通信、雷达处理、声纳处理、导航等; ( 6 ) 仪器仪表一如频谱分析、函数发生、锁相环、地震处理等i ( 7 ) 自动控制一如引擎控制、深空、自动驾驶、机器人控制、磁盘控制; ( 8 ) 医疗一如助听、超声设备、诊断工具、病人监护等; 一( 9 ) 家用电器一如高保真音响、音乐合成、音调控制、玩具与游戏,数字电 话电视等。 2 3d s p 芯片的基本结构 d s p 芯片的基本结构包括【柏】: 1 哈佛结构 哈佛结构的主要特点是将程序和数据存储在不同的存储空间中,即程序存储 器和数据存储器是两个相互独立的存储器,每个存储器独立编址,独立访问。与 两个存储器相对应的是系统中设置了程序总线和数据总线,从而使数据的吞吐率 提高了一倍。由于程序和存储器在两个分开的空间中,因此取指和执行能完全重 叠。 2 流水线操作 流水线与哈佛结构相关,d s p 芯片广泛采用流水线以减少指令执行的时间, 从而增强了处理器的处理能力。处理器可以并行处理两到四条指令,每条指令处 8 基于d s p 的智能机器人教学设备开发 于流水线的不同阶段。 3 专用的硬件乘法器 乘法速度越快,d s p 处理器的性能越高。由于具有专用的硬件乘法器,乘法 可在一个指令周期内完成。 4 特殊的d s p 指令 d s p 芯片的另一个特征是采用特殊的指令,如d m o v 就是一个特殊的d s p 指令,它完成数据移位功能。 5 快速的指令周期 哈佛结构、流水线操作、专用的硬件乘法器、特殊的d s p 指令再加上集成电 路的优化设计可使d s p 芯片的指令周期达到2 0 0 n s 以下。 2 4d s p 控制模块的设计 本设计中d s p 芯片要在f p g a 的协助下进行图像数据的读取,然后利用内置 的目标识别算法完成图像数据的目标识别,根据目标识别结果发出指令,控制运 动小车移动,同时完成与c m o s 摄像头和u s b 2 ,0 芯片的接口和控制,是整个模 块的核心。 根据以上设计要求选取t i 公司的t m s 3 2 0 v c 5 4 1 6d s p 芯片,该芯片最高工 作频率为1 6 5 m h z ,内部包含1 9 2 k 字的可寻址存储空间:6 4 k 字程序空间,6 4 k 字数据空间,6 4 k 字的i o 空间。片内外设有通用y o 引脚:x f 和b i o ,定时器, 主机接口,串行口,软件可编程等待状态产生器和可编程开关模块,具有8 条1 6 位总线,这8 条总线包括4 条程序数据总线和4 条地址总线。 2 4 1 c c s 集成开发环境。1 t i 公司的d s p 集成开发环境c c s 是一个基于w i n d o w s 的d s p 开发平台, 是一个完整的d s p 集成开发环境,也是目前最流行、最优秀的d s p 开发软件之 c c s 主要包括了以下功能: ( 1 ) 集成可视化代码编辑界面,可以直接编写c 、汇编、h 文件、e m d 文 件等; ( 2 ) 集成代码生成工具,包括编译器、优化c 编译器、连接器等; ( 3 ) 基本调试工具,如装入执行代码( o u t 文件) ,查看寄存器、存储器、 反汇编、变量窗口等,支持c 源代码级调试; ( 4 ) 支持多d s p 调试; 第二章基于t m s 3 2 0 v c 5 4 1 6 的控错8 系统设计 9 ( 5 ) 断点工具,包括硬件断点、数据空间读写断点、条件断点( 使用g e l 编写表达式) 等; ( 6 ) 探针工具( p r o b ep o i n t s ) ,可用于算法仿真、数据监视等; ( 7 ) 分析工具( p r o f i l ep o i n t s ) ,可用于评估代码执行的时钟数; ( 8 ) 数据的图形显示工具,可绘制时域频域波形、眼图、星座图、图像等, 并可以自动刷新( 使用a n i m a t e 命令运行) ; ( 9 ) 提供g e l 工具,用户可以编写自己的控制面板菜单,方便直观的修改 变量,配置参数等; , ( 1 0 ) 支持r t d x ( r e a l t m a e d a t a e x c h a n g e ) 技术,可在不中断目标系统运 行的情况下,实现d s p 与其它应用程序( 0 l e ) 的数据交换; ( 1 1 ) 开放式的p l u g i n 技术,支持其它的第三方a e t i v e x 插件,支持包括软 仿真在内的各种仿真器( 只需要安装相应的驱动程序) ; ( 1 2 ) 提供d s p b i o s 工具,增强对代码的实时分析能力( 如代码执行的效 率) 、调度程序执行的优先级、方便管理或使用系统资源( 代码数据占用空间、 中断服务程序的调用、定时器的使用等) ,从而减少了开发人员对硬件资源熟悉程 度的依赖性; c c s 具有实时、多任务、可视化的软件开发特点,已经成为1 1 公司d s p 家 族的程序设计、制作,调试、优化的重要工具。 2 4 ,2t m s 3 2 0 v c 5 4 1 6 的初始化 d s p 芯片的初始化是设定d s p 芯片工作状态的重要步骤,只有正确进行d s p 芯片的初始化,才能保证芯片的正确运行1 9 1 。 1 寄存器的初始化 d s p 芯片加电复位后处于预先设定的状态,无论是状态寄存器还是控制寄存 器都有一个确定的数值。d s p 芯片复位后,需要对芯片的堆栈指针( s p ) 、存储 器映射的外部控制寄存器( s w w s r 和b s c r ) 、状态寄存器( s t 0 和s t i ) 及模 式控制寄存器( p m s t ) 等进行初始化以适应不同应用的需求。 2 中段矢量表的初始化 正确设置中段矢量表包括:根据d s p 芯片对各中断矢量的位置编写一个子程 序,然后设置p m s t 寄存器,该寄存器的高9 位是i p t r ,用于设置矢量表的起 始地址,链接时将矢量表重定位到i p t r 指定的地址。 3 串行口初始化 t m s 3 2 0 v c 5 4 1 6 包含3 组多通道缓存串行口( m c b s p ) ,每组多通道缓存串 行口有2 3 个寄存器与之相关,除r b r 0 ,2 】、r s r i ,2 、x s r 1 , 2 之外,其中1 5 l o 基于d s p 的智能机器人教学设备开发 个寄存器是可寻址寄存器。由于数据页0 的存储空间限制,有些寄存器必须通过 子地址寻址方式来访问。s p s a _ x 是子地址寄存器,欲访问指定的寄存器,只要 把相应的子地址写入s p s ax 就可以了。 本设计的d s p 初始化程序如下: s w w s r = o x 3 f t 蕾;程序、数据和i o 空间各插入7 个等待周期 s w c r = 0 x 0 0 0 1 ;将插入的等待周期2 b s c r = o x 9 0 0 6 ; c l k m d = p l ld i v i n i t ; 初始化系统时钟 w a i t l o o p ( 0 x 0 4 0 0 ) ; 延时等待 c l k m d = p l ll o c ki n i t _ x ( 9 ) ; 设置工作频率为9 * 1 1 - - 9 9 m h z w a i t l o o p ( o x 0 4 0 0 ) ; p m s t = 0 x 0 1 2 8 ;微计算机模式,片上r a m 可作为程序和数据空间 i n i t _ m c b s p t u 0 0 ; 初始化串口2 为i o 口方式 i n i t _ g p l 0 0 ;初始化主机接1 2 1 为i o 口方式 4 c m d 文件的设置l i l l c m d 是用来分配r o m 和r a m 空间用的,告诉链接程序怎样计算地址和分 配空闻,分两部分m b m o r y 和s e c t i o n s ,结构如下所示: h 住 m o r y 队g e o p a g e l ) s e c t i o n s v e c t o r s : ) v e c sp a g e o产i n t e r r u p tv e c t o rt a b l e + ,r e s e t : c s p a g e or e s e t c o d e m e m o r y 是用来指定芯片的r o m 和r a m 的大小和划分出几个区间, p a g e o 对应r o m ,p a g e i 对应r a m ,p a g e 里包含的区间名字与其后面的参数 反映了该区间的起始地址和长度。 s e c t i o n s 用来指定该段名以下,另一个段名以上的程序( 属于p a g e 0 ) 或数 据( 属于p a g e t ) 放到“ ”符号后的空间名字所在的空间范围。 本设计的c m d 文件配置如下: m 匣m o r y f p a ( 挹o : 第二章基于t m s 3 2 0 v c 5 4 1 6 的控制系统设计 1 1 p _ v e c t ( r i x ) :o r i g i n 。0 7 f 8 0 h p r o g 0 ( r w x ) :耐g i n = 0 6 0 0 h p a g e l : d a t a l ( r w x ) :o r i g i n = 0 2 0 0 0 h d a t a 2 ( r w x ) :o r i g i n = o c 0 0 0 h ) s e c t i o n s l e n g t h = 0 0 0 8 0 h 中断向量表空间范围 l e n g t h = o i a o o h 程序空间范围 l e n g t h = 0 a 0 0 0 h 第一段数据空间范围 l e n g t h = 2 0 0 0 h 第二段数据空间范围 v e c t 0 1 s : p v e c tp a g e 0 将v e c t o r s 段指定到程序段的p _ v e c t 空间 s t a c k : d a t a 2p a g e l 将s t a c k 和h e a p 段指定到数据段的d a t a 2 h e a p : d a t a 2 p a g e l空间 ) 2 4 3t m s 3 2 0 v c 5 4 1 6 的b o o t 设计 在d s p 系统中通常用贴片式f l a s h 存储器保存程序,并且在上电或复位时 再将存储在f l a s h 中的程序搬移到d s p 片内或者片外的r a m 中全速运行。这 个“程序搬移”的过程叫做自举加载,也叫做自启动。 1 a m 2 9 l v 4 0 0 b 的特点 a m d 公司的a m 2 9 l v 4 0 0 b 芯片属于大容量的闪存,它可以存储2 5 6 k 1 6 b “ 的数据。它具备了e p r o m 的特点,且更优于e p r o m 。 对a m 2 9 l v 4 0 0 b 的操作主要分为以下几种:复位、读、字节编程、段擦除、 片擦除。与s r a m 不同的是f l a s h 在操作前先要执行操作命令,而且不同的操 作具有不同的命令字及其相应的地址。例如写命令执行过程为向指定的地址写入 指定的值,具体操作如下:向地址0 a a h ,0 5 5 h ,0 a o h 依次写入5 5 5 5 h ,2 a a a h , 5 5 5 5 h 后,就可以对f l a s h 进行写操作【1 2 1 。 2 t m s 3 2 0 v c 5 4 1 6 与a m 2 9 l v 4 0 0 b 的硬件接口 a m 2 9 l v 4 0 0 b 与1 m s 3 2 0 v c 5 4 1 6 的接口很方便,前者只需作为后者的外部 数据存储器与其进行连接,而片选和译码的逻辑电路接入f p g a 实现即可。这里 使用1 6 位数据宽度,所以f l a s h 的控制8 位或者是1 6 位位宽的b y t e 引脚通 过一个上拉电阻接到3 3 v 电源。硬件连接电路原理图如图2 2 所示。 基于d s p 的智能机器人教学设备开发 图2 2d s p 与f l a s h 的硬件接口 相应的v e r i l o g h d l 语言程序为【l s i : f l a s h _ c e ;c l s pd s f l ( - b d s pa d d r 1 5 ) i t ( b d s p _ a d d r 1 6 ) ;,地址线a 1 5 、a 1 6 f l a s h _ w e ;d s p _ r w t l d s pm s t r b ;| | 参s 译码 f l a s h r e 6 ) & 0 x 0 1 主机接口的第六位定义为m c l k # d e f i n ec a m _ h s y n c ( g p i o s r 5 ) & 0 x 0 1 主机接口的第五位定义为h s y n c 基于d s p 的智能机器人教学设各开发 # d e f i n ec a m _ v s y n c ( g p i o s r 4 ) & 0 x 0 1 主机接口的第四位定义为v s y n c # d e f i n ec a mr o ws e t9 4 # d e f i n e c a m c o l u m n s e t6 4 2 定义要采集图像的行和列的值 u n s i g n e di m p i n g _ b u f f c a mr o w _ s e t c a m _ c o l u m ns e t ; v o i dm a i n ( v o i d ) ( i n i t _ m c b s pt o1 0 0 ;初始化串口2 为i o 方式 i n i t _ g p l 0 0 ; 初始化主机接口为i o 方式 w b i l e ( ! c a mv s y n c ) 判断v s y n c 下降沿的开始,作为一帧图像开始信号 a s m ( ”m o p ”) ; a s m ( ”l o p ) ; w h i l e ( c a m _ v s y n c ) a s m ( ”、恤o p ”) ; a s m ( ”m o p ”) ; w h i l e d c a m _ v s y n c ) ( a s m ( m o p ”) ; a s m ( 、t n o p ”) ; w h i l e ( c a m _ m c l k + c a m _ h s y n c ) 当h s y n c 为高,同时m c l k (,由高变低时,开始采集数据 a s m ( ”t n o p ”) ; a s m ( ”、i n o p “) ; ) i f ( f l a 9 1 ) t e m p i = c a m e r a _ i o ; t e r n p l - - t e r n p l & o x f f ; f l a g l = o : ,将图像数据按照低八位和高八位, 依次存放在位宽为1 6 位的存储空间

温馨提示

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

最新文档

评论

0/150

提交评论