您好,欢迎来到爱够旅游网。
搜索
您的当前位置:首页数电课程设计

数电课程设计

来源:爱够旅游网


目录

导言................................................................................................................................ 2 第一章设计目标............................................................................................................ 2 第二章系统概述............................................................................................................ 3

1. 设计思想.......................................................................................................... 3 2. 可行性论证...................................................................................................... 3 3. 各功能的组成.................................................................................................. 4 第三章单元电路设计与分析........................................................................................ 5

1. 分频器模块...................................................................................................... 5 2. 计数器模块...................................................................................................... 6 3. 动态扫描按键模块.......................................................................................... 7 4. 编码转换模块.................................................................................................. 8 5. 单脉冲发生器模块.......................................................................................... 8 6. 移位寄存器模块.............................................................................................. 9 7. 六位动态显示模块........................................................................................ 10 第四章电路的组构与调试.......................................................................................... 11

1. 遇到的主要问题及现象记录........................................................................ 11 2. 产生上述现象的原因分析与解决措施: ...................................................... 11  灭零模块:.................................................................................................... 12  删位模块:.................................................................................................... 13 第五章扩展功能(按键音调).................................................................................. 14 第六章结束语.............................................................................................................. 15

1. 对设计题目的结论性意见及进一步改进的意向说明: .............................. 15 2. 总结设计的收获与体会................................................................................ 15 附录一设计总电路图

...........................................................................................16

附录二按键音调分频器…………………………………………………………………………………….17 附录三六选一数据选择器………………………………………………………………………………..18 参考文献…………………………………………………………………………………………………………….18

-1 -

导言

电话机是千家万户常用的通信设备。如今电话机差不多全是按键式的,连那些只具有基本功能的电话机也有0 ~ 9 及“*”,“#”等 12 个按键和若干功能键。许多电话机还有一个带LED 的显示屏,拨打电话时能够显示拨出的电话号码等信息。仿照这一功能,我们可以设计一个“电话机键盘拨号LED 显示”控制电路,利用LP-2900 FPGA 实验装置,将我们的设计下载到实验装置,实现键盘拨号LED 显示。

第一章设计目标

1、 利用3 X 4 小键盘输入“0”~“9”10 个数字键,字符能在LED 显示屏从左到右依次正确显示;每按一次键,显示一位号码。

2、 当按下按键时,会在七段共阴显示器上,显示所按键对应的数字,同时应当保证当按下一次按键时,七段显示器上只显示一次按键数字,而不应是多次显示出该按键对应的数字。

3、 随着每次按下按键后,七段显示器上以前的数字向左移一位,而新按下的数字始终显示在显示器上的最右边。七段显示器上的数字以按下时间的先后顺序,依次从左往右显示。

4、 应当设有复位键,当复位键按下时,数码管上的数字全部消失。 5、 附带删位,按键音调功能。

-2 -

第二章系统概述

1. 设计思想

首先利用7490芯片实现十分频,以获取1KHz的扫描频率,对按键阵列进行扫描读取,以及对七段显示器进行扫描显示。3 X 4 小键盘共有12个键位,可用4位二进制代码表示,这里可以选取8421BCD码。对于显示器上的移位显示,我们选取4个8位移位寄存器74198,对显示器上所显示的数字进行数据储存以及移位显示功能,4位二进制代码分别储存在4个移位寄存器上,不同移位寄存器上的相同的输出端(QA~QH)所组成的4位二进制表示LED显示屏对应位置所要显示的数字,然后通过数据选择器(74151芯片)进行数据选择扫描显示,由于扫描显示的速度很快,我们人眼所观察到的是一直显示着。总体设计思路如下:

osc 分频器 键盘扫描 编码转换 移位寄存器 3 X 4键盘 六位动态显示

2. 可行性论证

电话机的控制部分以FPGA 实现,脉冲信号由LP-2900装置上的石英晶体振荡器OSC产生,再通过分频器获得适合的扫描频率。在LP-2900的L区有12个排成3列4行的电话键盘阵列。键盘阵列的行信号由FPGA控制外部的3-8译码器三个输入端DE1~DE3扫描驱动,FPGA通过键盘阵列的列信号(RK1~RK3)判断各键的状态,将RK1~RK3接入4选1的数据选择器,用2个数据选择端控制输出,这样设计5位32进制的计数器控制这5个扫描码周期性循环变化。每按一次按键产生四位有效二进制码,数据选择器输出端控制计数器停止计数,同时控制单脉冲发生器工作将移位寄存器模块输入的四位二进制码进行一次左移输出,通过编码转换将四位二进制码转换成七位二进制码控制7段LED数码管显示,同时DE1~DE3周期性变化控制六位数码管的动态扫描,从而可以实现动态显示。

-3 -

3. 各功能的组成

分频器模块:由7片LS7490构成7级十分频的分频模块 计数器:由quartusII通用计数器实现 数据选择器:由芯片74153实现

单脉冲发生器模块:由俩片D触发器,以及一个非门和一个与门构成 寄存器:由芯片74273实现暂时储存数据功能 编码转换:由AHDL文件构成

移位寄存器模块:由4片74198芯片于组成

六位动态显示模块:利用芯片74151与7448以及LP-2900上的七段共阴显示

器组成

4. 总体工作过程

移位寄存器 六位动态显示

根据作出的系统工作流程图分析如下:

(1)分频器将实验提供的10MHz的输入频率进行分频,得到系统所需的1KHz

频率,分配给键盘扫面模块和单脉冲发生器模块。

(2)键盘扫描模块将得到的1KHz作为扫描频率,计数器开始由低位DE1依

次向DE2、DE3、B0、B1高位开始计数,当高位B1产生进位时将进位信号通过非门输出到计数器的清零端,完成一次扫描周期。DE1、DE2、DE3输出到“键盘”的74138译码器控制每一行的扫描,B0,B1输出到74153M数据选择器控制每一列的扫描。

(3)当键盘的某一按键按下时,此时数据选择器模块的74153M扫描到输

-4 -

入端有低电平,会输出一个信号Y使其计数器模块停止计数,变为保持状态。同时导通移位寄存器模块,使其能对此时计数器模块输出的二进制码进行寄存功能。信号Y(未按键时出1,按下键时出0)通过一个非门启动单脉冲发生器,以进行消抖功能,其输出的脉冲信号接入移位寄存器的CP端,保证每按一次键进行一次左移。

(4)最后编码转换模块将六位移位寄存器模块输出的四位二进制码进行编

码转换,产生7位二进制数,控制7段显示器a-g的状态,从而使它显示按键对应的十进制数字,完成六位动态显示。

第三章单元电路设计与分析

1. 分频器模块

十分频的实现:

分频器输入端i控制五进制计数器的时钟CLKB,并以五进制的最高位输出QD控制二进制计数器的时钟CLKA,即构成21BCD十进制计数器,在每个计数脉冲的下降沿五进制计数器加1,而每个QD的下降沿QA翻转,即每来10个计数脉冲输出状态QA循环一个周期:5个输入脉冲时间段为低电平、5个输入脉冲时间段为高电平,实现占空比为50%。

-5 -

将7个LS7490级联,便可实现7级十分频,打包后便可得到如右图的元件,可实现对LP-2900所提供的10MHz的时钟信号逐级分频,以达到所需要的1MHz、100KHz、10KHz、1KHz、100Hz、10Hz、1Hz。本实验采用1KHz的时钟信号。

2. 计数器模块

如右图,计数器采用quartusII自带的通用计数器编译出5位二进制计数器。

计数器时钟信号输入端clock

脉冲上沿有效,接分频器的1KHz输出端,以获得频率为1KHz的时钟信号。同时设置一个使能控制端clk_en,接动态扫描模板中的数据选择器的输出的,以实现当按下按键,寄存器读取到数据时,便暂停计数器工作,以防止寄存器的重复记录数据,保障数据的正确性。

计数器的输出端q[4..0]为5位二进制数,q[4]、q[3]接数据选择器的选择输入端A1、A2,q[2]、q[1]、q[0]接LP-2900的DE3、DE2、DE1(即动态扫描按键模板中译码器的地址码输入端A2、A1、A0)。通过译码器与数据选择器便可将按键的位置与q[4]q[3]q[1]q[0]所组成的4位二进制对应起来,同时q[2]q[1]q[0]组成的二进制循环变化以实现对六个LED数码管进行扫描显示。

-6 -

3. 动态扫描按键模块

总体连结图如右,有计数器、译码器、数据选择器组成。

计数器在以高频率重复输出着模为32的5位二进制代码。当没有按键按下时,无论数据选择器的A0A1输入为什么,输出Y均为高电平,计数器保持工作。

但有按键按下时,

由于译码器与数据选择器的A0A1不断变化,必定会有某一时刻,数据选择器的输出Y变为0,并且如果Y与计数器的使能端相连接,此时计数器会处于保持状态。同时Y由0变1,则寄存器的使能端则由1变0,获得一个脉冲上沿,寄存器存储下此时Q0~Q4的数据。

Quartus II中的连线图如下:

说明:图中数据选择器的输出Y应先接一个反相器,再与寄存器的使能端以及单脉冲发生器相接

-7 -

4. 编码转换模块

连接图如右:

编码转换元件采用Quartus II中的AHDL方法进行编写,将寄存器所存储的初始数据转换为可供我们方便读懂的8421BCD码。AHDL编译代码如下:

SUBDESIGN BCD1

(

db[3..0] :INPUT; k[3..0] :OUTPUT; ) BEGIN TABLE

db[3..0] => k[3..0];

b\"0000\" => b\"0001\"; /1 b\"0001\" => b\"0100\"; b\"0010\" => b\"0111\"; b\"0100\" => b\"0010\"; b\"0101\" => b\"0101\"; b\"0110\" => b\"1000\"; b\"0111\" => b\"0000\"; b\"1000\" => b\"0011\"; b\"1001\" => b\"0110\"; b\"1010\" => b\"1001\"; b\"0011\" => b\"1100\"; b\"1011\" => b\"1111\"; END TABLE; END;

/4 /7 /2 /5 /8 /0 /3 /6 /9 /*

/#:实现删位功能

5. 单脉冲发生器模块

内部连接图以及对应的打包元件图如下

-8 -

当输入data为右图中的M时,时钟信号为CP时,则可得出第一个D触发器的输出Q0、第二个D触发器的输出Q1的输出波形以及最终输出Y(p)的输出波形,如右图。

由此可得电路的功能:当data为

1时,p输出与CP同步、同周期的单脉冲,同时还具有消抖动作用。

6. 移位寄存器模块

连接图如右: 移位寄存器模块4块LS74198芯片组成,图中只列出其中一块,另3块与它类似。

图中LS74198的CLK接单脉冲发生器的输出p0,k[i]接编码转换的输出k[3..0]。当k[3..0]不全为1时,则S0、S1为01,移位寄存器实现左移功能,从SLSI端输入。每当按下一次按键时,CLK端接收到一个单脉冲,即一个脉冲上沿,LS74198触发一次,将前面所接收数据(在图中引脚)向上移一位,并从SLSI接收到来自编码转换的一位二进制码,储存在QH中。

当k[3..0]全为1时,S0、S1为10,移位寄存器实现左移功能,目的是实现删位功能。具体实现方式在后面将详细介绍

图中rest外连LP-2900的按键,目的是实现清零功能。当我们按下rest键时,LS74198的CLRN接收到低电平,74198异步复位,输出QA~QH全为零,即实现清零。

这里有一点需要说明,每按一次键时编码转换所输出的4位二进制编码

-9 -

是分别储存在4个LS74198的相同输出端,即来自4块LS74198的相同输入端所组成的4位二进制编码才是代表的一个按键数。在后面的动态显示中,也是先通过数据选择器将这存储在不同LS74198上的4位二进制代码组合起来,然后再通过7448传递给七段共阴显示器显示。

7. 六位动态显示模块

六位动态显示模块是由4块LS74151(八选一数据选择器)和1块7448以及LP-2900上的6个共阴显示器构成。下图为单块LS74151与7448相连的电路图,其余三块与图中类似:

4块LS74151的输入D0~D5分别与移位寄存器模块中4块LS74198的输出QC~QH相连,输入A、B、C分别接计数器的输出q[0]、q[1]、q[2],输出Y与对应的7448输入A、B、C、D相接。LS7448的输出与LP-2900的七段共阴显示器相连。

由于4块LS7451都与q[0]q[1]q[2]相连,所以在同一时刻,4块LS74151都会将相同位置的输入端选择出来并输出,然后通过7448就将来自4块LS74151的输出组合起来,并翻译成可供七段共阴显示器显示。这样就实现了将编码转换输出4位二进制代码再次组合起来并提供给共阴显示器显示。

另外,q[0]q[1]q[2]是在以高频率二进制递增的,所以在短时间类,LS74151经过很多次选择输出,同时q[0]q[1]q[2]与DE1、DE2、DE3相连,每次LS74151选择一个输入位置输出,都会在相应位置显示,由于在短时间内循环显示多遍,且时间间隔很短,人眼看就觉得是在一直显示。

-10 -

第四章电路的组构与调试

1. 遇到的主要问题及现象记录

1)刚开始选择分频器的输出频率是10KHz,发现当按下一次按键时,会导致显示器上出现多个相同的数字。当分频器输出频率是100Hz或者更小时,显示器上的所有数字会闪烁。

2)没有按过任何按键或按过复位键rest后,6位LED显示器上显示全为0,并不能像理想中为全灭(即不显示任何数字)。同时,在按过不到6次按键,那些不需显示的位置也是为0,没有达到理想效果。 3)一开始时,无法考虑到删位功能。

2. 产生上述现象的原因分析与解决措施:

1)发生按下一次按键时,会导致显示器上出现多个相同的数字情况,这表明我们选择的扫描频率过高,通过实验一一测试发现频率选取1KHz或者500Hz都可以。本实验最终选取1KHz作为扫描频率。而如果选择100Hz或者更低,会因为扫描频率太低,导致人们肉眼可以观察到数字的闪烁情况。(经实验测试250Hz的扫描频率也会出现显示器数字闪烁的问题。

2)出现这种情况,主要是因为在六位动态显示模块中,我把LS7448的RBIN默认接高电平,导致没有输入情况下时,移位寄存器LS74198的输出全为零,当LS7448会将这些全为零的4位二进制代码翻译成作“0”显示。为解决这一问题,我新增了一个模块——灭零模块。详细介绍如下:

-11 -

 灭零模块:

 目的:为了让LED显示屏上无需显示的位数不显示任何数字  电路图:

新增1块LS74198和LS74151,连接方式与前4块LS74198、74151差不多,不同的是:此处LS74198的左移输入端SLSI直接接高电平,目的是保持左移时输入始终为高电平“1”;另外LS74151的输出接7448的RBIN,用来控制7448的灭零功能。  工作原理:

当按rest复位后或未按过任何键时,LS74198的输出全为零,则LS74151的输出也始终为零,即LS7448的LTN、RBIN为“10”,满足灭零功能,即输出全为低电平,LED显示器上不显示任何数字。

当按下0~9某一个按键时,移位寄存器模块马上储存下该按键的数据以提供显示器显示,同时灭零模块的LS74198也左移,左移输入端读取“1”。这样,移位寄存器模块与灭零模块实现同步移位,即使删位也是同步右移。并且移位寄存器模块中的LS74198的某个输出端有数据储存时,相对应的灭零模块中的LS74198的相同输出端即为“1”,当动态扫描显示需要显示该位时,灭零模块的输出Y为“1”即将该位显示出来;同时,对于移位寄存器模块中的LS74198的某个输出端未储存数据时,相对应的灭零模块中的LS74198的相同输出端即为“0”,当动态扫描显示需要显示该位时,灭零模块的输出Y为“0”即灭零,不显示。

-12 -

 删位模块:

删位功能实现的电路图如下:

本设计是采用“#”进行删位,当按下“#”时,编码转换模块会输出k[4..0]为“1111”,这时LS74198的S0、S1为“10”,移位寄存器右移,然而右移输入端未接任何,即为低电平。没按下一次“#”键,LS74198右移一次,每一次右移就刚好把最后输入的删去,即实现了右移功能。同时,在灭零模块中也是如此。

-13 -

第五章扩展功能(按键音调)

电路图如下:

蜂鸣器的音调主要与输入频率有关,因此此处的分频为关键所在,本设计采用了LS74161实现任意进制分频,上图中为最终的打包元件。具体内部连接见附录2。

同时,为满足不同按键有不同的音调,所以还需加一个数据选择器,因为有9个键,所以将两个LS74151和两个门电路组成一个十六选一的数据选择器。具体连接见附录3。

另外,当松开按键时蜂鸣器停止响,便在加一个与门,一输入端接十六选一数据选择器,另一输入端接按键扫描模块中数据选择器输出Y0通过反相器后的输出。

-14 -

第六章结束语

1. 对设计题目的结论性意见及进一步改进的意向说明:

该题目切合实际,又与所学的数电知识紧密结合,难度适中,有益于学生更好的做到学以致用。同时,该设计题目涉及到多个模块与器件的连接使用,非常有益于学生逻辑思维能力的培养以及对以往学过的数电知识的再次回顾,于实际应用中加深理解与记忆。

进一步改进改进意见:在分频器方面还有待加强学习,在按键音调方面还有很大的提升空间,如果分频方面能够更加精准,便可调出与音乐相符的音调,按键的声音也就更加美妙动听了。 2. 总结设计的收获与体会

此次实验与以往的实验不同,以前的实验只需要根据给出的电路图去连接,然后测数据即可。然而此次实验却需要我们去花更多的时间去研究原理,设计模块,思考与选择方案,研究模块之间的联系,实验的难度更高,但很好的锻炼了学生的思考与动手能力,有利于学生真正的去做到学以致用。

在此次实验中,我接触了Quartus II这款软件,在使用这款软件中我学会了如何去熟练操作这款软件。同时在实验中,我不断去思考模块的正确与否,不断去实验各个模块方案。

在完成基本电话机工作设计时,往往不能马上就出现想要的结果。在这个过程中我不断去检查电路,寻找错误,理清工作原理与顺序。这个过程往往很痛苦,很枯燥,但是却在这个过程中不断磨练着我的耐心,要知道一个实验的设计,需要的更多的是耐心。而这份耐心,必定会在我们日后的工作起到很好的作用。

而在拓展功能(按键音调)的设计上,因为并不是必须要做的实验,同时自身比较忙的缘故,曾经多次犹豫是否该放弃。但万幸的是,我并没有选择放弃,虽然删除功能因为时间太短,最终只能放弃。但是,按键音调设计却获得了成功,在此过程中,我学会了74161的任意进制分频,如果时间允许,设计出合乎我们音乐习惯的音调是可以实现的。

同时在此次实验中,让我对之前学过的数电知识有了更深更系统的理解,通过理论知识的积累去指导实践,又在实践中验证理论知识的正确与否,可以说,通过此实验,我获益匪浅。

同时,也希望学校能更多的添加类似的实验,相信学生们会从这些实验中收获更多的知识,有利于学生的培养。

-15 -

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- igbc.cn 版权所有 湘ICP备2023023988号-5

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务