1
数字电子技术实验与课程设计指导
1.7.6.2.3 3)课程设计任务

6 数字电路课程设计任务

数字电路是一门理论性强、工程应用广的专业基础课程。为了训练读者对数字电路及系统的设计、安装、调试的实际动手能力,特在数字电路课程中设置了课程设计这一重要的实践环节,以便在实践中掌握数字系统的设计方法。

1)数字系统设计方法简介

(1)数字系统设计流程一般为:首先明确设计要求,确定输入、输出信号,其次确定整体设计方案,最后进行自顶向下的模块化设计。

(2)数字系统的设计方法演进

①选用通用集成电路构成数字系统,如第2章中介绍的计数译码和显示、汽车尾灯的显示电路等,是用SSI、MSI、LSI等芯片构成所需的数字系统,这是早期的数字电子系统的设计方法,即所谓的经典设计方法。此方法的设计过程为:书面设计(根据设计任务的要求,用真值表、状态图和布尔代数方程表示,用卡诺图化简,画出逻辑电路图)——选择器件(根据逻辑电路图、经济性等因素选用器件)——电路构建调试——样机制作等几个步骤完成设计,由于芯片的众多连接,造成系统稳定性不高、集成度低。此类方法多用于比较小的简单数字系统。

②应用可编程逻辑器件实现数字系统,如第5章介绍的方法,它以计算机为工具,设计者只需对系统功能进行描述,就可在EDA工具的帮助下完成设计。这种设计方法将传统数字系统中的搭建调试用软件仿真代替,对计算机上建立的系统模型,用测试码或测试序列测试验证后,将系统实现在PLD芯片或专用集成电路上,这样可以节省开发时间、降低成本、提高系统的可靠性。

2)数字逻辑(电路)课程设计的目的

通过完成本章所列的一些设计任务,掌握基于可编程器件的EDA技术,学习Max+plusⅡ软件开发工具,明确数字系统的概念与设计的一般流程,训练从事电子系统设计工作必备的基本技能。鉴于课程设计设置的主要目的,同时考虑学习的循序渐进、承上启下的过程,所以在本书的数字系统设计中,采用经典方法设计电路原理图,用 EDA工具进行仿真,最后用编程逻辑器件实现的方法。当然,也可以采用第5章介绍的文本输入法,进行数字逻辑系统设计,如第5章的Quartus Ⅱ应用设计举例中,分析各模块的输入、输出逻辑关系,然后在Quartus Ⅱ环境中,用VHDL语言编程输入各模块的功能,得到相应的数字逻辑系统的电路,实现了从芯片到系统的自底向上的设计过程。

3)课程设计的一般步骤及要求

(1)明确设计任务,设计总体方案

首先将设计任务要求转变为明确的、可实现的技术指标要求,在系统级描述系统的功能与技术指标,划分、落实系统功能和技术指标,确定各功能模块之间的接口。在所设计的系统较为复杂时,可采用框图与层次化的设计方法。在系统功能逐步细化以后,从器件、电路和工艺等方面确定总体方案。

(2)单元电路设计

总体电路化整为零,分解为若干个子系统与单元电路。在逐个设计单元电路时,尽可能选择现成电路,利于今后的调试工作。尤其是在设计控制电路时,控制电路对系统的清零、置数、安排子系统的时序前后等操作,在设计时一定要根据任务的时序关系,画出电路的时序图,反复构思、选用适当的器件,达到系统的要求。

(3)综合单元电路,得到系统的总体电路

(4)对可编程逻辑器件编程/配置

在Max+plus Ⅱ/Quartus Ⅱ环境中将电路原理图输入,编译、仿真和综合后,下载至可编程器件中。

(5)设计实现

在实验开发系统上,验证所设计的数字系统。直至实验结果正确后,绘制数字系统的电路图。

(6)撰写设计文档资料

在完成设计以后,需要撰写课程设计总结报告,其中包含:

①设计过程,即任务分析、原理框图、功能模块设计、仿真、下载等环节。

②设计结果,即实现任务的数字电路的原理图或调试成功的所编程序代码及测试结果数据等。

③课程设计中遇到的问题及解决的方法。

④课程设计的心得体会及所进行的设计进一步优化的方案。若需要,撰写相应的使用说明书。

4)课程设计的时间安排

时间:1周,具体分配见下表。

课程设计的时间安排

5)课程设计任务类型

本章列出了一些有关数字电路系统的课程设计任务,考虑到不同层次读者的情况,将提供不同类型、不同复杂程度的设计任务,具体分为如下几类:

(1)功能扩展型

在叙述设计要求、设计原理、提供参考电路的基础之上,可在验证电路功能以后,对原电路的功能提出增加、改进的新要求,针对新的设计任务,完成相应电路的设计。

(2)综合应用型

在阐明设计任务的要求、原理以后,提供各部分功能模块的参考电路。读者可以通过将功能模块的电路综合组成一个完整的、符合要求的整体电路。

(3)创新设计型

在明确设计任务以后,仅提供完成设计任务的功能模块框图,读者可以采用不同的方法实现电路,完成设计以后自行比较各种电路的优劣性。

(4)自我发挥型

仅提出设计任务,读者根据选择的任务,自行分析任务的逻辑关系,自拟电路系统组成的原理框图、功能模块,自行选择设计方法、设计电路。

6.1 功能扩展型设计任务

6.1.1 声光显示智力抢答器电路的设计

1)设计目的

该电路是常用于智力竞赛中抢答判断的电路,是进行判断哪一个预定状态优先发生的电路。对于该电路的设计,可以综合应用数字电路中组合逻辑与时序电路的基本知识,进一步掌握各类触发器、门电路的工作原理与使用要点,学会分析数字电路在调试过程中出现的各种问题。

2)电路原理与参考电路

电路是用按钮表示抢答者的抢答动作,用另一特殊按钮表示主持人的动作。如图6.1.1所示是4人抢答电路的参考电路,是用D触发器和与非门组成的,555电路提供CP脉冲,F、D、S、A按钮为抢答者按钮,Space按钮为主持人复位按钮。当无人抢答时,按钮F、D、S、A均为低电平,这时触发器CP端虽然有连续脉冲输入(脉冲频率约10kHz),但74LSl75的输出端Q1~Q4均为0,发光二极管不亮,蜂鸣器输入端为低电平,所以也不发声。当有人抢答时,例如D键被按下时,在CP脉冲作用下,Q1立即变为1,发光二极管被点亮,同时4与非门输出端为高电平,蜂鸣器发声,在经反向后,控制从555来的脉冲不能再作用到触发器,即使其他抢答者按下按钮也将不起作用。主持者可通过按Space按钮,使电路恢复正常状态,并为下一次抢答做好准备。

为记录抢答时间,需设计一个计数器计时,由主持人开始抢答信号使能计时,有人抢答后,计时停止。

3)课程设计任务

现将图6.1.1所示电路功能作相应的改变,即能进行8人在规定的时间内抢答判断的控制电路设计。具体要求为:

(1)在主持人表示抢答开始时,计时器开始计时,如规定的时间内没有人抢答,表示时间已到,蜂鸣器发声输出,计时器复位,为下一次计时做好准备。

(2)在主持人示意抢答开始后,计时时间未到时,只要有人抢答,即可显示抢答者的号码(数码管显示),并同时封锁其他抢答者的抢答信号。

(3)只要有人抢答,计时器复位。

(4)只有主持人的操作,将电路复位后,方可结束上一次的抢答,为下一次的抢答做好准备。

(5)抢答的规定时间可在电路开始工作前,从数据开关输入设定的抢答时间。

4)设计提示

(1)图6.1.1电路是在EWB电子工作平台设计仿真的,若需在Max+plus Ⅱ 10.0的模拟仿真,并且在SE-5M实验开发系统上实现,实验系统自带不同频率的脉冲,不必设计脉冲产生电路。

(2)在记录抢答时间的计数器采用减法计数器时,先将数据开关输入的规定抢答时间用置数法输入计数器,然后由主持人开始信号使能计数,减为零后蜂鸣器响且电路输入封锁,不能抢答;若在记录抢答时间的计数器采用加法计数器时,必须将规定抢答时间存入数据寄存器,不断比较计数器的结果与锁存器的结果,两者相等表明时间到,此时蜂鸣器响且不能再抢答。

(3)要求用数码管显示抢答者号码应在锁存器后,加一编码电路(8—3编码器),编码器输出信号再用数码管显示,本实验开发系统自带译码驱动电路,否则还需经译码等环节后才可显示。

(4)抢答时间到与有人抢答的声音输出可采用不同频率的脉冲。

图6.1.1 简单的四人智力抢答电路

6.1.2 彩灯循环显示控制电路的设计

1)设计目的

(1)学会将一个实际情况抽象为逻辑电路的逻辑状态的方法。

(2)掌握计数、译码、显示综合电路的设计与调试方法。

(3)掌握实际输出电路不同要求的实现方法。

2)电路原理与参考电路

设计彩灯循环控制电路,要求该电路彩灯循环显示频率快慢可调,控制器具有多路输出。图6.1.2是一个8彩灯循环显示的控制电路,彩灯由发光二极管模拟替代。该电路由555定时器、7490计数器和138译码器组成。7490计数器的时钟信号由555振荡电路提供,改变555的振荡频率,即可改变计数器的计数快慢,即可控制彩灯闪烁的快慢。计数器输出信号输入至138译码器,由138译码,根据计数器输出不同的计数结果,即可控制138译码器译码得到8种不同的输出信号,决定控制彩灯的循环变化。显然,不同的计数器与译码器电路,得到的是不同的彩灯循环控制结果。若译码器不变,在计数器的控制端输入不同的控制信号,进行不同的计数,则在输出端可见不同的彩灯循环输出。当然计数器不变,由不同的译码电路产生不同的信号,可以改变彩灯闪烁规律。

3)课程设计任务

设计一个16路彩灯循环电路,使其满足下列要求:

(1)16路彩灯输出显示。

(2)彩灯的闪烁按一定规则变化(至少三种以上),可通过输入开关设置或自动循环彩灯闪烁的规律。

(3)电路有复位控制,复位按钮闭合时彩灯循环输出,复位按钮断开时彩灯熄灭。

(4)可设定彩灯的闪烁时间,彩灯闪烁的时间可通过实验箱上的开关输入设定。

4)设计提示

(1)设计要求显示16路彩灯,需要16个发光二极管模拟,实验开发系统上的发光二极管已连接好限流电阻,若自行连接线路需要连接限流电阻。

(2)如图6.1.1电路一样,图6.1.2是在EWB电子工作平台设计仿真的,若需在Maxplus+Ⅱ 10.0的模拟仿真,并且在SE-5M实验开发系统上实现,实验系统自带不同频率的脉冲,不必设计脉冲产生电路。

(3)要完成三种以上彩灯闪烁花样的设计,可以采用不同的计数器与不同的译码输出信号相结合的方法。

图6.1.2 八路彩灯循环电路

彩灯图案变换的设计以4个彩灯为例,第一种图案变换: 彩灯左右摆动,状态图为: 0101→1010;第二种图案变换: 暗带移动,状态图为: 0111→1011→1101→1110;第三种图案变换: 彩带一条一条亮,然后再一条一条熄灭,状态图为: 0000→1000→1100→1110,上述变化可以用环形计数器、扭环形计数器实现。当然,也可以是: 彩灯从右到左,然后从左到右逐个点亮;彩灯从右到左点亮,然后从左到右逐个依次熄灭,全亮全灭;彩灯两边同时亮2个逐次向中间移动再散开,彩灯两边同时亮4个,4亮4灭。

为完成上述不同的闪烁规律,可手动或自动变化闪烁图案。

(4)如进一步提高彩灯的观赏性,可改变不同图案的闪烁频率,可以将输入脉冲进行分频。

6.2 综合型设计任务

设计目的:

(1)通过完成该设计任务,掌握实际问题的逻辑分析,学会对实际问题进行逻辑状态分配、化简。

(2)掌握一个数字系统问题的控制电路设计要求及信号之间的配合。

(3)掌握数字电路各分部电路与总体电路的设计、调试、模拟仿真方法。

(4)掌握一个较复杂电路在实现时,出现问题时的分析思路与解决方法;学会模块化、层次化进行电路设计的方法。

6.2.1 交通灯控制电路

1)电路原理框图与各模块参考电路

(1)原理框图

图6.2.1 交通灯系统框图

交通灯控制电路是由定时器、控制器、译码器组成的电路,实际交通灯的信号变换是由传感器发出信号实现的。在课程设计中,用数据开关表示传感器的信号。交通灯的系统控制框图如图6.2.1所示。

HG、HY、HR分别表示主干道绿、黄、红三色灯,FG、FY、FR分别表示支干道绿、黄、红三色灯,绿、黄、红三色灯可用发光二极管模拟。控制要求是:由一条主干道与一条支干道汇合成十字路口,在每一条路的路口处设置红、绿、黄三色信号灯。主干道处于常允许通行状态,支干道有车来时才允许通行,主、支干道均有车时,两者交替允许通行,主干道每次放行T1,支干道每次放行T2,在每次由绿灯亮转换到红灯亮时,要经过黄灯亮的T3时间。现设:T1为45s;T2为25s;T3为5s。

(2)各功能模块的参考电路

①定时器。定时器分别产生上述三个时间间隔后,向控制器发出“时间已到”信号,控制器根据定时器与传感器的信号,决定是否进行状态转换。如确定要状态转换,则控制器发出状态转换信号ST,定时器开始清零,准备重新计时。

定时器由与系统脉冲同步的计数器构成,从系统脉冲得到标准的1Hz频率信号,当脉冲上升沿到来时,在控制信号的作用下,计数器从零开始计数,并向控制器提供模5、模25、模45信号,即T1T2T3时间间隔信号。(如需表示指示灯的显示时间,可考虑将计数器改为减法计数器,当控制信号脉冲上升沿到来时,计数器从44开始减法计数,直至减为0,这样可以显示45s的时间。如此类推,也可提供M5、M25分别显示5s、25s的亮灯信号)。

定时器电路是由5s、25s、45s计数器功能模块构成,这在前面已详述。

②控制器。交通灯的主控电路是一个时序电路,输入信号为:车辆检测信号(传感器信号)设为AB,三个定时信号5s、25s、45s设为EDC。控制器的状态转换表如表6.2.1所示。

表6.2.1 状态转换表

逻辑变量的取值含义为:

A=0,主干道无车,A=1,主干道有车;B=0,支干道无车,B=1,支干道有车;

C=0,45s定时未到,C=1, 45s定时到;D=0,25s定时未到,D=1, 25s定时到;

E=0, 5s定时未到,E=1, 5s定时到。

状态编码为:S0=00,S1=01,S2=10,S3=11。

赋值后的状态转换表如表6.2.2所示。

表6.2.2 逻辑赋值后的状态表

将表中的触发器输出化简,并选择JK触发器,可得状态方程即驱动方程如下:

三个定时器的CP驱动方程为:

CP45=[21(A+)+Q21E]CP脉冲

CP25=[2Q1E+Q2Q1B]CP脉冲

CP5=[Q1Q2]CP脉冲

由此可得到控制器、定时器的电路图,分别如图6.2.2、图6.2.3所示。

③译码器。系统的输出是由Q2Q1驱动下的六个信号灯,可列出各状态与信号灯的逻辑关系真值表如表6.2.3所示,得到译码驱动电路的逻辑表达式及电路图,如图6.2.4所示。

图6.2.2 交通灯控制器的参考电路

图6.2.3 定时器的驱动脉冲参考电路

表6.2.3 译码驱动电路真值表

图6.2.4 译码器的参考电路

2)课程设计任务

图6.2.5 四种交通信号灯的控制器原理框图

设计交通灯控制器,有如下设计任务可供选择(见图6.2.5):

(1)任务一

①设定十字路口东西、南北两个方向主次干道的交通灯,主干道有优先通行权,用两组红、黄、绿三色发光二极管表示。

②实现正常的倒计时功能,用两组数码管作为东西(主干道)和南北方向(次干道)的倒计时显示,显示的时间分别为红灯为T2s、绿灯为T1s、黄灯为T3s

③实现总体清零功能,按下“清零”键后,系统实现总清零,计数器由初始状态计数,对应状态的指示灯亮。

④用层次化设计的方法设计电路,在进行功能仿真验证,确定电路设计正确以后,用实验系统下载验证。

(2)任务二

不考虑主、次干道的通行优先情况,仅对两个道路的交汇路口进行红、绿、黄三色信号灯的控制电路设计,此时绿灯亮时间为T1,黄灯亮的时间为T2,红灯亮时间为T3,并且有T3=T1+T2,只要亮灯的时间一到,电路发出信号进行状态转换,这样的交通灯控制电路是目前应用较为普遍的电路。

(3)任务三

设计一个具有四种信号灯的交通灯控制器。在主次干道汇合的十字路口,设置红、绿、黄及允许左拐的信号灯。 其系统的原理框图见图6.2.5所示。状态转换表见表6.2.4。

表6.2.4 状态转换表

3)设计提示

由于主次干道红灯亮的时间分别为55s、65s,所以应增加55s、65s计时电路。

6.2.2 多功能数字钟

1)原理框图与各功能模块的参考电路

(1)数字电子钟的原理框图(见图6.2.6)

图6.2.6 数字电子钟的框图

①秒计数器、分计数器、时计数器组成了最基本的数字钟的计时电路,其输出可送实验系统的数码显示管显示。

②基准频率分频器可分频出1Hz的频率信号,用于秒计数的计数信号;分频出的4Hz频率信号,用于校时、校分的快速递增信号。

③校时、校分、校秒用按钮表示,MUX模块是二选一的数据选择器,用于校时、校分与正常计时的选择。

④整点报时电路需要500Hz通过一个组合电路完成功能,整点报时在差10s为整点报时产生每隔1s鸣叫一次的报时声,共报时5次,每次持续1s

⑤闹时电路模块需要500Hz或1kHz音频信号以及来自秒计数器、分计数器、时计数器的输出信号做本电路的输入信号。

⑥闹时电路模块的工作原理为:按下闹时设置按键SD后,将闹时数据存入D触发器内。时钟正常运行时,D触发器内存的闹时时间与正在运行的时间进行比较,当比较的结果相同时,输出一个启动信号触发一分钟闹时电路工作,输出音频信号。

(2)参考电路

①计时电路

多功能数字电子钟的计时电路是前面讲解的二十四(或十二)、六十进制计数器。

②整点报时电路

当分、秒计数器计至59分50秒时,“分”计数器十位输出为QDQCQBQA=0101,个位输出QDQCQBQA=1001;“秒” 计数器个位输出为QDQCQBQA=0000,从59分50秒到59分59秒,只有“秒”个位在计数,因此可以得到图6.2.7所示的整点闹时电路。

图6.2.7 整点报时参考电路

图中,B点接1kHz的信号,A点接500Hz的信号,这样可听到前四声为低音,最后一声为高音报时的情况。

2)课程设计任务

(1)进行正常的时、分、秒计数,分别由四个数码管显示时(24小时)、分(60分钟)的计时功能。

(2)利用实验系统上的按键实现“校时”、“校分”功能:按下“校时”键时,计数器迅速递增,并按24小时循环;按下“校分”键时,计数器迅速递增,并按60分钟循环;按下“清零”键时,计时器全部清零。

(3)利用扬声器做整点报时,报时五声。

(4)实现闹时功能,可用:①预置固定的闹时时间的方法;②利用实验系统的输入数据开关随时设定闹时时间。

3)设计提示

(1)输入设置闹时,可先用D触发器构成的锁存器将输入的闹时时间保存,然后用比较器比较计时时间与锁存的闹时时间,若相等,输出闹时信号,进行闹时。

(2)单独设计24、60计数器组成电子钟的计时部件,若采取模块化、多层次的设计方法,并且整体电路的时钟是同一个CP(秒脉冲),要考虑时、分计时电路与来自分、秒低位的进位关系。

6.3 创新设计电路

6.3.1 电子密码锁的设计(一)

1)原理框图与各功能模块

本课题要求设计一个密码锁控制电路,在输入正确代码时,输出开锁信号,在规定的时间内没有输入正确代码,则进行声光报警。

图6.3.1 电子密码锁原理框图(1)

由此可得到图6.3.1所示的电子密码锁原理框图。

(1)密码储存电路用一片数据锁存器放置代码,当输入适当的电平,可将设置的代码更改,在设置密码时,锁应处于打开的状态。密码设置完毕,应将锁锁上。

(2)输入锁存电路也用一片数据锁存器,在得到开锁信号以后,触发5s计时器计时并将输入的开锁代码保存。

(3)开锁控制电路将输入的开锁代码与事先设置的代码进行比较、判断,若相等则输出开锁信号,可用点亮一个发光LED表示,若5s内无开锁信号产生,则让蜂鸣器产生一种特殊响声以示警告,并输出一信号点亮另一个LED。

2)课程设计任务

设计一个八位代码的密码锁的控制电路,当开锁按钮开关输入代码等于存储的代码时,进入开锁状态,锁打开。从开始开锁的5s内未将锁打开,则电路自动复位并进入自锁状态,使之无法打开,并有蜂鸣器发出3s的声光报警信号。

3)设计提示

(1)密码锁的控制电路在进行比较时,可将输入后的代码与设置的代码并行比较,也可以每输入一位代码进行串行比较。

(2)控制电路设计时,可以考虑无论开锁时间是否已到,一旦输入错误代码就报警的情况;也可以仅考虑只有开锁时间到的情况下才报警;也可以增加控制器的功能,记录输入开锁数码的错误次数,达到设定的次数报警,否则以开锁的时间决定是否报警。

6.3.2 电子密码锁的设计(二)

设计一个电子密码锁,在开锁的状态下输入密码,设置四位密码,用数据开关表示十进制数码,用数码管显示输入的密码,并设置一个万能密码,在主人忘记密码时使用。

1)原理框图及各功能模块(见图6.3.2)

图6.3.2 电子密码锁框图(2)

(1)输入密码编辑模块接输入数据开关,开关K1、K2、K3、K4、K5、K6、K7、K8、K9、K10代表十进制的数码0~9,输入后用数码管显示。每输入一位代码,代码左移一位,最后输入的代码用最右边的数码管表示,可进行最后输入代码的删除,每删除一位,输入的密码向右移一位,左边空出的位置补“0”,直至四位密码全部输入完毕。

(2)寄存模块用于寄存输入设置的密码和输入的开锁密码,因此在此设置信号“set”表示密码设置完毕,寄存器锁存密码,并将密码送至比较模块;当信号“check”有效,表示输入开锁代码,锁存该代码。

(3)比较模块进行两代码比较,若数码相等,D触发器被置为1,输出开锁信号,点亮发光二极管,否则D触发器为0,没有开锁信号。

在比较模块中,预先设置一个万能密码(0001),以便主人随时可开锁。

2)课程设计任务

设计一个四位密码的电子锁,要求能密码编辑、设置、显示,在密码锁闭锁以后,输入开锁代码,显示锁状态,并有万能密码功能。在完成上述任务后,可增加一个开锁时间限制功能,即在设定的时间内,输入的数码错误,无法开锁并进行声光报警。

3)设计提示

(1)密码设置是在锁打开的情况下进行。对输入的10个数据开关,需要进行编码,如:K1=0000,K2=0001等等。

密码输入删除控制电路状态为:lock=1,Ki=0,back=1,输入脉冲,数码管左移;lock=1,Ki输入脉冲,back =0,数码管右移。

当输入密码完毕以后,按下set键,此时密码显示电路清零。然后按下close键,则密码锁被锁上,lock=0。

(2)比较模块中,进行两组数的比较,一个是设置的密码与输入开锁代码比较,一个是万能密码与输入开锁代码比较,只要其中之一为相等,则输出开锁信号。

(3)开锁时间可以用一个计数器计算,当进行开锁时,触发计时。

6.3.3 出租车自动计费电路

出租车自动计费是根据客户用车的实际情况而自动显示用车费用的数字仪表。仪表根据用车起价、行车里程、等候时间三项计费,求得客户用车的总费用,通过数码管显示。

1)设计原理及框图

(1)行车里程计费

行车里程计费电路将汽车行驶的里程数转换成与之成正比的脉冲个数,然后由计数译码电路变成收费金额。实验中可用脉冲模拟,每前进10m,输出一个脉冲信号,前进1km,输出100个脉冲,设其为P3,然后选择BCD码比例乘法器将里程脉冲数乘以一个表示每千米单价的比例系数,该系数可通过BCD码拨盘预置。例如,单价0.65元/km,则预设的BCD码为B2=0110,B1=0101,则计费电路的里程计费变为脉冲个数:P1=P3(0.1 B2+0.01 B1)。

由于P3=100,经比例乘法运算后使P1为65个脉冲,脉冲当量为0.01元/脉冲。

(2)等候计费电路

与行车里程计费一样,需将等候时间变成脉冲个数,且每个脉冲所表示的金额应与里程计费额等值(0.01元/脉冲)。因此需要一个脉冲发生器,产生与等候时间成正比的脉冲信号。如:每10min 100个脉冲,设为P4,然后,通过有单价预置的比例乘法器进行运算,即得到等待时间计费值P2。如设等待单价为10min 0.45元,则

P2=P4(0.1 B3 + 0.01 B4)

其中:B3=0100, B4=0101,P2为45个脉冲。

(3)起价计费

按同样的当量将起价输入到电路中,其方法是:可通过计数器的预置端直接进行数据预置,也可按当量将起价转换成脉冲,向计数器输入脉冲。如:起价8元,则对应的脉冲为P0=8/0.01=800(个脉冲)。

(4)总行车费用

P=P0+P1+P2

(5)原理框图

图6.3.3是该电路的参考原理框图。

图6.3.3 自动计费器原理框图

2)课程设计任务

设计一个出租车自动计费电路,具有起价、行车里程、等候时间三项计费,用四位数码管显示总的金额,最大值为99.99元。起步价为5.0元,在3km之内按起步价计费,超过3km,行车里程单价为1.0元/km,等候时间为0.1元/min。在车辆起动、停止时发出音响信号,以提醒乘客注意。

在完成上述任务后,可进一步扩展该系统的功能,即用数码管显示出租车行驶的里程数,等候时间等参数。

3)设计提示

(1)行车里程数与等候时间均转换为脉冲数表示,现假设每千米输出600个脉冲,每10min输出600个脉冲,故可用一个脉冲源,频率为1Hz。

(2)设置行车、刹车、等候控制信号。3km以内,费用是起步价,起价可用异步置数的方法,预置于计费求和模块中。当里程计数达3km以后,每10个脉冲计费加0.1元。

(3)当刹车、等候信号有效时,等候时间计费,1min为6元,即60个脉冲加6元。

6.3.4 汽车尾灯控制器

设计一个汽车尾灯控制器,实现对汽车尾灯显示状态的控制。尾灯左右两侧各用3个发光二极管模拟,根据汽车的行驶情况,指示灯采取不同的显示方式: ①汽车正向行驶,左、右两侧的灯熄灭;②汽车左转弯行驶,左侧3个灯按左循环循序点亮;③汽车右转弯行驶,右侧3个灯按右循环循序点亮;④汽车临时刹车时,左、右两侧的灯同时处于闪烁状态。

1)设计原理及框图

为了表示汽车运行状态与尾灯的关系,设置2个控制变量S1S2,表6.3.1表示其相互关系:

表6.3.1 汽车运行状态与尾灯的关系

汽车尾灯控制器,在汽车左、右转弯时,3个指示灯亮,可采用三进制计数器(也可以用双向移位寄存器),如表6.3.2所示控制变量、计数器输出、CP与指示灯的关系。

表6.3.2 控制变量、计数器输出、CP与指示灯的逻辑关系

汽车尾灯控制器的结构框图如图6.3.3所示。

图 6.3.3 汽车尾灯控制器的结构框图

2)课程设计任务

根据图6.3.3所示的系统结构框图设计汽车尾灯控制器,要求采用模块、层次化的设计方法,设计并在实验开发系统上实现汽车尾灯显示电路。

3)设计提示

(1)模块控制电路可采用原理图输入法设计,该电路为组合逻辑电路,主要是输入控制信号S1S2CP与译码、显示驱动电路的控制关系。如表6.3.3为模式控制电路的逻辑真值表,表中EN1、EN2分别表示为译码、显示驱动电路的使能控制信号。

表6.3.3 模式控制电路的逻辑真值表

(2)译码与显示驱动电路

在模式控制电路输出与计数器状态的作用下,提供每侧3个指示灯共计6个控制信号,当EN1=EN2=1时,表示车转弯且由S2=1表示右转,S2=0表示左转,此时可根据S2的值及计数器输出,译码输出合适的电平,分别使DR1、DR2 、DR3或DL1、DL2 、DL3点亮;当EN1=0、EN2=1,译码器输出全为高电平(发光二极管低电平有效),此时指示灯全部不亮;当EN1=0、EN2=CP时,指示灯随CP的频率而闪烁。

6.4 自行选题

6.4.1 拔河游戏机

1)设计任务

设计一个能进行拔河游戏的电路。电路用15个发光二极管表示拔河的电子绳,开始游戏时,只有中间的LED点亮,电子绳处于中点。游戏后,双方各执一个按钮,谁按得快,亮点就向那方移动,每按一次,亮点移动一次,直至到达任一方的端点,亮点不再移动,表示该方取胜得分。具体要求为:

(1)由裁判下达比赛口令,双方才可进行输入信号,否则输入信号无效。

(2)用数码管显示比赛结果,比赛结束自动给获胜方加1分。

(3)设置系统复位信号,可将双方得分清零处理。

2)设计提示

(1)双方参赛按钮输入信号可作为一个可逆加/减计数器的计数脉冲,一方进行加运算,使亮点向右移,另一方进行减运算,亮点向左移。

(2)采用4-16译码器,使得在比赛开始前,译码信号为1000,中间的LED点亮。

(3)置裁判的“开赛”信号,只有“开赛”有效时,可逆计数器才可以工作。

(4)当亮点到达一方终端,应产生使可逆计数器停止工作的信号。

(5)每一方应设置一个得分计数器及显示器,当一方取胜时,计数器加1并显示。得分计数器应设置总清零信号,当比赛结束时,计分器清“0”,为下一次比赛做好准备。

6.4.2 电话键显示电路

1)设计任务

设计一个具有八位显示的电话按键显示电路。具体要求为:

(1)能准确反映按键数字,如:按下“3”,则显示器显示“3”。

(2)显示从低位向高位移动,逐位显示按键数字,最低位为当前输入位。

(3)重按键时,能首先清除显示。

(4)所有数字输入完毕以后,电话接通,发出“嘟……嘟”,直到有接听信号输入,如无接听信号,10s后自动挂断。

(5)在挂机5s后或按熄灭键,显示器关闭,同时扬声器停止发声。

2)设计提示

此电路应设置接听、挂机、灭灯信号,其按键用数据开关表示,8个按键用三位二进制数码编码表示,当输入完毕以后,扬声器发声,同时触发10s计时电路,若定时时间到还没有接听信号输入,显示器灭灯,扬声器停止。在任何时刻有挂机信号时,触发5s定时电路,5s后使整个电路系统复位。

6.4.3 量程可变的频率计

1)设计任务

设计一个能测量方波信号频率的频率计,测量结果用十进制显示,量程为1~100kHz。具体要求为:

(1)测量分为两个频段, 1~999Hz,1~99.9kHz,量程频段用两个LED表示,用四位数码管以8421BCD码形式显示方波信号的频率。

(2)手动按键切换。

(3)当输入的信号频率大于实际量程时,有超量程报警功能,在超出当前量程时,发出声、光信号。

2)设计提示

(1)测量脉冲信号的频率即为计算在给定时间内产生的脉冲个数,f=N/T。为方便设置时间T为1s,计算1s内被测信号送入计数器的脉冲数。

(2)设置量程开关,在小量程测量时,计数器只要进行3位十进制计数(0~999Hz);在大量程测量时,进行4位十进制计数,显示高3位,读数需扩大1000倍(0~99.9kHz)。在两个量程测量时,均能进行超量程报警。

6.4.4 洗衣机控制电路

1)设计任务

设计一个洗衣机洗涤程序控制电路,洗衣机电动机的控制要求见图6.4.1所示。

图6.4.1 洗衣机洗涤控制要求

用两位数码管显示预置的洗涤时间,在洗涤时间输入以后,洗衣机开始工作,按倒计时方式显示洗涤过程,分别用两个发光二极管LED表示洗衣机的正反转,一旦定时时间到,则停机并发出音响信号。

2)设计提示

(1)本设计的洗涤时间输入可用数据输入开关实现,需对表示0~9共10个数码的开关进行编码。

(2)设置洗涤信号,洗涤信号有效后,则洗涤计时电路进行减法计数(本设计中有10s、20s两个计时电路)。

(3)对洗涤过程的状态进行逻辑赋值、编码,设计时序电路。

(4)对时序电路的输出进行译码,可得到洗衣机工作状态的输出信号,传送至LED显示。

(5)当洗衣机定时时间到,对控制电路进行异步复位。

6.4.5 电梯控制器

1)设计任务

设计一个8层楼房电梯控制器,用8个LED显示电梯行进过程,并用数码管显示电梯当前所在楼层的位置,每层电梯入口处设有请求按钮,按下按钮,则相应楼层的LED亮。

电梯到达请求的楼层,该层的指示灯灭,电梯门打开,开门5s,电梯自动关门,继续运行。

电梯运行中,响应最早的请求,再响应后续的请求。若无请求,则停在当前层;若遇两个请求,先响应请求信号离当前层近的请求,再响应较远的请求。

2)设计提示

(1)设置8个开关电平信号表示各楼层的请求信号,每次最多允许两个请求信号。

(2)设置8个LED表示当前楼层位置及请求楼层(当前楼层用A,请求楼层用B表示),当电路接到请求信号时,须进行比较,即:若A>B,电梯下行时,移位寄存器右移,A<B,电梯上行时,移位寄存器左移;A=B,电梯开门,保持开门信号5s。电梯初始位置为1层。

(3)若有两个请求信号时,电路能进行比较,选出与当前楼层距离近的楼层先响应。