7段数码管控制引脚
CD4511(BCD码七段码译码器)

表 3-2 CD 4511 的真值表
8421 BCD 码对应的显示见下图
:
选用共阴极数码管,对于 CD4511 ,它与数码管的基本连接方式如下图 :
J=
=(C+B)D+BI
如不考虑消隐 BI 项,便得 J=(B+C)D 据上式,当输入 BCD 代码从 1010---1111 时,J 端都为“1”电平,从而使显示器中
的字形消隐。
输出 输入 LE BI LI D C B A a b c d e f g 显示 X X 0 XXXX1111111 8 X 0 1 X X XX 0 0 0 0 0 0 0 消隐 0 1 1 0 0 0 0 1111110 0 0 1 1 0 0 0 1 0110000 1 0 1 1 0 0 1 0 1101101 2 0 1 1 0 0 1 1 1111001 3 0 1 1 0 1 0 0 0110011 4 0 1 1 0 1 0 1 1011011 5 0 1 1 0 1 1 0 0011111 6 0 1 1 0 1 1 1 1110000 7 0 1 1 1 0 0 0 1111111 8 0 1 1 1 0 0 1 1110011 9 0 1 1 1 0 1 0 0 0 0 0 0 0 0 消隐 0 1 1 1 0 1 1 0 0 0 0 0 0 0 消隐 0 1 1 1 1 0 0 0 0 0 0 0 0 0 消隐 0 1 1 1 1 0 1 0 0 0 0 0 0 0 消隐 0 1 1 1 1 1 0 0 0 0 0 0 0 0 消隐 0 1 1 1 1 1 1 0 0 0 0 0 0 消隐 1 1 1 X X XX 锁 存 锁存
a、b、c、d、e、f、g:为译码输出端,输出为高电平 1 有效。 CD4511 的内部有上拉电阻,在输入端与数码管笔段端接上限流电阻就可
7段数码管显示电路

4.4.17段数码管的结构与工作原理
7段数码管一般由8个发光二极管组成,其中由7个细长的发光二极管组成数字显示,另外一个圆形的发光二极管显示小数点。
当发光二极管导通时,相应的一个点或一个笔画发光。控制相应的二极管导通,就能显示出各种字符,尽管显示的字符形状有些失真,能显示的数符数量也有限,但其控制简单,使有也方便。发光二极管的阳极连在一起的称为共阳极数码管,阴极连在一起的称为共阴极数码管,如图4.9所示。
段数码管内部字段led和引脚分布abcdefgdfdqwdq?edql共阳极bcbirbocrbicgnd1918171614131274ls47管脚定义段数码管静态显示电路原理图之锁存电路a9vccunicur2in2q13in3qjt4ri4lt5in5qi11111115pe210pe12peo2动态显示所谓动态显示就是一位一位地轮流点亮各位显示器扫描对于显示器的每一位而言每隔一段时间点亮一次
#include <stdarg.h>
/* 4个7段数码管锁存器地址*/
#define LED1ADDR 0x8000
#define LED2ADDR 0x8100
#define LED3ADDR 0x8200
#define LED4ADDR 0x8300
// 0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f0011639C
软件实现过程如下:
/***************************************************
7段数码管静态显示程序
***************************************************/
#include <reg52.h>
LED数码管及引脚图详细资料

LED数码管及引脚图资料LED数码管实际上是由七个发光管组成8字形构成的,加上小数点就是8个。
这些段分别由字母a,b,c,d,e,f,g,dp来表示。
当数码管特定的段加上电压后,这些特定的段就会发亮,以形成我们眼睛看到的 2个8数码管字样了。
如:显示一个“2”字,那么应当是a亮b亮g亮e亮d亮f不亮c不亮dp不亮。
LED数码管有一般亮和超亮等不同之分,也有0.5寸、1寸等不同的尺寸。
小尺寸数码管的显示笔画常用一个发光二极管组成,而大尺寸的数码管由二个或多个发光二极管组成,一般情况下,单个发光二极管的管压降为1.8V左右,电流不超过30mA。
发光二极管的阳极连接到一起连接到电源正极的称为共阳数码管,发光二极管的阴极连接到一起连接到电源负极的称为共阴数码管。
常用LED数码管显示的数字和字符是0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F。
led数码管(LED Segment Displays)是由多个发光二极管封装在一起组成“8”字型的器件,引线已在内部连接完成,只需引出它们的各个笔划,公共电极。
led数码管常用段数一般为7段有的另加一个小数点,还有一种是类似于3位“+1”型。
位数有半位,1,2,3,4,5,6,8,10位等等....,led数码管根据LED的接法不同分为共阴和共阳两类,了解LED的这些特性,对编程是很重要的,因为不同类型的数码管,除了它们的硬件电路有差异外,编程方法也是不同的。
图2是共阴和共阳极数码管的内部电路,它们的发光原理是一样的,只是它们的电源极性不同而已。
颜色有红,绿,蓝,黄等几种。
led数码管广泛用于仪表,时钟,车站,家电等场合。
选用时要注意产品尺寸颜色,功耗,亮度,波长等。
下面将介绍常用LED数码管内部引脚图片10引脚的LED数码管图1 这是一个7段两位带小数点 10引脚的LED数码管LED数码管引脚定义图2 引脚定义每一笔划都是对应一个字母表示 DP是小数点.LED数码管要正常显示,就要用驱动电路来驱动数码管的各个段码,从而显示出我们要的数位,因此根据LED数码管的驱动方式的不同,可以分为静态式和动态式两类。
七段数码管引脚图

由于很多多都需要这个数码管引脚图,于是今天专门用qq截了图,请大家记好引角的顺序《七段数码管引脚图》数码管使用条件:a、段及小数点上加限流电阻b、使用电压:段:根据发光颜色决定;小数点:根据发光颜色决定c、使用电流:静态:总电流80mA(每段10mA);动态:平均电流4-5mA 峰值电流100mA上面这个只是七段数码管引脚图,其中共阳极数码管引脚图与共阴极的是一样的,4位数码管引脚图请在本站搜索我也提供了数码管使用注意事项说明:(1)数码管表面不要用手触摸,不要用手去弄引角;(2)焊接温度:260度;焊接时间:5S(3)表面有保护膜的产品,可以在使用前撕下来。
数码管测试方法与数字显示译码表图三、测试:同测试普通半导体二极管一样。
注意!万用表应放在R×10K档,因为R×1K档测不出数码管的正反向电阻值。
对于共阴极的数码管,红表笔接数码管的“-”,黑表笔分别接其他各脚。
测共阳极的数码管时,黑表笔接数码管的vDD,红表笔接其他各脚。
另一种测试法,用两节一号电池串联,对于共阴极的数码管,电池的负极接数码管的“-”,电池的正极分别接其他各脚。
对于共阳极的数码管,电池的正极接数码管的VDD,电池的负极分别接其他各脚,看各段是否点亮。
对于不明型号不知管脚排列的数码管,用第一种方法找到共用点,用第二种方法测试出各笔段a-g、Dp、H等。
uchar bit_secl=0x01;for(n=0;n<8;n++) //显示数字P2=0x03;bit_secl=bit_secl<<1; delay_ms(1500);}return;}void display4(void) {uchar n;uchar bit_secl=0x01;for(n=0;n<8;n++) //显示数字{P0=bit_secl;P2=0x04;bit_secl=bit_secl<<1; delay_ms(1500);}return;}void display5(void) {uchar n;uchar bit_secl=0x01;for(n=0;n<8;n++) //显示数字P2=0x05;bit_secl=bit_secl<<1; delay_ms(1500);}return;}void display6(void) {uchar n;uchar bit_secl=0x01;for(n=0;n<8;n++) //显示数字{P0=bit_secl;P2=0x06;bit_secl=bit_secl<<1; delay_ms(1500);}return;}void display7(void) {uchar n;uchar bit_secl=0x01;for(n=0;n<8;n++) //显示数字P2=0x07;bit_secl=bit_secl<<1; delay_ms(1500);}return;}void display8(void) {uchar n;uchar bit_secl=0x01;for(n=0;n<8;n++) //显示数字{P0=bit_secl;P2=0x08;bit_secl=bit_secl<<1; delay_ms(1500);}return;}void display0(void) {uchar n;uchar bit_secl=0x01;for(n=0;n<8;n++) //显示数字P2=0x00;bit_secl=bit_secl<<1; delay_ms(1500);}return;}void main(void){for(; ;){display0();display1();display2();display3();display4();display5();display6();display7();display8();}}数码管引脚图,一般都是一样的。
七段显示译码器7448功能,引脚图及应用电路

七段显示译码器7448功能,引脚图及应用电路数字显示译码器是驱动显示器的核心部件,它可以将输入代码转换成相应的数字显示代码,并在数码管上显示出来。
图8-51所示为七段显示译码器7448的引脚图,输入A3 、A2 、A1和A0接收四位二进制码,输出a~g为高电平有效,可直接驱动共阴极显示器,三个辅助控制端、、,以增强器件的功能,扩大器件应用。
7448的真值表如表8-20所示。
从功能表可以看出,对输入代码0000,译码条件是:灯测试输入和动态灭零输入同时等于1,而对其他输入代码则仅要求=1,这时候,译码器各段a~g输出的电平是由输入代码决定的,并且满足显示字形的要求。
图8-51 7448引脚图表8-20 7448功能表灯测试输入低电平有效。
当 = 0时,无论其他输入端是什么状态,所有输出a~g均为1,显示字形8。
该输入端常用于检查7448本身及显示器的好坏。
动态灭零输入低电平有效。
当=1,,且输入代码时,输出a~g均为低电平,即与0000码相应的字形0不显示,故称“灭零”。
利用=1与= 0,可以实现某一位数码的“消隐”。
灭灯输入/动态灭零输出是特殊控制端,既可作输入,又可作输出。
当作输入使用,且= 0时,无论其他输入端是什么电平,所有输出a~g均为0,字形熄灭。
作为输出使用时,受和控制,只有当,,且输入代码时,,其他情况下。
该端主要用于显示多位数字时多个译码器之间的连接。
【例8-13】七段显示器构成两位数字译码显示电路如图8-52所示。
当输入8421BCD码时,试分析两个显示器分别显示的数码范围。
图8-52 两位数字译码显示电路解:图8-52所示的电路中,两片7448的均接高电平。
由于7448(1)的,所以,当它的输入代码为0000时,满足灭零条件,显示器(1)无字形显示。
7448(2)的,所以,当它的输入代码为0000时,仍能正常显示,显示器(2)显示0。
而对其他输入代码,由于,译码器都可以输出相应的电平驱动显示器。
最全的LED引脚《七段共阳+共阴数码管引脚图》四位数码管引脚图

3l a《七段数码管引脚图》数码管使用条件:a 、段及小数点上加限流电阻c 、使用电流:静态:总电流80mA(每段IomA);动态:平均电流4-5mA 峰 值电流100mA 上面这个只是七段数码管引脚图,其中共阳极数码管引脚图和共阴极的是一样 的,4位数码管引脚图请在本站搜索我也提供了,有问题请到 电子论坛去交流.数码管使用注意事项说明:(1) 数码管表面不要用手触摸,不要用手去弄引角; (2) 焊接温度:2 6 0度;焊接时间:5 S (3) 表面有保护膜的产品,可以在使用前撕下来。
七段数码管引脚图 Bt) DPAECDEFGPP 10 9 7 5 4 2 I 6b 、使用电压:段:根据发光颜色决定;小数点:根据发光颜色决定 A1位七段数码管这类数码管可以分为共阳极与共阴极两种,共阳极就是把所有LED 的阳极连接到 共同接点COm 而每个LED 的阴极分别为a 、b 、c 、d 、e 、f 、g 及dp (小数点); 共阴极则是把所有LED 的阴极连接到共同接点Com 而每个LED 的阳极分别为a 、 b 、c 、d 、e 、f 、g 及dp (小数点),如下图所示。
图中的 8个LED 分别与上面 那个图中的A~DP 各段相对应,通过控制各个 LED 的亮灭来显示数字。
共阳7 6 4 21JW 氐加7 6 4 2 1½⅛et那么,实际的数码管的引脚是怎样排列的呢?对于单个数码管来说,从它的正面看进去,左下角那个脚为1脚,以逆时针方向依次为1~10脚,左上角 那个脚便是10脚了,上面两个图中的数字分别与这10个管脚一一对应。
注意,3脚和8脚是连通的,这两个都是公共脚。
1、 4位七段数码管还有一种比较常用的是四位数码管,内部的 4个数码管共用a~dp 这8 根数据线,为人们的使用提供了方便,因为里面有4个数码管,所以它有4个公 共端,加上a~dp ,共有12个引脚,下面便是一个共阴的四位数码管的内部结构 图(共阳的与之相反)。
4位七段数码管引脚图

四位七段数码管引脚图内部的四个数码管共用a~dp这8根数据线,为人们的使用提供了方便,因为里面有四个数码管,所以它有四个公共端,加上a~dp,共有12个引脚,下面便是一个共阴的四位数码管的内部结构图(共阳的与之相反)。
引脚排列依然是从左下角的那个脚(1脚)开始,以逆时针方向依次为1~12脚,下图中的数字与之一一对应。
4位SM410281K-12P 4阳红0.28寸长×宽×高-32.2×10×6mm 12-9-8-6公共脚A-11 B-7 C-4 D-2 E-1 F-10 G-5 DP-3SM420361K-12P 4阴红0.36寸长×宽×高-30.1×14.1×7.3mm 12-9-8-6公共脚 A-11 B-7 C-4 D-2 E-1 F-10 G-5 DP-3SM410361K-12P 4阳红0.36寸长×宽×高-30.1×14.1×7.3mm 12-9-8-6公共脚 A-11 B-7 C-4 D-2 E-1 F-10 G-5 DP-3SM410401K-12P 4阳红0.4寸长×宽×高-40.5×16×7mm 12-9-8-6公共脚 A-11 B-7 C-4 D-2 E-1 F-10 G-5 DP-3SM420561K-12P 4阴红0.56寸长×宽×高-50.4×19×8mm 12-9-8-6公共脚A-11 B-7 C-4 D-2 E-1 F-10 G-5 DP-3SM410561K-12P 4阳红0.56寸长×宽×高-50.4×19×8mm 12-9-8-6公共脚A-11 B-7 C-4 D-2 E-1 F-10 G-5 DP-3。
七段数码管动态显示控制

实验二七段数码管动态显示控制一、实验目的利用AT89S52和使用两位数码管显示器,循环显示两位数00-99。
其中P2.0和P2.1端口分别控制数码管的个位和十位的供电,当相应的端口变成低电平时,驱动相应的三极管会导通,+5V通过驱动三极管给数码管相应的位供电,这时只要P3口送出数字的显示代码,数码管就能正常显示数字。
二、实验要求1、使用两位数码管显示器,循环显示两位数00-99;2、具有电源开关和指示灯,有复位键;3、数码管动态显示,即扫描方式,每一位每间隔一段时间扫描一次。
字符的亮度及清晰度与每位点亮的停留时间和每位显示的时间内轮换导通次数有关。
三、实验电路四、实验器材AT89S52;动态扫描显示;共阳极数码管;电阻五、实验原理说明图1 AT89S52引脚图图2 共阳极七段数码管引脚图1AT89S52引脚图,说明如下:按照功能,AT89S52的引脚可分为主电源、外接晶体振荡或振荡器、多功能I/O 口、控制和复位等。
1.多功能I/O口AT89S52共有四个8位的并行I/O口:P0、P1、P2、P3端口,对应的引脚分别是P0.0 ~ P0.7,P1.0 ~ P1.7,P2.0 ~ P2.7,P3.0 ~ P3.7,共32根I/O线。
每根线可以单独用作输入或输出。
①P0端口,该口是一个8位漏极开路的双向I/O口。
在作为输出口时,每根引脚可以带动8个TTL输入负载。
当把“1”写入P0时,则它的引脚可用作高阻抗输入。
当对外部程序或数据存储器进行存取时,P0可用作多路复用的低字节地址/数据总线,在该模式,P0口拥有内部上拉电阻。
在对Flash存储器进行编程时,P0用于接收代码字节;在校验时,则输出代码字节;此时需要外加上拉电阻。
②P1端口,该口是带有内部上拉电阻的8位双向I/O端口,P1口的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。
对端口写“1”时,通过内部的上拉电阻把端口拉到高电位,此时可用作输入口。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《EDA技术综合设计》课程设计报告报告题目:计数器7段数码管控制接口技术作者所在系部:作者所在专业:作者所在班级:作者姓名:作者学号:指导教师姓名:完成时间:内容摘要掌握VHDL语言基本知识,并熟练运用VHDL语言来编写程序,来下载实践到硬件上,培养使用设计综合电路的能力,养成提供文档资料的习惯和规范编程的思想。
利用VHDL语言设计一个七段数码管控制引脚,在时钟信号的控制下,使6位数码管动态刷新显示十进制计数器及其进位,十二进制计数器,四位二进制可逆计数器,六十进制计数器的计数结果,这期间需要seltime分频器来动态的给各个计数器分配数码管,并显示数字的变化。
关键词:VHDL语言编程七段数码管控制引脚芯片目录一概述 (1)二方案设计与论证 (1)三单元电路设计与参数计算 (1)3.1数码管译码器 (1)3.2 十进制计数器 (2)3.3六十进制计数器 (3)3.4四位二进制可逆计数器 (5)3.5时间数据扫描分时选择模块 (6)3.6顶层文件 (8)四总的原理图 (9)五器件编程与下载 (9)六性能测试与分析(要围绕设计要求中的各项指标进行) (10)七实验设备 (10)八心得体会 (10)九参考文献 (10)课程设计任务书课题名称7段数码管控制引脚完成时间2011.12.12指导教师胡辉职称副教授学生姓名庄仲班级B09212 总体设计要求和技术要点通过本课程的学习使学生掌握可编程器件、EDA开发系统软件、硬件描述语言和电子线路设计与技能训练等各方面知识;提高工程实践能力;学会应用EDA技术解决一些简单的电子设计问题。
具体要求:1.设计一个共阴7段数码管控制接口,在硬件时钟电路的基础上,采用分频器,输出一个1S的时钟信号,同时显示2、3、4所要求的计数器。
2.设计一个带使能输入、进位输出及同步清0的增1十进制计数器。
3.设计一个带使能输入及同步清0的六十进制同步加法计数器;4.设计一个四位二进制可逆计数器;工作内容及时间进度安排第16周:周一、周二:设计项目的输入、编译、仿真周三:器件编程下载与硬件验证周四:成果验收与总结周五:撰写课程设计总结报告课程设计成果把编写好的程序下载到试验箱,使数码管能够按照编写的程序显示出正确的结果,实验成功。
一、概述设计一个共阴7段数码管控制接口,在硬件时钟电路的基础上,采用分频器,输出一个1S的时钟信号。
一个带使能输入、进位输出及同步清0的增1十进制计数器。
一个带使能输入及同步清0的六十进制同步加法计数器和一个四位二进制可逆计数器。
要求:在时钟信号的控制下,使6位数码管动态刷新显示上述计数器的计数结果。
二、方案设计与论证首先VHDL语言编写底层文件和三个计数器的程序,再编写分频器和数码管的程序,最后用例化语句编写顶层文件,分别都调试在确认无误后把顶层文件下载到试验箱,连接导线,完成后实现在时钟信号的控制下,6位数码管动态刷新显示三个计数器的技术结果。
三、单元电路设计1.数码管译码器程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity deled isport(num:in std_logic_vector(3 downto 0);led:out std_logic_vector(6 downto 0));end deled;architecture fun of deled isbegin-- abcdefgled<="1111110"when num="0000"else"0110000"when num="0001"else"1101101"when num="0010"else"1111001"when num="0011"else"0110011"when num="0100"else"1011011"when num="0101"else"1011111"when num="0110"else"1110000"when num="0111"else"1111111"when num="1000"else"1111011"when num="1001"else"1110111"when num="1010"else"0011111"when num="1011"else"1001110"when num="1100"else"0111101"when num="1101"else"1001111"when num="1110"else"1000111"when num="1111";end fun;原理图2.十进制计数器程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity cnt10 isport(clk,clr,en:in std_logic;co:out std_logic;q:buffer std_logic_vector(3 downto 0));end cnt10;architecture behave of cnt10 isbeginprocess(clk,clr,en)beginif(en='0')then q<="0000";elsif(clk'event and clk='1')then if(clr='1')then q<="0000";elsif(q=9)then q<="0000";co<='1';else q<=q+1;co<='0';end if;end if;end process;end behave;原理图仿真波形图3.六十进制计数器程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY cnt60 ISPORT(clk,clr,en:IN STD_LOGIC;q:OUT STD_LOGIC_VECTOR(7 DOWNTO 0));END cnt60;ARCHITECTURE behave OF cnt60 ISSIGNAL qh,ql:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINPROCESS(clk,clr,en)BEGINIF(en='1')THEN ql<="0000";qh<="0000";ELSIF(clk'event and clk='1')THENIF(clr='1')THEN ql<="0000";qh<="0000"; ELSIF(ql=9)THEN ql<="0000";IF(qh=5)THEN qh<="0000";ELSE qh<=qh+1;END IF;ELSE ql<=ql+1;END IF;END IF;q<=qh&ql;END PROCESS;END behave;原理图波形图4.四位二进制可逆计数器程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity kn4 isport(clk,clr,plus_sub:in std_logic;q:buffer std_logic_vector(3 downto 0));end kn4;architecture behave of kn4 isbeginprocess(clk,clr,plus_sub)beginif(clk'event and clk='1')thenif(clr='1')then q<="0000";elsif(plus_sub='1')thenif(q=15)then q<="0000";else q<=q+1;end if;elsif(plus_sub='0')thenif(q=0)then q<="1111";else q<=q-1;end if;end if;end if;end process;end behave;原理图波形图5.时间数据扫描分时选择模块程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;use ieee.std_logic_arith.all;entity seltime isport(clk,reset,ci:in std_logic;Kn4,cnt10:in std_logic_vector(3 downto 0);cnt60:in std_logic_vector(7 downto 0);daout:out std_logic_vector(3 downto 0); dp:out std_logic;sel:out std_logic_vector(2 downto 0)); end seltime;architecture fun of seltime issignal count:std_logic_vector(2 downto 0);beginsel<=count;process(clk,reset)beginif(reset='0')thencount<="000";elsif(clk'event and clk='1')then if(count>="101")thencount<="000";elsecount<=count+1;end if;end if;case count iswhen"000"=>daout<=cnt10(3 downto 0);dp<='0';when"001"=>daout(3 downto 1)<="000";daout(0)<=ci;dp<='0';when"010"=>daout<=kn4(3 downto 0);dp<='0';when"011"=>daout<=cnt60(7 downto 4);dp<='0';when others=>daout<=cnt60(3 downto 0);dp<='0';end case;end process;end fun;原理图6.顶层文件程序library ieee;use ieee.std_logic_1164.all;entity ss_top isport(clk,clr,en,plus_sub,clkdsp:in std_logic;a,b,c,d,e,f,g,dpout:out std_logic;sel:out std_logic_vector(2 downto 0));end ss_top;architecture one of ss_top iscomponent cnt60port(clk,clr,en:in std_logic;q:out std_logic_vector(7 downto 0));end component;component kn4port(clk,clr,plus_sub:in std_logic;q:buffer std_logic_vector(3 downto 0));end component;component cnt10port(clk,clr,en:in std_logic;co:out std_logic;q:buffer std_logic_vector(3 downto 0));end component;component deledPORT(num:in std_logic_vector(3 downto 0);led:out std_logic_vector(6 downto 0));end component;component seltimeport(clk,reset,ci:in std_logic;cnt60:in std_logic_vector(7 downto 0);kn4:in std_logic_vector(3 downto 0);cnt10:in std_logic_vector(3 downto 0); dp:out std_logic;daout:out std_logic_vector(3 downto 0);sel:out std_logic_vector(2 downto 0));end component;signal cnt60_out:std_logic_vector(7 downto 0);signal kn4_out:std_logic_vector(3 downto 0);signal cnt10_out:std_logic_vector(3 downto 0);signal cnt10_co:std_logic;signal ledout:std_logic_vector(6 downto 0);signal seltime_out:std_logic_vector(3 downto 0);Begina<=ledout(6);b<=ledout(5);c<=ledout(4);d<=ledout(3);e<=ledout(2);f<=ledout(1);g<=ledout(0);u1:deled port map(num=>seltime_out,led=>ledout);u2:cnt10 port map(clk=>clk,clr=>clr,en=>en,co=>cnt10_co,q=>cnt10_out);u3:cnt60 port map(clk=>clk,clr=>clr,en=>en,q=>cnt60_out);u4:kn4 port map(clk=>clk,clr=>clr,plus_sub=>plus_sub,q=>cnt16_out);u5:seltimeport map(clk=>clkdsp,reset=>clr,ci=>cnt10_co,cnt60=>cnt60_out,kn4=>kn4_out,cnt10=>cnt10_out,daout=>seltime_out,dp=>dpout,sel=>sel);end one;四、总的原理图五、器件编程与下载用VHDL语言编译四种计数器的、译码器和分时器的程序,然后把他们用例化语句编译成顶层文件,仿真成功以后下载到试验箱通过数码管显示出结果,试验成功。