这是功能完善的由纯数电构成的一个出租车计价器,proteus和报告都上传了
课程设计题目
摘 要:本设计通过采用数字电路对出租车计价器的设计,提出对我们现在日益多起来的出租车的计价器,并对出租车计价器进行了各种设计,首先通过我们总所周知的出租车的状态分为四种第一种为没有乘客时,计价器不显示;第二种出租车行驶的距离并没有超过起步价距离;第三种行驶距离超过了起步价距离并一直在行驶中;第四种出租车在行驶过程中因为乘客需要而停车等待,对这四种情况的不同方面我们的计价器有不同的运算法则,通过单价模块、起步价模块、候时模块、行驶公里数模块、加法器模块、总价计算模块对这六个模块分别组合达到我们实现出租车计价的方式。
目录
1 前言
1.1 设计背景
1.2 设计目标
1.3 实施计划
2 总体方案设计
2.1 方案概述
2.2 方案论证
3 单元模块设计
3.1 各单元模块功能介绍及电路设计
3.1.1 加法器模块设计
3.1.2 起步价置数模块设计
3.1.3 单价置数模块设计
3.1.4 公里计数模块设计
3.1.5 候时计数模块设计
3.1.6 总价储存模块设计
3.1.7 清零模块设计
4 主要器件的介绍
4.1 74LS160器件介绍
4.2 74LS245器件介绍
注:1GN对应1A 1Y的四个,同理2GN对应 2A 2Y
5 系统调试
5.1调试环境
6 系统功能、指标参数
6.1 系统能实现的功能
8 总结与体会
9 谢辞
10 参考文献
附录
1 前言出租汽车因其方便、快捷已逐步成为人们生活中不可缺少的代步工具。随着出租汽车行业的迅猛发展,作为结算出租汽车乘客应付费用的计价器已成为人们密切关注的计量仪器。 出租车计价器的设计,和功能的增加、优化和完善成了我们电子设计的重要内容。 掌握出租车计价器的设计是我们必须熟悉和掌握的知识。 熟悉课程设计的流程,也是我们为今后做设计打下坚实的基础,首先,我们应该明白所设计的电路实现的功能。其次,根据所需功能,进行分析,如何实现该功能和实现该功能的多种方法,还有所需要什么器件。 多次设计,熟能生巧,并且还能熟练课本上所学的知识,将理论和实践结合起来,加深我们理论学习知识的印象,对我们学习知识起到很大的帮助作用。 1.1 设计背景在学习了数字电路大半学期,掌握了控制器,计数器,加法器,译码电路等基本电路和一些常用芯片之后,我们开始完成自主设计的第一个课程设计,出租车计价器系统,并且通过这次设计,达到一个自我提升的目的。 1.2 设计目标- 设计出租车行驶的起步价,起步价可以根据我们出租车所在的具体地方进行修改
- 设计出租车行驶距离在超过我们的起步距离时我们每行驶行驶一公里便需要多少钱。
- 设计行驶距离显示,与总价单位显示。
- 设计候时模块,在等待乘客几分钟后我们自动加价的系统。
- 培养数字电路的设计能力。
- 学会用中规模器件设计一个符合要求的系统,并熟悉常用中规模器件的用法。
- 掌握出租车计价器的控制、设计和调试方法,为后续课程《单片机原理与应用》的学习打基础。
1.3 实施计划- 通过我们所设计的起步价与每公里行驶距离的单价通过行驶距离的加法器相加来完成我们车租车计价器。
- 用中、小集成电路组成交通信号灯电路并在仿真软件上进行仿真与调试。
- 画出各单元电路图、整机逻辑框图和逻辑电路图,写出设计、实验总结报告。
2 总体方案设计通过查阅大量相关技术资料,并结合自己的实际知识,我主要提出了一种技术方案来实现系统功能。下面我将首先对这三种方案的组成框图和实现原理分别进行说明,并分析比较它们的特点,然后阐述我最终选择方案的原因。 2.1 方案概述方案原理图如1.4.1所示: 1.4.1 方案一的简单表述:整个方案由我们的起步价里程单程单价计数所构成当我们出租车搭载到乘客出发时我们的收费显示会显示出我们的起步价当我们的出租车经过一段距离超过我们的起步价距离时,则这个时候我们的会交由我们的里程计数器计数,在通过我们的加法器对我们的起步价与单程单价进行加法计算,如每公里行驶扣费3元,这个时候我们的一个CP型号加上去便会随着我们的计数器进行加法运算使其显示到我们的收费显示中去,同时如果图中我们的乘客需要停车等候我们的计价器也会根据他的等待时间来进行合理的收费并一起送到我们的加法器运算中去一起运算。 2.2 方案论证此方案从我们的设计角度上来说是肯定能够实验的,这个方案中我们可以清晰的看到我们的思路,思路简单设计简便同时我们的能够很方便的根据我们的方案设计进行我们的分模块进行连接,同时有不足的就是我们的设计方案中我们的实验方案过于繁杂与大部分的模块衔接的紧密性对我们设计者有很大的挑战性综合整个系统,将各个模块连接起来,组成整个系统。 首先,公里计数器每当传来一个CP,公里数就加1,当公里数在前4公里时,比较器输出0,此时起步价端使能,单价呈现高阻态,所以,总价显示器显示起步价;当公里数为5的时候,比较器输出1,此时,起步价呈现高阻态,单价使能,加法器模块此时将起步价5和单价2相加5+2=7传到显示存储芯片,等待CP到来时传出到显示器显示;当公里数大于5的时候,比较器输出仍然为1,此时,起步价呈现高阻态,单价使能,加法器将结果和单价相加,没当CP到来时,拿出去显示,此时加数也会更新一次。 其次,清零模块,即将总价、公里数、时间清零,74LS160、74LS273的清零端MR都是异步清零,将清零信号传入清零端口即可实现清零操作。 3 单元模块设计本节主要介绍系统各单元模块的具体功能、电路结构、工作原理、以及各个单元模块之间的联接关系;同时本节也会对相关电路中的参数计算、元器件选择、以及核心器件进行必要说明。 3.1 各单元模块功能介绍及电路设计本系统主要分为X个单元模块,它们分别是:加法器模块、起步价计数模块、单价置数模块、公里计数模块、候时计数模块、总价存储模块、和清零模块。各单元模块功能及相关电路的具体说明如下。 3.1.1 加法器模块设计从以下几方面进行说明: 加法器模块主要作用就是将我们的计价器的每公里数的总单价相加。 该模块由:4个74LS283,以及六个与非门、四个非门、两个74LS244组成。 加法器的实现需要用到两片74LS283,一片用于十进制BCD码相加,另一片用于修正。当相加的结果<=9的时候,结果不需要修正,当结果为10、11、12、13、14、15的时候结果需要加6修正,当结果为16、17、18时也需要加6修正。十位同理,唯一不同的就是需要将个位的进位,接在十位的进位端即可。 图1.1.1 4、模块的具体电路 图1.1.2 4个74LS283、2个74LS、6个74LS00、4个74LS04 3.1.2 起步价置数模块设计从以下几方面进行说明: 设定下我们的起步价格。 起步价置数需要用两片74LS244寄存器芯片来存储起步价的大小,再用两位BCD码显示器7SEG-BCD将起步价显示出来。使能端用数据选择器的输出结果来控制,当里程在5公里内时,使能,当大于5公里时,使能端低电平,输出无效。
图1.2.1 4、模块的具体电路 图1.2.2 5、模块中相关器件的选择 八个LOGICTOGGLE逻辑开关、两个74LS244、两个二极管显示器。 3.1.3 单价置数模块设计从以下几方面进行说明: 设定我们每公里的单程单价价格。 单价置数需要用两片74LS244寄存器芯片来存储起步价的大小,再用两位BCD码显示器7SEG-BCD将起步价显示出来。使能端用数据选择器的输出结果来控制,当里程在5公里内时,使能端低电平,输出无效,当大于5公里时,使能端高电平,输出有效。 图1.3.2 八个逻辑开关、两个74LS244、两个74LS04、两个数二极管数字屏 3.1.4 公里计数模块设计从以下几方面进行说明: 记录出租车总共行驶了多少公里。 该模块用3片74LS160级联来进行计数,3片74LS160计数脉冲CP用同一个时间脉冲来代替公里传感器脉冲,来一个CP个位加一,当加到9的时候,个位RCO为1,此时十位的74LS160进入计数状态当下一个脉冲来时,十位加一,一次类推可以加到最大数999。下面两篇7485比较器,是用来和起步价的公里数相比,当公里数小于5时,Y=0,当公里数大于等于5时,Y=1。(此处与4比较,是由于,当公里数>=4时,起步价传入显示存储器,显示屏显示起步价;当公里数=5时,单价使能,单价传入加法器,结果已经出来了,5+2=7,但要等到下一个CP来时,显示存储器才会拿去显示,若与5比较,等于5公里时,单价才使能,所得的结果要等到6公里时,即下一个CP来时,才会将7拿出来显示,这显然不行;当公里数大于5的时候,来一个CP,显示加2的结果) 图1.4.1 图1.4.2 5、模块中相关器件的选择 三个74LS760、两个7485、一个74LS32 3.1.5 候时计数模块设计从以下几方面进行说明: 在乘客任需要作坐车但不在车上需要车主等待时,我们的候车会进行候车时间的计数并相应的扣除钱。 候时计数模块和公里计数模块原理大致相同,主要用到了四片74LS160加法器,秒计数器用秒脉冲充当,用与门将秒计数器十位为六时,产生一个进位脉冲,使得分计数器数值加一,于此同时秒计数器需要用与非门产生清零脉冲,即可实现清零,从而实现十分秒的计时以及显示。所以即可实现逢60秒进1分,同时,逢60秒秒计数器清零功能。 图1.5.1
4、模块的具体电路 图1.5.2 5、模块中相关器件的选择 4个74LS160、2个74LS00、1个74LS04 3.1.6 总价储存模块设计从以下几方面进行说明: 将所有的总价储存起来,并显示到屏幕上。 当公里数<=5时,起步价传入,输出到显示屏,并传入加法器模块做加数,当公里数大于5时,起步价模块呈现高阻态,单价模块使能,每次将所得总价加2,当CP到来时,传出显示到显示屏。 图1.6.1 4、模块的具体电路 图1.6.2 5、模块中相关器件的选择 1个74LS273、三个数码二极管 3.1.7 清零模块设计从以下几方面进行说明: 对整个出租车计价器进行清零等待下一个乘客。 清零模块,开关上下端分别接VCC和GND分别接到公里计数模块74LS160的清零端、候时计数模块74LS160清零端、总价存储模块74LS273清零端,74LS160、74LS273的清零端MR都是异步清零,当开关下打,即低电平的时候则被清零。图上的74LS08与门是将逢60秒清零和人为发出的清零信号想与,从而达到清零的效果。 图1.7.1 图1.7.2 5、模块中相关器件的选择 1个双向开关、一个74LS08 4 主要器件的介绍本系统中主要使用了如下一些功能器件:74LS160、74LS245、74LS244、74LS283、7485。下面就这些器件的功能特点、主要参数和使用方法作相应说明。 4.1 74LS160器件介绍从74LS160功能表功能表中可以知道,当清零端CR=“0”,计数器输出Q3、Q2、Q1、Q0立即为全“0”,这个时候为异步复位功能。当CR=“1”且LD=“0”时,在CP信号上升沿作用后,74LS161输出端Q3、Q2、Q1、Q0的状态分别与并行数据输入端D3,D2,D1,D0的状态一样,为同步置数功能。而只有当CR=LD=EP=ET=“1”、CP脉冲上升沿作用后,计数器加1。74LS160还有一个进位输出端CO,其逻辑关系是CO= Q0·Q1·Q2·Q3·CTT。合理应用计数器的清零功能和置数功能,一片74LS161可以组成16进制以下的任意进制分频器。 74LS160芯片如图4.1.1所示 图4.1.1 74LS162芯片管脚图介绍:时钟CP和四个数据输入端P0~P3、清零/MR、使能CEP,CET、置数PE、数据输出端Q0~Q3以及进位输出TC.(TC=Q0·Q1·Q2·Q3·CET)74LS162芯片状态表
4.2 74LS245器件介绍74LS245是双向总线驱动器,用来驱动如51单片机的系统总线的。在应用系统中,所有的系统扩展的外围芯片都需要总线驱动,所以就需要总线驱动器。74ls245引脚及功能: 图4.2.1 第1脚DIR(T/R),为输入输出端口转换用,DIR=“1”高电平时信号由“A”端输入“B”端输出,DIR=“0”低电平时信号由“B”端输入“A”端输出。第2~9脚“A”信号输入输出端,A0=B0,A7=B7,A0与B0是一组,如果DIR=“1”OE=“0”则A1输入B1输出,其它类同。如果DIR=“0”OE=“0”则B1输入A1输出,其它类同。第11~18脚“B”信号输入输出端,功能与“A”端一样,不再描述。第19脚OE,使能端,若该脚为“1”A/B端的信号将不导通,只有为“0”时A/B端才被启用,该脚也就是起到开关的作用。第10脚GND,电源地。第20脚VCC,电源正极。 74LS245是用来驱动LED或者其他的设备,它是8路同相三态双向总线收发器,可双向传输数据。74LS245还具有双向三态功能,既可以输出,也可以输入数据。如果用C51的P0口输出到数码管,那就要考虑到数码管的亮度以及P0口带负载的能力,当8051单片机的P0口总线负载达到或超过P0最大负载能力时,必须接入74LS245等总线驱动器。选用74LS245提高驱动能力。P0口的输出经过74LS245提高驱动后,输出到数码管显示电路。当片选端/CE低电平有效时,DIR=“0”,信号由B向A传输;(接收)DIR=“1”,信号由A向B传输;(发送)当CE为高电平时,A、B均为高阻态。 4.3 74LS244器件介绍 74LS244为3态8位缓冲器,一般用作总线驱动器。74LS244没有锁存的功能。地址锁存器就是一个暂存器,它根据控制信号的状态,将总线上地址代码暂存起来。8086/8088数据和地址总线采用分时复用操作方法,即用同一总线既传输数据又传输地址引脚介绍 : 数据引脚 8个数据输入端,1A1、1A2、1A3、1A4,2A1、2A2、2A3、2A4,(其中1A4和2A4是高位)。8个二进制输出端1Y1、1Y2、1Y3、1Y4、2Y1、2Y2、2Y3、2Y4,以四位二进制形式输出。控制引脚两个控制端1GN、2GN,控制输出是否为高阻态。 注:1GN对应1A 1Y的四个,同理2GN对应 2A 2Y5 系统调试首先我们对我们的出租车计价器的加法器进行了调试,在我们运用加法器74LS283时加法器出来的结果小于9则不进行加减,当相加的结果<=9的时候,结果不需要修正,当结果为10、11、12、13、14、15的时候结果需要加6修正,当结果为16、17、18时也需要加6修正。其次我们对我们的公里计数器进行了调试来一个CP个位加一,当加到9的时候,个位RCO为1,此时十位的74LS160进入计数状态当下一个脉冲来时,十位加一,一次类推可以加到最大数999。 5.1调试环境Proteus软件是英国Lab Center Electronics公司出版的EDA(该软件中国总代理为广州风标电子技术有限公司)。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前比较好的仿真单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。 Proteus是英国著名的EDA工具,从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将仿真电路软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年又增加了Cortex和DSP系列处理器,并持续增加其他系列处理器模型。在编译方面,它也支持IAR和MATLAB等多种编译器。 在PROTEUS绘制好原理图后,调入已编译好的目标代码文件:*.HEX,可以在PROTEUS的原理图中看到模拟的实物运行状态和过程。 ROTEUS不仅可将许多单片机功能形象化,也可将许多单片机实例运行过程形象化。前者可在相当程度上得到实物演示实验的效果,后者则是实物演示实验难以达到的效果。 它的元器件、连接线路等却和传统的实验硬件高度对应。这在相当程度上替代了传统的单片机实验教学的功能,例:元器件选择、电路连接、电路检测、电路修改、运行结果等。 课程设计、毕业设计是学生走向就业的重要实践环节。由于PROTEUS提供了实验室无法相比的大量的元器件库,提供了修改电路设计的灵活性、提供了实验室在数量、质量上难以相比的仪表,因而也提供了培养学生实践精神、创造精神的平台 随着科技的发展,"计算机仿真技术"已成为许多设计部门重要的前期设计手段。它具有设计灵活,结果、过程的统一的特点。可使设计时间大为缩短、耗资大为减少,也可降低工程制造的风险。相信在单片机开发应用中PROTEUS也能茯得愈来愈广泛的应用。 使用Proteus 软件进行单片机设计,综合运用,有利于培养学生的电路设计能力及的操作能力;在和全国大学生电子设计竞赛中,我们使用 Proteus 对学生进行培训,在不需要硬件投入的条件下,学生普遍反映,对单片机的学习比单纯学习书本知识更容易接受,更容易提高。实践证明,在使用 Proteus 进行系统仿真开发成功之后再进行实际制作,能极大提高系统设计效率。因此,Proteus 有较高的推广利用价值。 目前Proteus的最新版为8.7,ARM cortex处理器被增加,在7.10中已经增加DSP系列(TMS320)。
6 系统功能、指标参数1.成功实现起步价的价位。 2.设定没公里行驶的单价。 3.候时计在工作状态中的运用得当。 4.加法器的计算参数做到准确无误。 6.1 系统能实现的功能完全的实现我们出租车在工作中的状态,能够在乘客上车时成功打亮起步价,并且能在行驶过程中,通过我们的计价器可以清楚的看到我们出租车在行驶的路程上行驶了有多远的路程,并且能够通过我们制定的每公里单价计算出我们出租车总共行驶的单程价格在加上我们的起步价最后将乘客总共需要支付好多钱显示出来。并能够成功显示我们的候车时间。 7 结论 通过这次的出租车计价器的设计中,我也发现自己在对元器件的熟悉程度上有很大的问题,包括不知道怎么选择什么样的元器件来完成这个模块的内容,在完成这个设计报告的过程中,我写作的速度很慢因为大部分的原件不熟悉加上自己对这个东西的原件的了解不够深刻,对各个元器件的运用上不够熟悉,不仅如此在我做仿真过程中也发现了下面几个容易出错的地方。 第一个就是在我们对出租车计价器的理解中我们普遍认为的出租车只有两种情况就是上车一种下车一种,其实我们还忽略了一些,在车上我们开始计时时它就分为两种:是否行使距离超过我们的起步距离,然后在车上后我们也可能会出现等待乘客的过程所以这个时候需要我们的候车计。 第二个就是我们在做将寄存器上面的接入输出的数据传到我们所需要的总价的计数器上面去的时候我们的状态过程极其容易出错。 8 总结与体会一个长学期的电路原理,让我学到了很多东西,从最开始的什么都不懂,到现在的略懂一二。 在学习知识上面,开始的时候完全是老师讲什么就做什么,感觉速度还是比较快的,跟理论也没什么差距。但是后来就觉得越来越麻烦了。从最开始的误差分析,实验报告写了很多,但是真正掌握的确不多,到最后的回转器,负阻,感觉都是理论没有很好的跟上实践,很多情况下是在实验出现象以后在去想理论。在实验这门课中给我最大的感受就是,一定要先弄清楚原理,在做实验,这样又快又好。 在养成习惯方面,最开始的时候我做实验都是没有什么条理,想到哪里就做到哪里。比如说测量三相电,有很多种情况,有中线,无中线,三角形接线法还是Y形接线法,在这个实验中,如果选择恰当的顺序就可以减少很多接线,做实验应该要有良好的习惯,应该在做实验之前想好这个实验要求什么,有几个步骤,应该怎么安排才最合理,其实这也映射到做事情,不管做什么事情,应该都要想想目的和过程,这样才能高效的完成。电原实验开始的几周上课时间不是很固定,实验报告也累计了很多,第一次感觉有那么多实验报告要写,在交实验报告的前一天很多同学都通宵了的,这说明我们都没有合理的安排好自己的时间,我应该从这件事情中吸取教训,合理安排自己的时间,完成应该完成的学习任务。这学期做的一些实验都需要严谨的态度。在负阻的实验中,我和同组的同学连了两三次才把负阻链接好,又浪费时间,又没有效果,在这个实验中,有很多线,很容易插错,所以要特别仔细。 在最后的综合实验中,我更是受益匪浅。完整的做出了一个红外测量角度的仪器,虽然不是特别准确。我和我组员分工合作,各自完成自己的模块。我负责的是单片机,和数码显示电路。这两块都是比较简单的,但是数码显示特别需要细致,由于我自己是一个粗心的人,所以数码管我检查了很多遍,做了很多无用功。 9 谢辞报告得以完成,要感谢的人实在太多了,首先要感谢毛老师,因为报告是在毛老师的悉心指导下完成的。毛老师的专业知识,严谨的治学态度,精益求精的工作作风,诲人不倦的高尚师德,严以律己、宽以待人的崇高风范,朴实无华、平易近人的人格魅力对我影响深远。毛老师指引我的论文的写作的方向和架构,并对本报告进行逐字批阅,指正出其中错误之处,使我有了思考的方向,他的循循善诱的教导和不拘一格的思路给予我无尽的启迪,他的严谨细致、一丝不苟的作风,将一直是我工作、学习中的榜样。毛老师要指导很多同学的论文,加上本来就有的教学任务,工作量之大可想而知,但在一次次的回稿中,精确到每一个字的批改给了我深刻的影响,使我在论文之外明白了做学问所应有的态度。
论文的顺利完成,也离不开其它各位老师、同学和朋友的关心和帮助。在整个的论文写作中,各位老师、同学和朋友积极的帮助我查资料和提供有利于论文写作的建议和意见,在他们的帮助下,论文得以不断的完善,最终帮助我完整的写完了整个论文。 另外,要感谢在大学期间所有传授我知识的老师,是你们的悉心教导使我有了良好的知识,这也是论文得以完成的基础。
通过此次的论文,我学到了很多知识,跨越了传统方式下的教与学的体制束缚,在论文的写作过程中,通过查资料和搜集有关的资料,培养了自学能力和动手能力。并且由原先的被动的接受知识转换为主动的寻求知识,这可以说是学习方法上的一个很大的突破。在以往的传统的学习模式下,我们可能会记住很多的书本知识,但是通过实验报告,我们学会了如何将学到的知识转化为自己的东西,学会了怎么更好的处理知识和实践相结合的问题。
附录 附录1 系统的原理电路图
全部资料51hei下载地址:
Desktop.rar
(797.59 KB, 下载次数: 248)
|