设计报告课程名称电子技术基础I任课教师设计题目8位十进制数动态扫描显示控制电路班级8位十进制数数码动态扫描电路设计简介:所谓动态扫描显示,就是让各位LED按照一定的顺序轮流地发光显示。只要每秒扫描次数大于24次以上,就观察不到闪烁现象,人眼看起来很稳定。静态扫描显示与动态显示相比,有显著降低LED功耗,大大减少LED的外部引线等优点。目前动态扫描显示技术已经被广泛应用于新型数字仪表、智能仪器和智能显示屏中。本次课程实践中运用QuartusII软件,采用VHDL文本设计和原理图相结合的层次化方式实现数码8位动态扫描显示电路设计。首先,分别用VHDL语言编写8位数码扫描显示电路程序和分频器程序,作为底层文件;顶层文件用原理图的设计方法,调用底层文件生成的符号,从而实现动态扫描显示。用VHDL设计一个8位数码扫描显示电路,利用QuartusII9.0进行编辑输入、编译及时序仿真。其中,由于分频器的分频系数过大时,在仿真波形上很难看出波形的变化,如本设计是从100MHz分频到1KHz,分频系数为一万,所以可以通过改变减小分频系数,如改为10分频,就得到变化的波形,来验证数码动态扫描显示电路设计的正误。一、工作原理1、8位动态扫描显示的工作原理:输入信号:时钟信号CLK。输出控制信号:段控制信号SG[6..0];位控制控制信号BT[7..0]。8位数码管,其中每个数码管的8个段h、g、f、e、d、c、b、a(h是小数点)都分别连接在一起,8个数码管分别由8个选通信号k1~k8来选择。被选通的数码管显示数据,其余关闭。如在某一时刻,k3为高电平,其余选通信号为低电平,这时仅为k3对应的数码管显示来自段信号端的数据,而其他7个数码管呈现关闭状态。根据这种电路状况,如果希望在8个数码管显示希望的数据,就必须使得8个选通信号k1~k8分别被选通,与此同时,在段信号输入口加上希望在该对应数码管上显示的数据,于是随着选通信号的扫变,就能实现扫描显示的目的。扫描显示程序中CLK是扫描时钟;SG为7段控制信号,由高到低为分别接g、f、e、d、c、b、a7个段;BT是位选控制信号,接下图(1)中的8个位选通信号:k1、k2⋯k8。程序中CNT8是一个3位计数器,作扫描计数信号,有进程P2生成;进程P3是7断译码查表输出程序,进程P1是对8个数码管选通的扫描程序,例如当CNT8等于“010”时,K3对应的数码管被选通,同时,H被赋值3,再有进程P3译码输出“1001111”,显示在数码管上即为“3”;当CNT8扫变时将能在8个数码管上显示数据:12345678。图(1)8位数码电路2、七段数码显示译码器的原理:7段数码是纯组合电路。通常的小规模专用IC,如74或4000系列的器件只能作十进制BCD码译码,然而数字系统中的数据处理和运算都是二进制的,所以输出表达都是十六进制的。为了满足十六进制数的译码显示,最方便的方法就是利用VHDL译码程序在FPGA/CPLD中来实现。注意,这里没有考虑表示小数点的发光管,如果要考虑需要增加h段,并且段输出SG[6..0]改为SG[7..0]。本实验采用共阳数码管,其电路图见下图(2)图(2)共阴和共阳数码管及其电路代表数据输入码输入码g~a代表数据输入码输入码g~a000001000000810000000000100011111001910010010000200100100100A10100001000300110011000B10110000011401000011001C11001000110501010010010D11010000110601100000010E11100000110701111111000F11110001110图(3)译码器真值表3、分频器的工作原理:分频器的原理也就是计数器,对时钟进行偶数分频,使占空比为50%。只要使用一个计数器,在计数器的前一半时间使输出为高电平,在计数器的后一半时间使输出为低电平,即可得到偶分频时钟。二、功能模块1.8位数码扫描电路模块:CLK为时钟信号,SG为段控制信号,BT为位控制信号。功能是进行8位数码管的控制和7段数码显示的控制。CLKSG[6..0]BT[7..0]smdlinst22.分频器模块:CLKIN时钟信号输入,CLKOUT时钟信号输出。功能是对时钟信号进行分频。CLKINCLKOUTfenpinginst23.LED显示模块原理:LED有段码和位码之分,所谓段码就是让LED显示“8.”的八位数据,一般情况下要通过一个译码电路,将输入的4位2进制数转换为与LED显示对应的8位段码。位码也就是LED的显示使能端,对于共阳极的...