可编程逻辑器件及EDA技术课程设计-基于FPGA的超声波测距电路.docx

可编程逻辑器件及EDA技术课程设计-基于FPGA的超声波测距电路.docx

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
可编程逻辑器件及EDA技术课程设计——基于FPGA的超声波测距电路和其扩展应用摘要本课设使用FPGA和其他模块为硬件基础,以VHDL为硬件描述语言进行超声波测距电路的搭建,完成数码管精度为2厘米的实时显示,并且在基本电路的基础上使用蜂鸣器扩展出“倒车雷达”功能,在距离不同的区间内蜂鸣器会响出不同的频率的声音,总体是距离越小,频率越高。过程中,进行了需求分析,可行性分析,模块建构和调试下载等过程,从中学到很多工程实践过程中的知识。关键字:FPGA ;Quartus II;超声波测距;倒车雷达;VHDL一、需求分析:本次课程设计要求用PFGA和所学VHDL知识进行设计具有某种具体功能的电路系统。我本次课设选题为:基于FPGA的超声波测距电路和其扩展应用。用以实践在课堂上所学知识内容,加深理解。 超声波测距是一般的电路系统,在生活中有很多应用,比如倒车雷达和扫地机器人自动避障等。此功能在单片机上实现更为方便,成本也更低。但此次课设使用FPGA用硬件描述语言来构建此电路是对FPGA本身功能和各模块使用的学习和提升。二、功能描述:使在数码管上实时显示障碍物与测试模块的距离,要求显示米、分米和厘米位,数码管精度为2厘米,实时显示,并且在基本电路的基础上使用蜂鸣器扩展出“倒车雷达”功能,在距离不同的区间内蜂鸣器会响出不同的频率的声音,总体是距离越小,频率越高。此功能在单片机上实现更为方便,成本也更低。但此次课设使用FPGA用硬件描述语言来构建电路是对FPGA本身功能和各模块使用学习的提升。三、可行性分析要实现以上所描述的功能,我们可以从三方面进行可行性分析:1.器件可行性分析FPGAFPGA型号为EP4CE6E22C8N,其Total logic elements 为6272,满足大多数开发要求。PERIPHERAL”特权同学“开发板(SF-CY4),晶振(25MHZ),拨码开关4个,共阴极数码管(LG3641AH),蜂鸣器,按键等。超声波测距模块 网上所购得超声波测距标准模块HC-SR04。????????? 感应角度不大于15度;?????? 探测距离2cm-450cm?,高精度可达0.2cm;?2.功能可行性实现用FPGA产生一满足超声波模块的触发信号,使之开始工作,等待接受回声信号。回声引脚接受到回声信号后,开始记录整个高电平所持续时间,再根据脉冲周期计算的超声波往返的总时间,用公式S=340*T/2来计算相对距离(340为默认声速,可调)。再开关选择打开时,蜂鸣器开始工作,根据超声波返回高电平信号记录周期数,设定判断距离标准。到达某特定标准区间就产生一个特定频率信号给蜂鸣器,使之发出特定频率。3.数据操作可行性VHDL语言可以调用的IEEE库,其中常用的IEEE.STD_LOGIC_1164IEEE.STD_LOGIC_ARITHIEEE.STD_LOGIC_UNSIGNED包含大多数数学运算需求和数据的类型转换,在此提出类型转换资料,方便今后的使用四、模块化建构根据功能要求可以分析需要建立的模块如下图:接下来进行逐步分析构建:1.分频模块freq板子提供的晶振为25MHZ,而其他有关时钟的模块,考虑人眼视觉暂留,触发时间和所需精度要求,可以选取时钟频率分别为100KHZ和1KHZ。采用“计数取反”的方法进行分频。“计数分频”是指计数N个取反一次逻辑信号会产生周期为2N的频率信号,达到分频目的。25MHZ为100KHZ的250倍,因而从0到124计数。25MHZ为1KHZ的25000倍,因而从0到12499计数。2.触发模块launch以分频模块提供的100KHZ为时钟,周期为10微秒,其中高电平为5微秒。已知超声波模块完成触发需要大于10微秒的高电平,所以需要至少两个周期(上升沿触发)。另外,发射触发后需要等待接收到信号并进行处理再发射下一次触发,才能保证系统实时性。不然会出现返回信号混叠引起计算错误。再者,每次发射接收数据所需时间要保证两个方面:第一,发射周期要保证大于返回高电平持续的两倍;第二,数据刷新速度要适应人眼视觉感官。第一个方面得不到保证会影响实时性。第二个方面得不到保证会使人感觉数据变化突兀。因而,占空比不为50%,且可大致画时序图如下:器件最大距离为4.5m,计量时钟为100KHZ,则触发周期可以计算为:其中,为触发计数上升沿数;为测距往返最大值的上升沿计数。(为满足发射和返回信号的实时性,应满足两倍的)。其中为满足触发条件,所以取值为5。根据器件测量极限为4.5米,所以综合起来,N最小为5299。再考虑人眼适应性,经过调试取N为12000。3.接收模块receive以分频模块提供的100KHZ为时钟,周期为10微秒。本模块可以完成对ECHO的高电平持续时间计数。模块要求高电平时开始计数,为低时把计数

文档评论(0)

***** + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档