《七段译码器的设计教材》由会员分享,可在线阅读,更多相关《七段译码器的设计教材(14页珍藏版)》请在金锄头文库上搜索。
1、课程设计题目:Seven-Segment Decoder design 七段译码器指导教师:陈彦学号 姓名2012059170003 段涛2012059170004 方继茂2012059170005 姜哲2012059170008 李天闰 2014年4月 1. 电路说明:译码器是一种具有“翻译”功能的逻辑电路,这种电路能将输入二进制代码的各种状态,按照其原意翻译成对应的输出信号。有一些译码器设有一个和多个使能控制输入端,又成为片选端,用来控制允许译码或禁止译码。BCD七段译码器的输入是一位BCD码(以D、C、B、A表示),输出是数码管各段的驱动信号,称47译码器(seven-segment d
2、ecoder)。若用它驱动共阴LED数码管,则输出应为高有效,即输出为高(1)时,相应显示段发光。例如,当输入8421码DCBA=0100时,应显示4, 即要求同时点亮b、c、f、g段, 熄灭a、d、e段,故译码器的输出应为=0110011。LED显示器由7条线段围成8字型,每一段包含一个发光二极管。外加正向电压时二极管导通,发出清晰的光。只要按规律控制各发光段的亮、灭,就可以显示各种字形或符号。 LED数码管有共阳、共阴之分。使用时,公共阴极接地,7个阳极a g由相应的BCD七段译码器来驱动(控制)。2.方框图:系统主要功能模块如上三图所示,图一为BCD七段译码器与LED显示器的链接方式,图
3、二为LED显示器内部的电路结构,图三为LED显示器引脚对应的发光二极管。3.真值表:输入输出LEBILTDCBAFaFbFcFdFeFfFg显示*0*11111118*01*000000001100001111110001100010110000101100101101101201100111111001301101000110011401101011011011501101101011111601101111110000701110001111111801110011111011901110100000000011101100000000111100000000001111010000000
4、0111110000000001111110000000111*(10个有效编码的真值表如下)4.逻辑电路:(由于门级结构较为复杂,为直观表示,将输出分开作图)DCBAFa=(dcba+dcba)ABCDFb=(dcba+dcba)ABCDFc=(dcba)ABCDFd=(dcba+dcba+acba)DCBAFe=(dcba+dcba+dcba+dcba)BCDAFf=(dcba+dcba+dcba+dcba)DCABFg=(dcba+dcba+dcba)可以通过以上7幅逻辑门级电路图来直接制作7段译码器: 输入为4位BCD二进制码 输出为7个7段译码通过发光二极管可以显示以下9位编码:5电
5、器线路: 1. 实际选片:74HC47与74LS47 2连接方式如下图所示: 其中74HC47为高电平有效,需要接入共阳LED显示器,显示器公共端接5V电源,各段经1k限流电阻接七段译码器的输出端。 74LS47为低电平有效,需要接入共阴LED显示器,显示器接法与74HC47相反,各段可不需接入限流电阻即可接七段译码器的输出端。(LED显示管的驱动内部方式如右图所示:)*74LS47的实物图:利用74LS47搭建数字电路:*基于multisim上的七段译码器设计:*7段译码器verilog 编程程序:module bin27seg (data_in ,EN ,data_out );input
6、3:0 data_in ;input EN ;output 6:0 data_out ;reg 6:0 data_out ;always (data_in or EN )begindata_out = 7b1111111;if (EN = 1)case (data_in )4b0000: data_out = 7b1000000; / 04b0001: data_out = 7b1111001; / 14b0010: data_out = 7b0100100; / 24b0011: data_out = 7b0110000; / 34b0100: data_out = 7b0011001; /
7、 44b0101: data_out = 7b0010010; / 54b0110: data_out = 7b0000011; / 64b0111: data_out = 7b1111000; / 74b1000: data_out = 7b0000000; / 84b1001: data_out = 7b0011000; / 94b1010: data_out = 7b0001000; / A4b1011: data_out = 7b0000011; / b4b1100: data_out = 7b0100111; / c4b1101: data_out = 7b0100001; / d4b1110: data_out = 7b0000110; / E4b1111: data_out = 7b0001110; / Fdefault: data_out = 7b1111111;endcaseendendmodule