收藏 分销(赏)

EDA专业课程设计出租车计费器的设计.doc

上传人:精**** 文档编号:2727251 上传时间:2024-06-05 格式:DOC 页数:23 大小:617.04KB
下载 相关 举报
EDA专业课程设计出租车计费器的设计.doc_第1页
第1页 / 共23页
EDA专业课程设计出租车计费器的设计.doc_第2页
第2页 / 共23页
EDA专业课程设计出租车计费器的设计.doc_第3页
第3页 / 共23页
EDA专业课程设计出租车计费器的设计.doc_第4页
第4页 / 共23页
EDA专业课程设计出租车计费器的设计.doc_第5页
第5页 / 共23页
点击查看更多>>
资源描述

1、课 程 设 计 报 告课程名称 数字系统和逻辑设计 课题名称 出租车计费器设计 专 业 班 级 学 号 姓 名 指导老师 7月 7日湖南工程学院课 程 设 计 任 务 书课程名称 数字系统和逻辑设计 课 题 出租车计费器设计 专业班级 学生姓名 学 号 指导老师 乔汇东 胡瑛 谭小兰 审 批 乔汇东 任务书下达日期 年 6月 29日任务完成日期 年 7月 7日数字系统和逻辑设计课程设计任务书一 、设计目标全方面熟悉、掌握VHDL语言基础知识,掌握利用VHDL语言对常见组合逻辑电路和时序逻辑电路编程,把编程和实际结合起来,熟悉编制和调试程序技巧,掌握分析结果若干有效方法,深入提升上机动手能力,培

2、养使用设计综合电路能力,养成提供文档资料习惯和规范编程思想。 二、设计要求1、设计正确,方案合理。2、程序精炼,结构清楚。3、设计汇报5000字以上,含程序设计说明,用户使用说明,源程序清单及程序框图。4、上机演示。5、有具体文档。文档中包含设计思绪、设计仿真程序、仿真结果及对应分析和结论。 三、进度安排第十九周 星期一: 课题讲解,查阅资料 星期二: 总体设计,具体设计星期三: 编程,上机调试、修改程序星期四: 上机调试、完善程序星期五: 答辩星期六-星期天:撰写课程设计汇报附:课程设计汇报装订次序:封面、任务书、目录、正文、评分、附件(A4大小图纸及程序清单)。 正文格式:一级标题用3号黑

3、体,二级标题用四号宋体加粗,正文用小四号宋体;行距为22。正文内容:一、课题关键功效;二、课题功效模块划分(要求画出模块图);三、关键功效实现;四、系统调试和仿真;五、总结和体会;六、附件(全部程序原代码,要求对程序写出必需注释);七、评分表。目 录一. 系统总体设计11.1 问题描述11.2 设计思想11.3 引脚分配1二出租车计费功效实现22.1 系统总体框图22.2 程序步骤图32.3 系统各功效模块实现4四. 调试和仿真8五. 总结和体会9六. 附件10七. 评分表15一. 系统总体设计1.1 问题描述出租车计费器通常全部是按公里计费,通常是起步价xx 元(xx 元能够行走x公里),然

4、后再是xx 元/公里。要完成一个出租车计费器,就要有两个计数单位,一个用来计公里,另外一个用来计费用。通常在出租车轮子上全部有传感器,用来统计车轮转动圈数,而车轮子周长是固定,所以知道了圈数自然也就知道了里程。在这个试验中,就要模拟出租车计费器工作过程,用直流电机模拟出租车轮子,经过传感器,能够得到电机每转一周输出一个脉冲波形。 (有条件同学再完成:显示用8 个七段码管,前四个显示里程,后四个显示费用。)1.2 设计思想 该出租车计费器按下开关S1后开始计费和计里程数,起步价是3元,准行1公里,以后1元/公里。时钟输入为一个1KHz系统时钟,直流电机模块每转一圈输出一个脉冲信号给CPU,另外用

5、按键模块S1 来作为整个系统复位按钮,每复位一次,计费器从头开始计费。直流电机模块用来模拟出租车车轮子,每转动一圈认为是行走1 米,所以每旋转1000 圈,认为车子前进1 公里。系统设计是需要检测电机转动情况,每转1000圈,分频模块输出一个上升沿信号。车费和里程数在一个8位7段数码管上显示,前4位显示里程,后4位显示费用。1.3 引脚分配显示:动态八位七段数码管模块动态八位七段数码管模块数码管端口名称FPGA 引脚说明7SEG-AC8显示内容控制7SEG-BC9显示内容控制7SEG-CC7显示内容控制7SEG-DC6显示内容控制7SEG-ED6显示内容控制7SEG-FD9显示内容控制7SEG

6、-GD8显示内容控制7SEG-DPD7显示内容控制7SEG-SEL0A21显示位置控制7SEG-SEL1B21显示位置控制7SEG-SEL2A22显示位置控制7SEG-SEL3D5显示位置控制7SEG-SEL4C4显示位置控制7SEG-SEL5B22显示位置控制7SEG-SEL6A19显示位置控制7SEG-SEL7B19显示位置控制时钟:ClkN1直流电机脉冲输入:pulseAE13一圈一个脉冲复位按键RSTJ7按键S1二出租车计费功效实现2.1 系统总体框图该出租车计费系统由三个模块组成,分别是:计费模块:计算应付车费计程模块:计录已行里程显示模块:将应付车费和已行里程显示在数码管上各模块之

7、间关系为:2 程序步骤图计算旅程框图: q1=0;q2=0; q3=0;q4=0;S1=1meterevent and meter=1money_cn3money_cn1代表4位十进制数加1meter信号发生改变图2 计算旅程框图计算出租车计费框图:a1=0;a2=0;a3=0;a4=3;S1=1q1=q1+1A1,a2,a3,a4代表4位十进制数加1q1信号发生改变图3 计费框图2.3 系统各功效模块实现计算距离模块:REG:PROCESS(s1,meter) beginif s1=1 then q1=0;q2=0;q3=0;q4=0;elsif meterevent and meter=1

8、 then -clkevent and clk=1 thenif q4=9 thenq4=0;if q3=9 thenq3=0;if q2=9 thenq2=0;q1=q1+1;elseq2=q2+1;end if;elseq3=q3+1; end if;elseq4=q4+1;end if;end if;-end if;end process REG;计费距离模块:COM:process( q1) beginif q17 thena4=q1+3;else if q1=7 thena4=0;if a3=9 thena3=0;if a2=9 thena2=0;a1=a1+1;elsea2=a2+

9、1;end if;elsea3=a3+1;end if;else if q1=8 thena4=1;if a3=9 then a3=0;if a2=9 thena2=0;a1=a1+1;elsea2=a2+1;end if;elsea3=a3+1;end if;else if q1=9 thena4=2;if a3=9 then a3=0;if a2=9 thena2=0;a1=a1+1;elsea2=a2+1;end if;elsea3=a3+1;end if;end if;end if;end if;end if;end process COM;显示模块:CAM:process(clk)b

10、eginif clkevent and clk=1 then cout wx=10000000;shuju wx=01000000;shuju wx=00100000;shuju wx=00010000;shuju wx=00001000;shuju wx=00000100;shuju wx=00000010;shuju wx=00000001;shujuduanduanduanduanduanduanduanduanduanduannull; end case;end process; 四. 调试和仿真在调试过程中,出现了很多问题,在编译时出现同时赋值现象:图4 同时赋值现象在程序使用软件仿

11、真时,出现了问题;开始使用10进制数进行仿真时因为在计费时,开始不适应复位信号,就会出现几公里几块钱,一但经过复位以后程序使用就正常了,这是有和我在使用时没有复位时,不给初值一样,以后经过修改以后就正常了。图5 计费仿真图6 距离仿真图7 出租车计费仿真五. 总结和体会经过这次担心而又充实EDA课程设计,我感受到了VHDL语言和一般软件语言之间区分,也能够愈加熟练地利用VHDL语言进行逻辑电路设计了,受益匪浅。在没有进行课程设计之前,我们上机实践历来没有编写过规模如此数字电路系统,最多就写写什么半加器,全加器之类小型实体。而这次课程设计要想实现课题要求功效,必需将若干小型实体组合成一个相对大型

12、实体。不仅如此,在写完程序后,还要把程序下载到芯片内,连接对应电子器件,观察真正效果。所以,经过这次担心课程设计,我体会了从开始利用VHDL语言编程到把设想放到真正在电子器件上实现全部过程,提升了自己从事工程项目设计能力。另外,在课程设计过程,我碰到了很多棘手难题,即使也进行了苦思冥想,却还是得不四处理方法,有时也有想放弃念头,不过最终还是坚持了下来,完成了任务,我意识到以后不管是在工作还是学习中,做工程项目全部需要有忍耐力和坚持。结果关键,过程更是我们学习宝贵经验。课程设计不仅是学习一门课,更能够锻炼我们实践能力,动手操作能力,和处理问题能力。能够将课堂上所学知识灵活、巧妙利用到实践操作上是

13、一次很好体验,和机会。不仅锻炼路我们动手能力,而且加深了对书本了解和填补了书本上所不能包含到东西。所以在对待每一次课程设计时我全部很认真,也最终经过自己努力最终完成了此次课程设计。六. 附件程序源代码:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;ENTITY eda ISPORT(clk : IN STD_LOGIC;-外部时钟输入口 meter : IN STD_LOGIC; - 外部转圈信号输入,假定每个上升沿视为车轮转一圈 S1 : IN STD_LOGIC; - 外部按键输入复位信号,

14、假定低电平表示按键被按下,高电平表示按键未按下wx:out std_logic_vector(7 downto 0); cost1,cost2,cost3,cost4 :out integer range 0 to 9; -输出计费值个位十位百味 dist1,dist2,dist3,dist4 : out integer range 0 to 9); -输出公里数小数点后一位,个位,十位END entity;architecture behav of eda issignal q1,q2,q3,q4:integer range 0 to 9; -signal a1,a2,a3,a4:integ

15、er range 0 to 9;signal cout:STD_LOGIC_VECTOR (2 DOWNTO 0);-signal wx:std_logic_vector(7 downto 0);signal shuju:integer range 0 to 9; -控制旅程和计费数据显示位置signal duan:std_logic_vector(6 downto 0); -控制数码管显示输出beginREG:PROCESS(s1,meter) -计算旅程beginif s1=1 then q1=0;q2=0;q3=0;q4=0;elsif meterevent and meter=1 th

16、en -clkevent and clk=1 thenif q4=9 thenq4=0;if q3=9 thenq3=0;if q2=9 thenq2=0;q1=q1+1;elseq2=q2+1;end if;elseq3=q3+1; end if;elseq4=q4+1;end if;end if;-end if;end process REG;COM:process( q1) -计算出租车计费beginif q17 thena4=q1+3;else if q1=7 thena4=0;if a3=9 thena3=0;if a2=9 thena2=0;a1=a1+1;elsea2=a2+1;

17、end if;elsea3=a3+1;end if;else if q1=8 thena4=1;if a3=9 then a3=0;if a2=9 thena2=0;a1=a1+1;elsea2=a2+1;end if;elsea3=a3+1;end if;else if q1=9 thena4=2;if a3=9 then a3=0;if a2=9 thena2=0;a1=a1+1;elsea2=a2+1;end if;elsea3=a3+1;end if;end if;end if;end if;end if;end process COM;-计费 旅程显示输出CAM:process(cl

18、k)beginif clkevent and clk=1 then cout wx=10000000;shuju wx=01000000;shuju wx=00100000;shuju wx=00010000;shuju wx=00001000;shuju wx=00000100;shuju wx=00000010;shuju wx=00000001;shujuduanduanduanduanduanduanduanduanduanduannull; end case;end process;dist1=q1;dist2=q2;dist3=q3;dist4=q4;cost1=a1;cost2=a2;cost3=a3;cost4=a4;end behav;七. 评分表计算机和通信学院课程设计评分表课题名称: 数字系统和逻辑设计 项 目评 价设计方案合理性和发明性设计和调试结果设计说明书质量答辩陈说和回复问题情况课程设计周表现情况综合成绩老师署名: 日 期:

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服