BCD |
您所在的位置:网站首页 › 真值表转换为功能表 › BCD |
目的 1. 进一步掌握VHDL语言的基本结构及设计的输入方法。 2. 掌握BCD-七段显示译码器的设计思路;
内容 1. 使用拨码开关SW3、SW2、SW1、SW0作为四位二进制数据 D、C、 B、A的输入; 2. 在最右边的数码管HEX0上显示输入的BCD码编码数值。
原理 七段数码管一般由8个发光二极管组成,其中由7个细长的发光二极管组成数字显示,另外一个圆形的发光二极管显示小数点。 当发光二极管导通时,相应的一个点或一个笔画发光。控制相应的二极管导通,就能显示出各种字符。发光二极管的阳极连在一起的称为共阳极数码管,此时译码器的输出应该是低电平有效;阴极连在一起的称为共阴极数码管,此时译码器的输出应该是高电平有效。如图2-25所示。
图2-25 七段数码管结构图
74LS47是将四位二进制编码编码转化为十进制数码(BCD),并通过七段数码管显示出来的译码器/驱动器,其引脚图如图2-26所示。74LS47可以驱动共阳极的发光二极管七段LED显示字符。
图2-26 74LS47引脚图 74LS47 有自动前、后沿灭零控制(RBI 和 RBO)。试灯(LT)可在 BI/RBO 端处于高电平的任何时刻去进行,该电路还含有一个灭灯输入(BI),它用来控制灯的亮度或禁止输出。在输入0~15时,74LS47显示的字符如图2-27所示。功能表如表2-2所示。
图2-27 74LS47显示字符
表2-2 74LS47功能表 DE2-115配有八个七段数码管。它们被分成两组,每组4个,用来作为数字显示用。DE2-115的七段数码管采用共阳极连接方式。FPGA输出低电平时,对应的字码段点亮,反之则熄灭。要注意的是:在DE2-115开发板上七段数码管的点是不可用的。 操作1.创建一个Quartus II 工程,用来在DE2-115上实现预期电路。 2.写出预期电路的VHDL代码。 3.将VHDL文件包含进工程并编译。 4.仿真电路来检测其功能。 5.分配引脚。 6.重新编译并将其下载进FPGA芯片中。 7.通过DE2-115开发板来证实电路是否准确。
程序 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY BCD7 IS PORT ( Ain,Bin,Cin,Din: IN STD_LOGIC; ----输入4位BCD码 LT,RBI,BI:IN STD_LOGIC; a,b,c,d,e,f,g : OUT STD_LOGIC); --7段码 END BCD7;
ARCHITECTURE ARCH OF BCD7 IS SIGNAL Q: STD_LOGIC_VECTOR (3 DOWNTO 0); BEGIN Q DOUT := "1111001"; WHEN "0010" => DOUT := "0100100"; WHEN "0011" => DOUT := "0110000"; WHEN "0100" => DOUT := "0011001"; WHEN "0101" => DOUT := "0010010"; WHEN "0110" => DOUT := "0000010"; WHEN "0111" => DOUT := "1111000"; WHEN "1000" => DOUT := "0000000"; WHEN "1001" => DOUT := "0011000"; WHEN "1010" => DOUT := "0001000"; WHEN "1011" => DOUT := "0000011"; WHEN "1100" => DOUT := "1000110"; WHEN "1101" => DOUT := "0100001"; WHEN "1110" => DOUT := "0000110"; WHEN "1111" => DOUT := "0001110"; WHEN OTHERS => DOUT := "1000000"; END CASE; End if; End if; a |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |