![EDA课程设计-计步器_第1页](http://file3.renrendoc.com/fileroot_temp3/2022-2/8/e0c03a3d-fc05-4122-b2cf-83402b6d876f/e0c03a3d-fc05-4122-b2cf-83402b6d876f1.gif)
![EDA课程设计-计步器_第2页](http://file3.renrendoc.com/fileroot_temp3/2022-2/8/e0c03a3d-fc05-4122-b2cf-83402b6d876f/e0c03a3d-fc05-4122-b2cf-83402b6d876f2.gif)
![EDA课程设计-计步器_第3页](http://file3.renrendoc.com/fileroot_temp3/2022-2/8/e0c03a3d-fc05-4122-b2cf-83402b6d876f/e0c03a3d-fc05-4122-b2cf-83402b6d876f3.gif)
![EDA课程设计-计步器_第4页](http://file3.renrendoc.com/fileroot_temp3/2022-2/8/e0c03a3d-fc05-4122-b2cf-83402b6d876f/e0c03a3d-fc05-4122-b2cf-83402b6d876f4.gif)
![EDA课程设计-计步器_第5页](http://file3.renrendoc.com/fileroot_temp3/2022-2/8/e0c03a3d-fc05-4122-b2cf-83402b6d876f/e0c03a3d-fc05-4122-b2cf-83402b6d876f5.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、信息科学与技术学院EDA技术使用教程课程设计报告题目名称: 计步器设计 学生姓名: 卢 霞 学 号: 2012508179 专业年级: 电信2012级 2班 指导教师: 张锐敏老师 时 间: 2015年1月3日 目录三、设计内容33.1系统分析33.2方案设计43.3电路模块选择43.3.1检测上升沿模块53.3.2计数模块63.3.3扫描输出模块73.3.4输入输出信号模块9四、程序设计9五、仿真结果145.1仿真截图145.2结果分析15六、遇到的问题15七、设计心得16八、参考文献18计步器的设置一、 设计背景从我国的电子计步器市场发展来看,近几年随着行业需求市场的进一步增长,电子计步器
2、呈现良好的发展态势。而随着人民生活水平的逐步提高,大家更加注重身体健康,锻炼在日常生活中显得尤为重要,而计步器就成为了大家比较青睐的锻炼伙伴。此次交计步器的设计采用基于Verilog HDL语言和FPGA的方法来实现所要求的功能。基于FPGA的计步器设计方法具有设计的灵活性,易于修改,设计周期短等纵多优点。随着设计语言、电子设计自动化和FPGA期间的不断发展,基于FPGA期间的不断完善和发展。在不远的将来。由FPGA设计的产品将越来越普遍。二、 设计要求通过对设计的模块划分,以及各模块功能的定义,以FPGA为核心器件,用VHDL设计手段制作、用硬件描述性语言编写程序实现设计中各个模块的基本功能
3、,完成其功能仿真和编译并生成底层模块,在Quartus中完成顶层设计并编译通过,完成设计下载并调试电路。1)系统时钟1MHz;2)拥有计步、暂停、清零(复位)功能;3)输入端每进入一个计步脉冲(可能存在抖动),步数计数+1,计步结果以十进制数显示在数码管上;4)点下暂停键,计数停止,并有信号控制指示灯闪烁,闪烁周期1s;再次点击暂停键,继续计数,指示灯停止闪烁;5)点下清零键,计数归零;6)要求能够对计步脉冲和按键的抖动进行正确处理,2ms以内的变化忽略不计;7)持续10s无计数脉冲后,自动转入暂停状态,计数停止,并有信号控制指示灯闪烁,闪烁周期1s;再次点击暂停键,继续计数,指示灯停止闪烁;
4、三、 设计内容3.1系统分析本实验设计完成一个电路来检测目标运动的次数,并在数码管上显示。用传感器检测抖动信号,采集到的信号经过放大器放大 ,将信号转变成方波,编程将信号在 FPGA 方式处理,并将结果送数码管显示。3.2方案设计 根据设计要求和系统所具有功能,并参考相关的文献资料经行方案设计画出如下所示的计步器系统框图,及为设计的总体方案,框图如下图所示3.3电路模块选择本设计因为各个模块功能简单,故直接用内部信号线连接起来形成一个整体,但是各模块功能简单介绍如下:3.3.1检测上升沿模块DIN为实际检测到的抖动信号,通过和D触发器的配合形成计数模块的使能端信号控制计数器的计数过程。libr
5、ary ieee;use ieee.std_logic_1164.all;use ieee.std_logic_UNSIGNED.all;entity jibuqi isport (din : in std_logic;clk : in std_logic;reset: in std_logic;light:out std_logic_vector(7 downto 0);en_out:out std_logic_vector(7 downto 0);end jibuqi;part1:process(clk,reset)-D 触发器beginif (reset=0) thenb1=0;elsi
6、f (clkevent and clk=1) thenb1=din;end if;end process ;3.3.2计数模块当使能信号EN为1时,通过检测上升沿信号实现计数,并将计数信息保存在b5,b6变量内,b5为计数个位值,b6为计数十位值。part3: process(clk,reset,b4)- 计数器模块beginif (reset=0) thenb50) ;b60);elsif (clkevent and clk=1) thenif (b4=1) thenif (b51001)then b51000) then b50);if (b61001)then b61000)then b
7、60);end if;end if;elsif (b4=0) thenb5=b5;b6=b6;end if;end if;end process;3.3.3扫描输出模块扫描输出模块主要由分频器构成,通过计数器构成的分频器控制电平翻转控制位的选择,以此确定输出十位和个位。part4:process(clk,reset)- 扫描输出模块,控制使能输出beginif (reset=0) thenb80);elsif (clkevent and clk=1) thenif (b81111111111111111) thenb81111111111111110) then b80);end if;end
8、 if;if (b80111111111111111 and b81111111111111111) then b9=1 ;elsif (b80000000000000000) then b9=0;end if;if (b9=1) then en_out=11111101;elsif (b9=0) then en_out=11111110;end if;end process ;part5:process(b9,b5,b6)- 扫描输出模块,控制 LED 管beginif (b9=0) then plays=b5;elsif (b9=1) then playslightlightlightli
9、ghtlightlightlightlightlightlightlight=11111111;end case;end process ;end Behavioral;3.3.4输入输出信号模块din,clk,Reset为输入信号,din为抖动信号,即人体运动时的计步信号,clk为时钟脉冲信号为计数器提供时钟脉冲,Reset为复位信号,实现计步器复位(清零)。En,dout(light)为输出信号,En_out为选择显示十位还是个位,dout为计数值,并编码显示在数码管上。四、 程序设计一个完整的VHDL语言程序通常包括实体(Entity)、结构体、配置、包集合(Package)和库(Lib
10、rary)5个部分组成。下面为此次课程设计的源代码。library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_UNSIGNED.all;entity jibuqi isport (din : in std_logic;clk : in std_logic;reset: in std_logic;light:out std_logic_vector(7 downto 0);en_out:out std_logic_vector(7 downto 0);end jibuqi;architecture Behavioral of jibu
11、qi issignal b1,b4,b9:std_logic;- 中间变量signal b8:std_logic_vector(15 downto 0);- 分频signal b5,b6:std_logic_vector(3 downto 0);- 计数输出个位与十位signal plays:std_logic_vector(3 downto 0);- 选择十位或个位beginpart1:process(clk,reset)-D 触发器beginif (reset=0) thenb1=0;elsif (clkevent and clk=1) thenb1=din;end if;end proc
12、ess ;part2: process(b1,din)- 比较器与门后输出beginif ( b1=0 and din=1 ) then b4=1 ;else b4=0;end if;end process;part3: process(clk,reset,b4)- 计数器模块beginif (reset=0) thenb50) ;b60);elsif (clkevent and clk=1) thenif (b4=1) thenif (b51001)then b51000) then b50);if (b61001)then b61000)then b60);end if;end if;el
13、sif (b4=0) thenb5=b5;b6=b6;end if;end if;end process;part4:process(clk,reset)- 扫描输出模块,控制使能输出beginif (reset=0) thenb80);elsif (clkevent and clk=1) thenif (b81111111111111111) thenb81111111111111110) then b80);end if;end if;if (b80111111111111111 and b81111111111111111) then b9=1 ;elsif (b800000000000
14、00000) then b9=0;end if;if (b9=1) then en_out=11111101;elsif (b9=0) then en_out=11111110;end if;end process ;part5:process(b9,b5,b6)- 扫描输出模块,控制 LED 管beginif (b9=0) then plays=b5;elsif (b9=1) then playslightlightlightlightlightlightlightlightlightlightlight=11111111;end case;end process ;end Behavior
15、al;五、 仿真结果5.1仿真截图 利用uartusII软件对本程序进行编译,生成了可以进行仿真定时分析以及下载到可编程器件的相关文件。仿真结果如图所示设置好的vwf仿真激励波形文件图仿真输出波形报告5.2结果分析通过设定Clk值以及din和Reset的初值,就可以得到如上所示的仿真波形图。由仿真波形图可以看出波形是由din初值信号触发而显示出各个状态的。Reset高电平信号输入时,对应en_out选定位选显示对应计数值。六、 遇到的问题1、 问题首先出现在Quartus软件的应用上,一开始把文件名取名为汉字名“计步器”,出现错误,后来知道,文件必须保存在英文文件夹下。2、 一开始没有注意到程
16、序文件保存时要保存成实体名,VHD的形式,在编译时出错。3、 在写程序的时候会输错部分关键字或漏掉一些小的标点之类的,导致编译不通过,需要经过反复查找,所以,觉得在输入程序时就应注意细节,提高一次正确率,避免一些不必要的小错误的发生,起到事半功倍的效果。4、 在编译过程中一定要按照步骤,细心仔细的完成每一个选项,在这个部分很容易出错。如果选项错误,那么在时序仿真是会出错。七、 设计心得通过本次EDA课程设计,由于我们去图书馆查阅了很多书籍,因此获得了很多知识,同时也发现了自己的很多不足,由于课程设计的时间紧迫,有些瑕疵和漏洞还没有进一步完善。但是通过这几天的学习,我还是发现了很多知识上的漏洞,
17、同时也看到了自己的动手能力还是比较缺乏、独立思考的意识还不强、理论联系实际的能力还急需提高。正是这次课程设计让我学到了很多,我总是想着能动嘴就不动手,因此在实践中总是出现这样那样的问题,但是在大家的齐心协力下,我们不仅巩固了先前学的EDA技术的理论知识,而且也培养了我们的动手能力,更令我的创造性思维得到拓展。在课程设计中一个人的力量是远远不够的,真正完成任务需要我们团结一心,互相协作,在此过程中我得到了师哥师姐们以及同组同学的热心帮助才最终完成了这个题目,我也曾经因为实践经验的缺乏失落过,也曾经仿真成功而热情高涨。在设计过程中,我们应该培养自己的独立思考、分析问题的能力。通过这次的设计,实现了自己动手实践。实现了理论与实践相结合。在课下和同学的交流中,我发现我们所欠缺的东西真的很多,需要学习的东西更多,只有一直保持积极向上、激情活力的心,有目标、有理想,并不断为之付出努力,就一定会取得成功。最后,通过这次的课程设计,还有一点是我们做任何事情都无法缺少的,那就是细心认真。此次设计我们就深深地体会到了,由于编程的时候没有做到足够的细心,导致一串代码弄混了。但是密密麻麻的英文字母混在一起,我始终没有发现。最终在调试的时候,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 零售业中的顾客安全保障措施
- DB3715T 69-2025研学旅游指导师服务规范
- 专业技术人才海外培训服务合同(版)
- 上海股权转让合同文本
- 二手房转让合同定金协议书范本
- 中外合资企业劳动合同样本
- 个人保证担保融资合同协议
- NBA赛事中国区电视转播合同
- 互利共赢投资合作合同
- 个人物流配送服务合同模板
- 注射用醋酸亮丙瑞林微球
- 部编版语文五年级下册 全册教材分析
- 胎儿性别鉴定报告模板
- 大学生就业指导PPT(第2版)全套完整教学课件
- 家具安装工培训教案优质资料
- 湖南大一型抽水蓄能电站施工及质量创优汇报
- 耳穴疗法治疗失眠
- 少儿财商教育少儿篇
- GB 1886.114-2015食品安全国家标准食品添加剂紫胶(又名虫胶)
- envi二次开发素材包-idl培训
- 2022年上海市初中语文课程终结性评价指南
评论
0/150
提交评论