数码管led显示器控制电路ppt课件_第1页
数码管led显示器控制电路ppt课件_第2页
数码管led显示器控制电路ppt课件_第3页
数码管led显示器控制电路ppt课件_第4页
数码管led显示器控制电路ppt课件_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、专题二. 经典模块设计LED数码管显示控制 电路设计.数码管显示原理数码管的组成:LED数码管是由发光二极管构成的,常用的有8段。数码管的分类:有共阴和共阳极两种。多个LED的阴极连在一同的为共阴极数码管,阳极连在一同的为共阳极数码管。共阴极数码管的公共端接地,阳极a到h接高电平,数码管点亮。共阳极数码管的公共端接电源,阴极a到h接低,数码管点亮。.数码管的段码和位码数码管的位码就是提供应公共端的电平。位码的作用是控制数码管的亮灭。数码管的段码就是提供应a,b,c,d,e,f,g,h的电平。段码的作用是控制数码管显示什么字符。单个数码管需求9个端口来控制。位码段码.举例:位码和段码例1:显示字

2、符“1。共阴极数码管位码应该接低电平。段码按照hgfedcba的顺序, 应该为“00000110。例2:显示字符“A。共阳极数码管位码应该接高电平。段码按照hgfedcba的顺序, 应该为“10001000。.LED数码管显示控制电路静态显示方式动态显示方式.1LED静态显示控制电路静态显示方式将每一个数码管的段码端ah衔接到CPLD/FPGA的IO端口上,公共端接地对于共阴极LED。每个数码管需求8个IO口线,N个数码管共需求N8条IO口线。当CPLD/FPGA有相当多的IO端口资源,并且显示的位数较少时通常为12位,可以直接运用静态显示的方式。.数码管静态显示方式的优点是连线简单,软件编程

3、简单。缺陷是需求耗费大量的IO端口资源。8N.静态显示的方式.CPLD/FPGA驱动LED静态显示译码程序Library ieee;Use ieee.std_logic_1164.all;Use ieee.std_logic_unsigned.all;Use ieee.std_logic_arith.all;Entity display is -共阴极数码管段码译码 port( data: IN std_logic_vector(3 downto 0); seg: OUT std_logic_vector(6 downto 0) -gfedcba );End display;.architec

4、ture a of display isbegin process(data) begin case data is -gfedcba when 0000 = seg seg seg seg seg seg seg seg seg seg seg seg seg seg seg seg seg = 0000000; -全灭 end case; end process;end a;.仿真结果将要显示的数据译成段码在数码管上显示出来。.静态显示运用举例:设计一个4路独立键盘输入电路,读取键盘的键值,并将键值在一位静态共阴极LED数码管中显示出来。输入为时钟信号CLK50MHz,按键形状KEY1,K

5、EY2,KEY3,KEY4。输出为LED数码管的段码SEG6.0。.电路模块 输入信号:clk:时钟,50MHz;reset:复位信号;key1, key2, key3, key4:按键信号输入; 输出信号:SEG6.0:静态LED数码管的段码信号。.分频模块去抖动模块键盘扫描译码模块50MHz.键盘扫描译码模块程序1.-输出1的段码-输出2的段码-输出3的段码-输出4的段码-数码管灯灭.键盘扫描译码模块程序2.keyscan程序:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;use ieee.

6、std_logic_arith.all;entity keyscan is port( clk10hz: IN std_logic; key1, key2, key3, key4: IN std_logic; keyvalue: OUT integer range 0 to 4 );end keyscan;.architecture a of keyscan isbegin process(clk10hz) -100ms begin if(clk10hzevent and clk10hz=1) then if(key1=0) then keyvalue = 1; -输出键值1 elsif(ke

7、y2=0) then keyvalue = 2; -输出键值2 elsif(key3=0) then keyvalue = 3; -输出键值3 elsif(key4=0) then keyvalue = 4; -输出键值4 else keyvalue seg seg seg seg seg scan = 11111110; data scan = 11111101; data scan = 11111011; data scan = 11110111; data scan = 11101111; data scan = 11011111; data scan = 10111111; data

8、scan = 01111111; data scan = 11111111; data seg seg seg seg seg seg seg seg seg seg seg seg seg seg seg seg seg = 0000000; end case; end process;end a;.仿真结果以1KHz频率动态扫描显示,依次输出8个数码管的段码和位码。123456.LED动态显示分位译码电路设计要求:采用动态显示方式,将一个两位数用两个数码管显示出来。一个数码管显示个位,另一个显示十位。.顶层原理图如上图所示,为LED分位译码显示顶层原理图。由fdiv分频模块,cnt计数模块

9、,fenwei分位模块和dispdec显示译码模块四个模块组成。输入为: sysclk:50MHz系统时钟。 num6.0:一个要显示的两位数,099。输出为:SEG【6.0】:7位段码输出。SCAN【7.0】:8位位码输出,每一位分别控制一个数码管的点亮。50MHz1KHz分位模块.LED动态显示分位译码电路程序1. fenwei分位模块Library ieee;Use ieee.std_logic_1164.all;Use ieee.std_logic_unsigned.all;Use ieee.std_logic_arith.all;entity fenwei is port( num: IN integer range 0 to 99; numshi: OUT integer range 0 to 9; numge: OUT integer range 0 to 9 );end fenwei;architecture a of fenwei isbegin numge = num MOD 10; numshi scan = 11111110; data scan =

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论