




已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
. . . . .课 程 设 计课 程 EDA技术课程设计 题 目 出租车自动计费系统 院 系 电子科学学院 专业班级 电子信息工程 学生姓名 邵文瀚 学生学号 080901140717 指导教师 赵丽华 学习好帮手东北石油大学课程设计任务书课程 EDA技术课程设计题目 出租车自动计费系统专业 电子信息工程 姓名 邵文瀚 学号 080901140717主要内容、基本要求、主要参考资料等主要内容:设计一个最大量程为99.99元的出租车自动计费,计费器具有行车里程计费、等候时间计费及起价三部分功能,并用数码管显示车费的数目。基本要求:1、设计一个出租车自动计费器,具有行车里程计费、等候时间计费、及起价三部分,用四位数码管显示总金额,最大值为99.99元;2、行车里程单价1元/公里,等候时间单价0.5元/10分钟,起价3元(3公里起价)均能通过人工输入。3、行车里程的计费电路将汽车行驶的里程数转换成与之成正比的脉冲数,然后由计数译码电路转换成收费金额,实验中以一个脉冲模拟汽车前进十米,则每100个脉冲表示1公里,然后用BCD码比例乘法器将里程脉冲乘以每公里单价的比例系数,比例系数可由开关预置。例如单价是1.0元/公里,则脉冲当量为0.01元/脉冲。4、用LED显示行驶公里数,两个数码管显示收费金额。主要参考资料:1 潘松著.EDA技术实用教程(第二版). 北京:科学出版社,2005.2 康华光主编.电子技术基础 模拟部分. 北京:高教出版社,2006.3 阎石主编.数字电子技术基础. 北京:高教出版社,2003. 完成期限 2011.3.11 指导教师 专业负责人 2011年 3月7日一、总体设计思想1.基本原理随着出租车行业的发展,出租车已经是城市交通的重要组成部分,从加强行业管理以及减少司机与乘客的纠纷出发,具有良好性能的计价器对出租车司机和乘客来说都是很必要的。而采用模拟电路和数字电路设计的计价器整体电路的规模较大,用到的器件多,造成故障率高,难调试。而采用单片机进行的设计,相对来说功能强大,用较少的硬件和适当的软件相互配合可以很容易地实现设计要求,且灵活性强,可以通过软件编程来完成更多的附加功能。本设计采用AT89S52单片机为主控器,以A44E霍尔传感器测距,实现对出租车的多功能的计价设计,输出采用8段数码显示管。大体设计思路为把传感器安装在车轮上,主要检测汽车行进的公里数,并产生一系列相应的脉冲输出,脉冲送到单片机进行处理,单片机根据程序设定通过计算脉冲数换算出行驶公里数,再根据从EEPROM中读取的价格等相关数据进行金额的计算,计算好的金额、里程和单价都实时地显示在数码管上。独立键盘可以调节价格等相关数据,按下相应的按钮,产生信号交由单片机处理并实时显示出来,调节好的数据存储到EEPROM中,掉电后可以使调好的数据不丢失,系统结构图如图。2.设计框图根据计费器设计要求,可将该系统分成四大模块,一块为计费模块,一块为时间计时模块,一块为路程控制模块,另一块为输出显示模块。速度控制模块路程控制模块计费模块扫描显示模块二、设计步骤和调试过程1、总体设计电路 主控机系统采用了Atmel 公司生产的 AT89S52单片机,它含有256 字节数据存储器,内置8K 的电可擦除FLASH ROM,可重复编程,大小满足主控机软件系统设计,所以不必再扩展程序存储器。复位电路和晶振电路是AT89S52 工作所需的最简外围电路。单片机最小系统电路图如下图所示。2、模块设计和相应模块程序2.1速度控制程序如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;entity sudukongzhi isport(clk,reset,start:in std_logic; k:in std_logic_vector(2 downto 0); clkout:out std_logic);end sudukongzhi;ARCHITECTURE FUN OF sudukongzhi IS signal count1:std_logic_vector(1 downto 0); signal tmpclk,clks:std_logic; begin kinside=000-k; clks_label: process(reset,clk) variable count2:std_logic_vector(2 downto 0); begin if reset=0 then count2:=000; elsif (clkevent and clk=1) then if start=1 then if count2=kinside then count2:=000; end if; if not(k=000) then count2:=count2+1; end if; if count2=001 then tmpclk=not tmpclk; end if;end if;end if;end process; clkout=tmpclk;end FUN;2.2路程控制程序如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY luchengkongzhi ISPORT(clk,reset:in std_logic; lucheng1:out std_logic_vector(3 downto 0); lucheng2:out std_logic_vector(3 downto 0);end luchengkongzhi;ARCHITECTURE FUN OF luchengkongzhi ISbegin process(clk,reset) variable mm:std_logic_vector(11 downto 0); begin if reset=0 then elsif clkevent and clk=1 then if mm(3 downto 0)=1001then mm:=mm+7; else mm:=mm+1; end if; if mm(7 downto 4)=1010then mm:=mm+01100000; end if; if mm(11 downto 8)=1010then mm:=mm+011000000000; end if; end if; lucheng1=mm(3 downto 0); lucheng2=mm(7 downto 4); lucheng3=mm(11 downto 8); end process;end FUN; 2.3计费模块程序如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY jifeimokuai ISPORT(clk,reset:in std_logic; judge2:in std_logic_vector(3 downto 0); judge3:in std_logic_vector(3 downto 0); jifei1:out std_logic_vector(3 downto 0); jifei2:out std_logic_vector(3 downto 0); jifei3:out std_logic_vector(3 downto 0); jifei4:out std_logic_vector(3 downto 0);end jifeimokuai;ARCHITECTURE FUN OF jifeimokuai ISSIGNAL en:STD_LOGIC;signal shoufei:std_logic_vector(7 downto 0);signal shoufeijishu:std_logic_vector(15 downto 0);begin shoufei=00110011when(shoufeijishu(15)=1) or(shoufeijishu(14)=1) or(shoufeijishu(13)=1) else00100010;en=0 when judge3=0000 and judge2(3 downto 2)=00 and (judge2(1)=0)or (judge2(1)=1 and judge2(0)=0) else 1; process(clk,reset) variable mm:std_logic_vector(15 downto 0); begin if reset=0then mm:=0000011100000000; elsif clkevent and clk=1 then if en=1 then mm:=mm+shoufei; end if; if mm(3)=1 and (not(mm(2 downto 1)=00)then mm:=mm+6; end if; if mm(7)=1 and (not(mm(6 downto 5)=00)then mm:=mm+01100000; end if; if mm(11)=1 and (not(mm(10 downto 9)=00)then mm:=mm+011000000000; end if; if mm(15 downto 12)=1010then mm:=mm+0110000000000000; end if; end if; jifei1=mm(3 downto 0); jifei2=mm(7 downto 4); jifei3=mm(11 downto 8); jifei4=mm(15 downto 12); shoufeijishu=mm; end process; end FUN;2.4扫描显示模块程序如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;entity xianshimokuai isport(clk:in std_logic; p8:in std_logic_vector(3 downto 0); p7:in std_logic_vector(3 downto 0); p6:in std_logic_vector(3 downto 0); p5:in std_logic_vector(3 downto 0); p4:in std_logic_vector(3 downto 0); p3:in std_logic_vector(3 downto 0); p2:in std_logic_vector(3 downto 0); p1:in std_logic_vector(3 downto 0); xuanze:out std_logic_vector(7 downto 0); shuzhi:out std_logic_vector(7 downto 0);end entity;ARCHITECTURE FUN OF xianshimokuai IS signal count:std_logic_vector(2 downto 0); signal tmp:std_logic_vector(3 downto 0); signal choicein:std_logic_vector(7 downto 0); signal datain:std_logic_vector(7 downto 0);begin clk1_label: process(clk) begin if clkevent and clk=1 then count=count+1; end if; end process; clk2_label: process(clk) begin if clkevent and clk=0 then xuanze=choicein; shuzhi(7 downto 1)=datain(7 downto 1); if(count=0110 or count=0010) then shuzhi(0)=1; else shuzhi(0)=0; end if; end if; end process; choicein=11111110 when count=000else 11111101 when count=001else 11111011 when count=010else 11110111 when count=011else 11101111 when count=100else 11011111 when count=101else 10111111 when count=110else 01111111; tmp=p1 when count=000else p2 when count=001else p3 when count=010else p4 when count=011else p5 when count=100else p6 when count=101else p7 when count=110else p8; with tmp select datain(7 downto 1)=1111110 when 0000, 0110000 when 0001, 1101101 when 0010, 1111001 when 0011, 0110011 when 0100, 1011011 when 0101, 1011111 when 0110, 1110000 when 0111, 1111111 when 1000, 1111011 when 1001, 1110111 when 1010, 0011111 when 1011, 1001110 when 1100, 0111101 when 1101, 1001111 when 1110, 1000111
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 利用合作伙伴拓展市场份额
- CAD三维建模技术
- 工作总结:坚持努力的执着
- 2024-2025学年自考专业(工商企业管理)考前冲刺试卷及参考答案详解【巩固】
- 高职院校智能制造专业课程标准分析
- 2025年放射治疗在肿瘤科中的应用知识检测试卷答案及解析
- 小学语文作文题库及评分标准
- 2025年儿科常见呼吸道感染的护理模拟考试卷答案及解析
- 数学课堂引入问题设计示范
- 制造企业供应链优化实践报告
- 2025年中学生法治素养竞赛题库及答案
- 《“高效办成一件事”2025年度第二批重点事项清单》知识解读
- 2025年飞行器设计与工程师考试试卷及答案
- 2025年三级律师试题题库及答案
- 智能化系统施工方案及技术措施
- 收费员考试题库及答案
- 计算机视觉技术 课件全套 第1-5章 计算机视觉概述-图像噪声
- 智能课件自动生成技术解析
- 2025至2030全球及中国汽车外饰件行业项目调研及市场前景预测评估报告
- 酒店运营管理权委托合同
- 移动公司干部管理制度
评论
0/150
提交评论