数码管动态显示原理求助

分享给朋友:通用代码: <input id="link4" type="text" class="form_input form_input_s" value="" />复 制flash地址: 复 制html代码: <input type="text" class="form_input form_input_s" id="link3" value="" />复 制分享视频到站外获取收益&&手机扫码分享视频二维码2小时内有效数码管动态显示下载至电脑扫码用手机看用或微信扫码在手机上继续观看二维码2小时内有效数码管动态显示扫码用手机继续看用或微信扫码在手机上继续观看二维码2小时内有效,扫码后可分享给好友没有优酷APP?立即下载请根据您的设备选择下载版本
药品服务许可证(京)-经营-
节目制作经营许可证京字670号
请使用者仔细阅读优酷、、
Copyright(C)2017 优酷
不良信息举报电话:您的位置: >
数码管驱动电路的作用主要是通过利用单片机控制LED数码管(发光二极管)电路,以实现数码管LED屏幕数字输出的动态显示效果。本文为您介绍数码管驱动电路的作用、分类及驱动电路设计、原理图。
数码管的分类:
(1)按照数码管段数分类
数码管是一种半导体发光器件,其基本单元是发光二极管。它按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元(也就是多一个小数点显示);
(2)按照数码管数字显示分类
按能显示多少个&8&可分为1位、2位、4位等等数码管;
(3)按照数码管连接方式分类
按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。
共阳数码管与共阴数码管:
其中,共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。共阳数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。当某一字段的阴极为高电平时,相应字段就不亮。
而共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码管。共阴数码管在应用时应将公共极COM接到地线GND上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮。当某一字段的阳极为低电平时,相应字段就不亮。
共阳数码管驱动电路示例:
并行LED数码管静态显示电路(共阳)
共阴数码管驱动电路示例:
串行LED数码管动态扫描显示电路(共阴)
更多共阳数码管与共阴数码管驱动电路,请点击如下链接浏览:
下面提供一种数码管驱动电路设计,可以实现led数码管数字0~9控制输出。
工作原理:
如图1所示,电路由与非门74LS00、数码管驱动芯片74LS247组成。10个按键组成输入电路,经过与非门电路编码后,输入数码管驱动芯片,驱动数码管显示相应的按键号。
设计按键编码电路时,先写出真值表,由真值表可写出下式:
A={I1 &I3 &I5 &I7 & I9 }(大括号中,每个因子取反,一起共同取反) = I1+I3 +I5 +I7 +I9
B={I3 &I4 &I6 & I7}(大括号中,每个因子取反,然后一起共同取反) = I3+I4+I6+I7
C={I4 &I5 &I6 & I7}(大括号中,每个因子取反,然后一起共同取反) = I4 +I5 +I6+I7
D={I8 & I9 }(大括号中,每个因子取反,然后一起共同取反) = I8+I9
为了使电源电压不超过数码管承受电压范围,电源串联4个二极管后,加到数码管上,这样做,可以节省元件。
电路原理图
非常好我支持^.^
不好我反对
相关阅读:
( 发表人:steve )
评价:好评中评差评
技术交流、我要发言
发表评论,获取积分! 请遵守相关规定!提 交
Copyright &
.All Rights Reserved实验四七段数码管的动态扫描显示;专业:电子信息科学与技术姓名:高晓骏学号:201;一.实验目的;(1)进一步熟悉QuartusII软件进行FPG;(2)掌握利用宏功能模块进行常用的计数器,译码器;(2)QuartusII开发工具软件三.实验原理;实验板上常用4位联体的共阳极7段数码管,其接口电;当向数码管发送字形码时,所有数码管都接收到相同的;在轮流点亮扫描
实验四七段数码管的动态扫描显示
专业:电子信息科学与技术姓名:高晓骏学号:0
一.实验目的
(1)进一步熟悉Quartus II软件进行FPGA设计的流程;
(2)掌握利用宏功能模块进行常用的计数器,译码器的设计; (3)学习和了解动态扫描数码管的工作原理的程序设计方法; 二.实验器材 (1)PC机
(2)Quartus II开发工具软件 三.实验原理
实验板上常用4位联体的共阳极7段数码管,其接口电路是把所有数码管的8个笔划段a-h同名端连在一起,而每一个数码管由一个独立的公共极COM端控制。
当向数码管发送字形码时,所有数码管都接收到相同的字形码时,但究竟是那个数码管亮,取决于COM端,这一端是由I/O控制的,所以就可以自行决定何时显示哪一位。动态扫描即采用分时方法,轮流控制各个LED轮流点亮。
在轮流点亮扫描过程中,每一位显示器的点亮时间是极为短暂的,但由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上每个显示器并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感。
四、实验要求:
实现显示的十进制计数器。
五.实验内容及步骤 1.建立工程
建立名为leddisplay的工程,并建立顶层图。
2.设计计数时钟
设计一个分频器,对50MHz分频输出到计数器,让计数器以较慢的速度递增。 moduleint_div(clk,div_out);
outputregdiv_ reg [31:0] clk_
parameter CLK_FREQ = &#39;D50_000_000; //系统时钟50MHz parameter DCLK_FREQ = &#39;D10;
//输出频率10/2Hz always@(posedgeclk) begin
if(clk_div& (CLK_FREQ/DCLK_FREQ))
clk_div&= clk_div + 1;
clk_div&= 0;
div_out&= ~div_
输入完成后,将该文件设为顶层实体,该命令在Project-&Set as top-level Entity。
分析该设计文件:执行工具栏处的“Start Analysis &Synthesis命令按钮,开始分析综合,此步骤在这里用于检查设计错误。
分析成功后要生成一个分频器的元件符号,执行File-&Create Symbol files for current file,开始建立该文件的元件符号。
3.调用宏功能模块设计计数器 module cnt10000(qout,clr,clk);
output[15:0] reg[15:0]
always@(posedgeclk)
if(!clr) qout[15:0]=0;
else if(qout[3:0]==9)
qout[3:0]=0;
if(qout[7:4]==9)
qout[7:4]=0;
if(qout[11:8]==9)
qout[11:8]=0;
if(qout[15:12]==9) qout[15:12]=0;
elseqout[15:12]=qout[15:12]+1&#39;b1;
elseqout[11:8]=qout[11:8]+1&#39;b1;
elseqout[7:4]=qout[7:4]+1&#39;b1;
elseqout[3:0]=qout[3:0]+1&#39;b1; endmodule
输入完成后,将其设为顶层实体,检验后生成元件符号。 4.数码管扫描显示程序设计(不含小数点)
modulesegmain(clk,reset_n,datain,seg_data, seg_com); inputreset_n;
input [15:0] output [7:0] seg_ output [3:0] seg_
reg [3:0] seg_ reg [7:0] seg_ reg [3:0] bcd_ reg [26:0]
always@(posedgeclk) begin
if (!reset_n) count &= 0;
count &= count + 1; end
always@(count[14:13] or datain) begin
case(count[14:13])
2&#39;b00:
bcd_led = datain[3:0];
seg_com = 4&#39;b1110;//
2&#39;b01:
bcd_led = datain[7:4];
seg_com = 4&#39;b1101;//
2&#39;b10:
bcd_led = datain[11:8];
seg_com = 4&#39;b1011;//
2&#39;b11:
bcd_led = datain[15:12];
seg_com = 4&#39;b0111;//
endcase end
always@(seg_com or bcd_led) begin
case(bcd_led)
4&#39;h0: seg_data = 8&#39;hc0;//0
4&#39;h1: seg_data = 8&#39;hf9;//1
4&#39;h2: seg_data = 8&#39;ha4;//2
4&#39;h3: seg_data = 8&#39;hb0;//3
4&#39;h4: seg_data = 8&#39;h99;//4
4&#39;h5: seg_data = 8&#39;h92;//5
4&#39;h6: seg_data = 8&#39;h82;//6
4&#39;h7: seg_data = 8&#39;hf8;//7
4&#39;h8: seg_data = 8&#39;h80;//8
4&#39;h9: seg_data = 8&#39;h90;//9
4&#39;ha: seg_data = 8&#39;h88;//a
4&#39;hb: seg_data = 8&#39;h83;//b
4&#39;hc: seg_data = 8&#39;hc6;//c
4&#39;hd: seg_data = 8&#39;ha1;//d
4&#39;he: seg_data = 8&#39;h86;//e
4&#39;hf: seg_data = 8&#39;h8e;//f
default: seg_data = 8&#39;h80;//0
endcase end
输入完成后,将其设为顶层实体,检验后生成元件符号。 5.设计完整的顶层
返回顶层原理图,并注意重新将顶层原理图设为顶层实体。
双击顶层图空白的地方,弹出symbol对话框,展开Libraries栏的Project库,可看到上述步骤建立的一些元件符号。
按OK,在图纸上空白地方点击即可输入相应的元件,添加其它元件,完成下图
6.设置芯片和管脚。设置芯片型号、配置芯片型号等内容。
参照以下文件配置芯片管脚,并运行该tcl脚本。 #Setup.tcl ------ Setup pin setting for EP3C25-V5 main board
set_global_assignment -name RESERVE_ALL_UNUSED_PINS &AS INPUT TRI-STATED&
set_global_assignment -name ENABLE_INIT_DONE_OUTPUT OFF
set_location_assignment PIN_149 -to clk
set_location_assignment PIN_90 -to reset
#seg7led ------ 78LED
set_location_assignment PIN_148 -to 78ledcom[0] set_location_assignment PIN_147 -to 78ledcom[1] set_location_assignment PIN_160 -to 78ledcom[2] set_location_assignment PIN_159 -to 78ledcom[3] # set_location_assignment PIN_162 -to 78ledcom[4] # set_location_assignment PIN_161 -to 78ledcom[5] # set_location_assignment PIN_166 -to 78ledcom[6] # set_location_assignment PIN_164 -to 78ledcom[7]
set_location_assignment PIN_145 -to 78leddata[0] set_location_assignment PIN_143 -to 78leddata[1] set_location_assignment PIN_137 -to 78leddata[2] set_location_assignment PIN_139 -to 78leddata[3] set_location_assignment PIN_144 -to 78leddata[4] set_location_assignment PIN_146 -to 78leddata[5] set_location_assignment PIN_135 -to 78leddata[6] set_location_assignment PIN_142 -to 78leddata[7] 7.编译
执行菜单命令Project-&Set as top-level Entity,将顶层图设为当前顶层实体,然后编译。
(1)下载设置:使用下载线下载配置文件到FPGA。
(2)下载完毕后可看到实验现象:数码管实现显示的十进制计数器。
六.思考题
count[14:13] or datain是什么意思?
这条语句是判断已经计数的状态,并将相应的数码管变亮,选择扫描显示数据,count[14:13]大约1ms改变一次,而count[26:25]则闪烁的时间更短,人眼无法看清,故出现不正常显示的现象。 七.实验小结
(1)这是我们这学期数字电路EDA综合实验的第一次实验报告,在前几次的实验中,已经熟悉了QuartusII设计软件的基本功能、原理图输入和HDL输入方法、功能仿真、综合、配置与编程的设计过程,尤其是针对QuartusII的使用初步花了几节课的时间,毕竟这个软件对于我们来说是很陌生的。
(2)在前面的实验中,学习QuartusII的基础实验中,课本上的介绍是很详细的,每一个操作步骤都是有截图的,所以跟着步骤一步一步的,只要小心谨慎,是不会出现错误的。
(3)这次的实验是对前几次的实验的整合,在LED的按键控制的基础上进行的实验,在我做实验的工程中,查找错误是最麻烦的琐碎的,往往错误源于很小的失误,比如忘记建立顶层图、调用宏功能模块设计计数器时选错选项等等。这些错误看似微不足道,但是检查起来异常麻烦,所以我们在做实验的时候一定要小心谨慎,切记三心二意。
(4)通过这一次的实验练习,希望为以后打下坚实的基础。
包含各类专业文献、中学教育、专业论文、生活休闲娱乐、文学作品欣赏、应用写作文书、高等教育、15实验四 七段数码管的动态扫描显示等内容。 
 实验四 七段数码管的动态扫描显示一、 实验目的 1.进一步熟悉 QuartusII 软件进行 FPGA 设计的流程; 2.掌握利用宏功能模块进行常用的计数器,译码器的设计; 3....  实验四 七段数码管显示实验一、实验目的掌握数码管显示数字的原理。 二、实验...通过本次试验, 掌握了数码管显示的程序流程了解了动态扫描显示的程序执行过程。 ...  实验四 七段数码管的动态扫描显示 动态扫描显示与视觉暂留 1. 设计计数时钟设计一个分频器,对 50MHz 分频输出到计数器,让计数器以 较慢的速度递增。 module ...  八位七段数码管动态显示电路的设计一、 实验目的 1、 了解数码管的工作原理。...在实验中时,数字时钟选择 1024HZ 作为扫描时钟,用四个拨动开关做为输入,当四 ...  二、实验内容 1.用 Proteus 设计一 8 位数码管动态扫描显示电路。要求利用 P0 口作数码管 的段选线,P1.0~P1.2 与 74LS138 译码器的 3 个输入端相连,...  实验四 数码管的动态显示实验_电子/电路_工程科技_专业资料。实验四 数码管的动态...可以通过依次选通一位 7 段数 码管并通过 P0 端口送出显示数据。由于人眼...  接口设计及程序编写 二、实验设备 1.仿真器 2.单片机最小系统教学实验模块 3.动态数码管显示模块 三、实验要求使 8 位数码管显示“0 1 2 3 4 5 6 7”...  数码管动态扫描显示实验_电子/电路_工程科技_专业资料。3 0 p VCC C F 1 ...对应数据线 对应显示段 显示数字 0 1 2 3 4 5 6 7 8 9 段码 0CFH ...更多频道内容在这里查看
爱奇艺用户将能永久保存播放记录
过滤短视频
暂无长视频(电视剧、纪录片、动漫、综艺、电影)播放记录,
使用您的微博帐号登录,即刻尊享微博用户专属服务。
使用您的QQ帐号登录,即刻尊享QQ用户专属服务。
使用您的人人帐号登录,即刻尊享人人用户专属服务。
按住视频可进行拖动
把视频贴到Blog或BBS
当前浏览器仅支持手动复制代码
视频地址:
flash地址:
html代码:
通用代码:
通用代码可同时支持电脑和移动设备的分享播放
收藏成功,可进入查看所有收藏列表
方式1:用手机看
用爱奇艺APP或微信扫一扫,在手机上继续观看:
手把手教你学51单片机-06-中断与数码管动态显示
方式2:一键下载至手机
限爱奇艺安卓6.0以上版本
使用微信扫一扫,扫描左侧二维码,下载爱奇艺移动APP
其他安装方式:手机浏览器输入短链接http://71.am/udn
下载安装包到本机:&&
设备搜寻中...
请确保您要连接的设备(仅限安卓)登录了同一爱奇艺账号 且安装并开启不低于V6.0以上版本的爱奇艺客户端
连接失败!
请确保您要连接的设备(仅限安卓)登录了同一爱奇艺账号 且安装并开启不低于V6.0以上版本的爱奇艺客户端
部安卓(Android)设备,请点击进行选择
请您在手机端下载爱奇艺移动APP(仅支持安卓客户端)
使用微信扫一扫,下载爱奇艺移动APP
其他安装方式:手机浏览器输入短链接http://71.am/udn
下载安装包到本机:&&
爱奇艺云推送
请您在手机端登录爱奇艺移动APP(仅支持安卓客户端)
使用微信扫一扫,下载爱奇艺移动APP
180秒后更新
打开爱奇艺移动APP,点击“我的-扫一扫”,扫描左侧二维码进行登录
没有安装爱奇艺视频最新客户端?
爸爸去哪儿2游戏 立即参与
手把手教你学51单片机-06-中断与数码管动态显示
播放量数据:
312人已订阅
你可能还想订阅他们:
{{#needAdBadge}} 广告{{/needAdBadge}}
&正在加载...
您使用浏览器不支持直接复制的功能,建议您使用Ctrl+C或右键全选进行地址复制
安装爱奇艺视频客户端,
马上开始为您下载本片
5秒后自动消失
&li data-elem="tabtitle" data-seq="{{seq}}"& &a href="javascript:void(0);"& &span>{{start}}-{{end}}&/span& &/a& &/li&
&li data-downloadSelect-elem="item" data-downloadSelect-selected="false" data-downloadSelect-tvid="{{tvid}}"& &a href="javascript:void(0);"&{{pd}}&/a&
选择您要下载的《
色情低俗内容
血腥暴力内容
广告或欺诈内容
侵犯了我的权力
还可以输入
您使用浏览器不支持直接复制的功能,建议您使用Ctrl+C或右键全选进行地址复制数码管的静态显示与动态显示
数码管的静态显示与动态显示
图1 数码管段码分布及显示示例
按照工作方式, 数码管驱动可以分为静态显示和动态扫描。所谓静态显示, 就是每一个数码管的段码都要独占具有锁存功能的输出口, CPU把要显示的字码送到输出口上,就可以使数码管显示对应的字符, 直到下一次送出另外一个字码之前, 显示的内容一直不会消失;动态扫描是把所有显示器的8个段码中的A-dp的各个相同段连接在一起, 接到一个公共的输出口上,而数码管的位端分别接在另外的输出口上,通过这两个输出口的两组信号相互作用来产生显示效果。即让各位数码管按照一定顺序轮流显示, 只要扫描频率足够高, 由于人眼的“ 视觉暂留”现象,就能连续稳定的显示。静态显示法的优点是显示稳定、亮度大, 节约CPU时间, 但占有I/O口线较多, 硬件成本高。动态扫描其特点在于能显著降低显示部分成本,大大减少显示接口的连线结构。举例, 静态驱动4位数码管, 需要4x8=32个I/O口, 而动态的驱动位数码管只需要4+8=12个I/O口。
电路图详解
单片机的I/O资源是有限的, 因此如何节省I/O口线而又不影响系统的功能是单片机工程师面临的实际问题。图2采用是串行转并行芯片74HC595和三线一八线译码器实现8位数码管的驱动, 好处是可以节省更多的I/O口线作其他用途。正常驱动8个数码管需要8+8=16根口线, 采用595+138的方式只需要3+3=6根。
图2 数码管显示电路连接图
为了更好地理解电路, 这里简单介绍一下74HC595和74LS138两个芯片的作用。74HC595是一款串行移位输入、8位并行输出的芯片, 内带数据移位寄存器和三态输出锁存器;SER为串行数据输入;SRCLK为移位时钟输入;RCLK为锁存控制输入;QA-QH为数据输出, QH'为向下一片(位)的串行数据输出。74LS138是一个3线一8线的译码器, 低电平有效输出, 因此每个时刻输出端口只有一个是低电平, 其余都是高电平输出, 因此可以驱动共阴极数码管。如果驱动共阳极的数码管还需要做一个非门的转换。最后, 为了增加单片机I/O的输出能力, 在74HC595与数码管之间串接了一个74HC245并行驱动芯片。
从电路图中可以看到, 每个芯片的电源和地附近都接了一个104电容, 这个高频滤波电容, 可以减小电源对IC的影响。注意高频电容的布线, 连线应靠近电源端并尽量粗短, 否则, 等于增大了电容的等效串联电阻, 会影响滤波效果。其实, 不加这个电容也可以, 但万一因为干扰出了问题, 就会很难查找根源, 实际调试电路板的时候就会发现电容的作用非常大的, 而这些恰恰是初学者容易忽略的地方。
关健程序分析
动态扫描需要注意的一个问题, 由于所有数码管的段码接到一个公用的I/O上, 在每个瞬间, 各个位数码管上的段码都是一样的, 要想在不同的位显示不同的信息, 必须用扫描显示的方式, 在一段时间内, 只点亮一个数码管, 其余的都处于关闭状态;下一个时间段内点亮下一个数码管, 其余的都处于关闭状态。如此循环, 造成一个视觉暂留的效果, 当闪烁的频率大于50Hz的时候, 人眼就分辨不出来了, 即各个位上显示的信息就“ 区分”开了。扫描频率过高, 每个位显示的时间太短, 数码管的亮度不够;扫描频率过低, 会有明显的闪烁感。这个时间需要根据不同的硬件电路, 做不同的调整, 而且跟数码管的个数有关, 一般的经验值延时10ms左右。
图3 数码管动态显示流程图
动态扫描过程中, LED显示的亮度同驱动电流、点亮时间和关断时间有关, 调整驱动电流大小和扫描频率, 可以控制LED显示的亮度, 同时稳定显示。这需要在实际的调试过程中不断的尝试, 找到一个最佳临界点!对于尺寸比较大的数码管, 可以在74HC245与数码管之间再串接一个ULN2003(7段)或者ULN2803(8段)达林顿管增加驱动能力。
馆藏&116251
TA的推荐TA的最新馆藏[转]&}

我要回帖

更多关于 fpga数码管动态显示 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信