在静态数码管程序上静态显示不同的数字

更多频道内容在这里查看
爱奇艺用户将能永久保存播放记录
过滤短视频
暂无长视频(电视剧、纪录片、动漫、综艺、电影)播放记录,
使用您的微博帐号登录,即刻尊享微博用户专属服务。
使用您的QQ帐号登录,即刻尊享QQ用户专属服务。
使用您的人人帐号登录,即刻尊享人人用户专属服务。
按住视频可进行拖动
把视频贴到Blog或BBS
当前浏览器仅支持手动复制代码
视频地址:
flash地址:
html代码:
通用代码:
通用代码可同时支持电脑和移动设备的分享播放
收藏成功,可进入查看所有收藏列表
方式1:用手机看
用爱奇艺APP或微信扫一扫,在手机上继续观看:
3 数码管的显示原理、数码管的静态显示
方式2:一键下载至手机
限爱奇艺安卓6.0以上版本
使用微信扫一扫,扫描左侧二维码,下载爱奇艺移动APP
其他安装方式:手机浏览器输入短链接http://71.am/udn
下载安装包到本机:&&
设备搜寻中...
请确保您要连接的设备(仅限安卓)登录了同一爱奇艺账号 且安装并开启不低于V6.0以上版本的爱奇艺客户端
连接失败!
请确保您要连接的设备(仅限安卓)登录了同一爱奇艺账号 且安装并开启不低于V6.0以上版本的爱奇艺客户端
部安卓(Android)设备,请点击进行选择
请您在手机端下载爱奇艺移动APP(仅支持安卓客户端)
使用微信扫一扫,下载爱奇艺移动APP
其他安装方式:手机浏览器输入短链接http://71.am/udn
下载安装包到本机:&&
爱奇艺云推送
请您在手机端登录爱奇艺移动APP(仅支持安卓客户端)
使用微信扫一扫,下载爱奇艺移动APP
180秒后更新
打开爱奇艺移动APP,点击“我的-扫一扫”,扫描左侧二维码进行登录
没有安装爱奇艺视频最新客户端?
爸爸去哪儿2游戏 立即参与
3 数码管的显示原理、数码管的静态显示
播放量数据:
5,208人已订阅
你可能还想订阅他们:
{{#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或右键全选进行地址复制第6课 数码管静态显示
单片机&嵌入式
单片机应用
嵌入式操作系统
学习工具&教程
学习和开发单片机的必备工具
(有问必答)
(带你轻松入门)
电子元件&电路模块
当前位置: >>
>> 浏览文章
第6课 数码管静态显示
1、数码管显示原理
数码管是单片机应用系统中常用的一种显示器件,由于其价格低廉、操作简单,而被广泛的应用于各种数字显示系统中,常见的数码管如图1所示。
根据外观的不同,数码管又为分1位数码管、2位数码管、3位数码管、四位数码管等种类,如图2所示。
但不论是几位一体的数码管,其显示原理都是一样的,都是靠内部发光二极管发光来进行显示的。下面我们以1位数码管为例介绍其显示原理。
&&& 1、数码管显示的原理
数码管内部的电路如图3所示,
图3 数码管内部电路
图3中,显示一个完整的8字,需要7个小段,外加一个小数点,共8段,分别称为a段、b段、c段、d段、e段、f段、g段、dp段,每段内部都集成了一个发光二极管,此时要想让数码管显示数字,我们只需要让相对应的发光二极管发光就可以,例如要想让此数码管显示数字是1,只需要让b、c段的数码管发光,而其它段的数码管熄灭就可以了。
上图中,每个发光二极管的阳极全部引出,分别为a、b、c、d、e、f、g、dp,共8个引脚,而把所有发光二极管的阴极全部接到一起引出一个引脚w,此时我们把a、b、c、d、e、f、g、dp引脚称为数码管的段选引脚,简称段选;而把w称为位选引脚,简称位选。通过单片机让数码管显示数字,就是通过编写程序让数码管内部相应的数码管发光。
数码管根据内部接法的不同又可分为共阴极数码管和共阳极数码管两种,上图中,数码管所有的发光二极管的阴极接在一起,而阳极单独引出,我们称此数码管为共阴极数码管,而还有一种接法是把阳极接在一起,而阴单独引出,这种数码管则称之为共阳极数码管,具体在写程序时应考虑到的是哪一种数码管,共阳极数码管如图4所示。
图4 共阳极数码管
这里需要注意的是,在驱动数码管进行显示时,数码管内部的发光二极管要正常工作大概需要5mA的电流,而单片机的I/O口通常不能提供如些大的电流,此时需要上位电阻或者专用的驱动芯片,如7HHC573等,实验板上即采用的后者,后面会具体讲到。 
因为实验板上的数码管相应引脚在和单片机相连时用到了锁存器,这里介绍一下锁存器相关的一些知识。
锁存器(Latch)是一种对
74HC573为一种数字芯片,按其封装的不同,分为直插和贴片的两种,如图6和图7所示,
&&&&&&&&&&&&&& 图6 直插式锁存器,       图7 贴片式锁存器,
下面先介绍下74HC573的各个引脚功能和真值表,如图8所示,OE为输出使能端(低电平有效),也就是要使该芯片工作,此脚必须为低电平;1D-8D为数据输入端;1Q-8Q为数据输出端;LE为输出控制端。
&&&&&&&&&&&&& 图8 74HC573引脚图       图9 74HC573真值表
图9为74HC573的真值表,真值表可以直观的表示数字芯片的工作特性,也就是要正确的使用数字芯片,必须学会看真值表。在图9中,L表示低电平,H表示高电平,X表示任意电平,Z表示高阻态,即,可以为高电平,也可以为低电平,高或低由与它相连的其它电气状态决定;Q0表示上一次电平状态。
由图9真值表可以看出,当OE为高电平时,无论控制端LE和数据端为什么电平,输出Q都为高阻态,也就是电平未知,此时锁存器处于不可控的状态,而我们使用该芯片肯定是要控制它以完成相应的功能,所以实验板上两块芯片在硬件上均直接接地,相当于直接给低电平。
当OE为低电平时,LE为高时,D和Q同时为H或L;LE为低时,无论D为何种状态,Q都保持上一次的数据状态。也就是说LE为高电平时,Q端的数据随D端数据变化而变化,LE为低电平时,Q端的数据保持为LE端由高电平变为低电平之前Q端的数据状态。
在使用时,我们一般把LE端接单片机的一个引脚,而把数据输入端D接单片机的8个引脚,此时我们就可以通过单片机控制LE端电平的高低和数据端的电平状态来决定锁存器数据输出端的输出状态。
讲到这里,相信大家已经对74HC573基本了解了,锁存器的作用很多,在实验板上主要起到两个作用,一个就是解决驱动问题,这一点前面已经说过,单片机I/O口输出的电流太小,不足以驱动数码管,此时就可以利用锁锁器来实现;再一个就是节约单片机的I/O口,这一点后面会解释到。
2数码管静态显示
明白了显示原理后,我们就可以对数码管进行操作了,让我们先看看一下实验板的原理图。
实验板上的数码管为两个3位一体的数码管,共同组成一个6位8段共阳极数码管,
相同段的发光二极管阴极全部接在一起,引出8个引脚abcdefgdp,分别接到锁存器的数据输出口,而锁存器74hc573的数据输入口直接接到单片机P1口的8信引脚,注意此时P0口同时接了10K的上拉电阻;每一位数码管内部发光二极管阳极接在一起,然后分别引出6个脚w1w2w3w4w5w6,并能过锁存器74hc573接到了单片机P1口的6个脚。两个锁存器的锁存端分别与单片机的P2^6和P2^7相连。
也就是这六位数码管&段选&全部连在一起,而&位选&是可以独立控制的,我们可通过控制位选信号而选择让哪几个数码管发光,具体显示的内容可以通过段选信号进行,但由于所有段选是全部连在一起的,送入所在数码管的段选信号必定相同,所以位选选通的数码管上显示的数字始终一样,数码管的这种显示方式称为静态显示。
下面我们就写一个简单的程序让第一个数码管显示一个8字。先来分析如下:让第一个数码管显示8字,那么别的数码管的位选就要关闭,即只打开第一个数码管的位选。在操作时,我从头先给U2数码管的锁存端一个高电平,然后将数据从单片机的口P0直接送出到锁存器的U2的数据输出端,然后再关闭U2锁存器。由于实验板上的数码管为共阳极,所以位选选通时为高电平,位选关闭时为低电平。即只有W1端对应的数据为1,其它的都为0,因此P0口呆输出的数据0x01;(二进制为)。位选确定后,再确定段选,要显示8,那么只有h段为0,其余段为1,所以用操作U2的方法一样操作U1,让U1数据输出端输出0x7f(二进制为)
程序:单片机显示8
#include&reg52.h&
#define uint unsigned int
#define uchar unsigned char
sbit duan=P2^6;
sbit wei=P2^7;
void main()//第一个数码管显示8
&&&&&& while(1)
&&&&&&&&&&&&& duan=1;
&&&&&&&&&&&&& P0=0x7f;
&&&&&&&&&&&&& duan=0;
&&&&&&&&&&&&& wei=1;
&&&&&&&&&&&&& P0=0
&&&&&&&&&&&&& wei=0;
&&&&&&&&&&&&& while(1);
下面先下载到实验板上看现象。
通过上面的现象我们实现了数码管静态显示的功能,这里大家家可能已经知道,程序中段用了单片机的8个引脚,而位用到了单片机的6个引脚,按理说我们一共需要14个引脚,而因为锁存器的原因,实际上我们只用到了P1口8个脚就实现了,这就是上面讲的锁存器的第二个作用,使用锁存器可以达到节约单片机的I/O口的作用。
【】【】【】【】
上一篇:下一篇:
CopyRight @
单片机教程网
, All Rights Reserved单片机数码管显示原理
查看: 13268|
摘要:   小灯是一种简单的LED,给我们视觉效果只能通过亮和灭来表达简单信息。而这节课我们要来学习一种表达更加明确的器件,数码管。   1、数码管的基本介绍   先给大家提供一张原理图看一下,如图1所示。
图1数码 ...
  小灯是一种简单的LED,给我们视觉效果只能通过亮和灭来表达简单信息。而这节课我们要来学习一种表达更加明确的器件,数码管。
  1、数码管的基本介绍
  先给大家提供一张原理图看一下,如图1所示。
图1&数码管原理图
  这是比较常见的数码管的原理图,我们板子上一共有6只数码管。前边有了LED小灯的学习,数码管学习就会轻松的多了。从图1能看出来,数码管共有a,b,c,d,e,f,g,dp这8个段,而实际上,这8个段每一段都是一个LED小灯,所以数码管就是由8个LED小灯所组成的。我们看一下数码管内部结构图。
图2&数码管结构图
数码管分为共阳数码管和共阴数码管,所谓的共阴数码管就是8只LED小灯的阴极是接在一起的,也就是阴极是公共端,由阳极来控制小灯是否亮灭。同理,共阳数码管就是阳极是接到一起的,大家可以仔细研究下图1。细心的同学也会发现,数码管上边有2个com,实际上就是我们数码管的公共端。为什么有2个,我个人认为,一方面有2个可以起到对称的效果,刚好是10个引脚,另外一个方面,公共端通过的电流较大,我们初中就学过,并联电路电流之和等于总电流,用2个com可以把公共电流平均到2个引脚上去,降低线路承受的电流。
从我们板子的上能看出来,我们所用的数码管是共阳数码管,如图所示。
图3&共阳数码管电路
  他们的com是接到了正极上,当然了,和LED小灯电路类似,也是由74HC138控制了的导通来控制整个数码管的电流,我们先来看DS1这个数码管。原理图上可以看出来,控制DS1的三极管是Q17,控制Q17的引脚是LEDS0,对应到74HC138上边就是Y0端的输出。
图4&74HC138控制图
  我们现在的目的是让LEDS0这个引脚输出低电平,相信大家现在可以独立根据前边学到的内容把ADDR0,ADDR1,ADDR2,ADDR3,ENLED这4个输入状态写出来,现在大家不要偷懒,都去根据138的手册去写一下,不需要你记住这些结论,但是遇到就写一次,锻炼过几次后,遇到同类芯片自己就知道如何去解决问题了。
  数码管通常是用来显示数字的,我们板子上的6个数码管,习惯上我们称之为6位,那控制位选择的就是74HC138了。而数码管内部的8个LED小灯我们称之为数码管的段,那么数码管的段选择(即该段的亮灭)是通过P0口控制,经过74HC245驱动。
  2、数码管的真值表
  数码管的8个段,我们直接当成8个LED小灯来控制,那就是a、b、c、d、e、f、g、dp一共8个LED小灯。我们通过图1可以轻而易举的看出来,如果我们点亮b和c这两个LED小灯,也就是数码管的b段和c段,其他的所有的段都熄灭的话,就可以让数码管DS1显示一个数字1,那么这个时候实际上P0的值的二进制就是0b,十六进制就是0xF9。那么我们写一个程序进去,看看让数码管显示一下看看。
&&&&#include&&&&&&&&&&&&&&&//包含寄存器的库文件&&&&&&&&&&&&&&&&&&&
&&&&sbit&&ADDR0&=&P1^0;
&&&&sbit&&ADDR1&=&P1^1;
&&&&sbit&&ADDR2&=&P1^2;
&&&&sbit&&ADDR3&=&P1^3;
&&&&sbit&&ENLED&=&P1^4;
&&&&void&&main()
&&&&&&&&unsigned&char&j&=&0;
&&&&&&&&unsigned&int&&i&=&0;
&&&&&&&&ENLED&=&0;
&&&&&&&&ADDR0&=&0;
&&&&&&&&ADDR1&=&0;
& & & & &ADDR2&=&0;
&&&&&&&&ADDR3&=&1;&&&&&&&&&&&//74HC138开启三极管Q17&&&&&&&&&&&
&&&&&&&&while(1)&&&&&&&&&&&&&//程序死循环&&
&&&&&&&&&&&&&P0&=&0xF9;&&&&&&//打开数码管b和c段&&&
  大家把这个程序编译一下,下载到里会发现,最右侧的数码管成功显示1这个数字。
  同样的方法,我们可以把其他的数字都成功的在数码管上显示出来,而数码管显示的数字对应给P0的赋值,我们叫做数码管的真值表。我们来列一下我们这个电路图的数码管真值表,注意,这个真值表里显示的数字都不带小数点。
  表1&数码管真值表
  大家可以把上边那个数码管显示1的那个程序中的P0的赋值随便修改成我们表5-1中的真值表里的数字试试看,把数码管显示的数字显示出来。
  3、数码管的静态显示
  从第三课我们学习74HC138以后,我们了解到74HC138同时一次只能让一个输出口为低电平,也就是在一个时刻内,我们只能让一个数码管显示,始终选通数码管并且可以根据我们的P0总线的信号来改变这个数码管的值,我们可以理解为数码管的静态显示。
  数码管静态显示是对应动态显示而言的,静态显示对于一两个数码管还行,多个数码管,静态显示实现的意义就没有了。这节课我们先用一个数码管的静态显示来实现一个简单的秒表,为下节课的动态显示打下基础。
  先来介绍一个51单片机的关键字code。我们前边课程定义变量的时候,一般用到unsigned&char或者unsigned&int这两个关键字,这样定义的变量都是放在我们的单片机的RAM中,我们在程序中可以随意去改变这个变量的值。但是还有一种常数,我们在程序中要使用,但是却不进行对这个值的改变,这种值我们可以加一个code关键字修饰一下,修饰完毕后,这个值就会存储到我们的程序空间flash中,这样可以大大节省我们单片机的RAM的使用量,毕竟我们的RAM空间比较小,而程序空间是很大的。比如我们现在要使用的数码管真值表,我们来看一下我们下边的这个程序。
#include&&&&&&&&&&&&&&&//包含寄存器的库文件&&&&&&&&&&&&&&&&&&&
sbit&&LED&=&P0^0;
sbit&&ADDR0&=&P1^0;
sbit&&ADDR1&=&P1^1;
sbit&&ADDR2&=&P1^2;
sbit&&ADDR3&=&P1^3;
sbit&&ENLED&=&P1^4;
unsigned&char&code&LedChar[]&=&{
0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,
&&&&0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8e
};&&&&&&&&&&&&&&&&&&//用数组来存储数码管真值表,下一课详细介绍数组
void&main()
&&&&unsigned&char&counter&=&0;
&&&&unsigned&char&j&=&0;
&&&&ENLED&=&0;&ADDR0&=&0;&ADDR1&=&0;
& & &ADDR2&=&0;&ADDR3&=&1;&P0&=&0XFF;&&//74HC138和P0初始化部分
& & &TMOD&=&0x01;&&& & & & & & & & &&//设置定时器0为模式1
& & &TH0&&=&0xB8;
&&&&TL0&&=&0x00;& & & & & & & & & &//定时值初值
& & &TR0&&=&1;& & & & & & & & & & & //打开定时器0
&&&&while(1)
&&&&&&&&if(1&==&TF0)& & & & & & & & &//判断定时器0是否溢出
&&&&&&&&&&&&TF0&=&0;
&&&&&&&&&&&&TH0&=&0xB8;& & & & & & &&//溢出后,重新赋值
&&&&&&&&&&&&TL0&=&0x00;
&&&&&&&&&&&&counter++;
&&&&&&&&&&&&if(50&==&counter)&&&&&&//判断定时器0溢出是否达到50次
&&&&&&&&&&&&{
&&&&&&&&&&&&&&&&counter&=&0;&&&&&&&&//counter清0,重新计数
&&&&&&&&&&&&&&&&P0&=&LedChar[j++];&//把数组里的对应值送给P0
&&&&&&&&&&&&&&&&if(16&==&j)&&&&&&&&&//当显示到F后,归0重新开始
&&&&&&&&&&&&&&&&{
&&&&&&&&&&&&&&&&&&&&&j&=&0;
&&&&&&&&&&&&&&&&}
&&&&&&&&&&&&&}
&&&&&&&&&}
上一篇:下一篇:
Powered by &
这里是—这里可以学习 —这里是。
栏目导航:数码管显示,最全面的数码管显示文章 - 电子工程世界网
数码管显示
在电子工程世界为您找到如下关于“数码管显示”的新闻
数码管显示资料下载
51汇编程序实例:举一例说明:流水灯加数码管LOOP:&&&& ; 标号CLR P2.6&& ;选中p2.6 数码管左边的8字使能SETB P2.7&& ;p2.7不使能。 右边的数码管消隐MOV P0,#28H& ;把28h送p0口;数码管显示 0LCALL DELAY ;延时MOV P0...
数码管显示电路图数码管显示电路图数码管显示电路图数码管显示电路图数码管显示电路图数码管显示电路图数码管显示电路图数码管显示电路图数码管显示电路图数码管显示电路图...
*****************************************************************数码管显示*****数码管显示********************
数码管显示****************数码管显示***************************************************/ 52
实例60:用LED数码显示数字5 52
实例61:用LED数码显示器循环显示数字0~9 52
在ME500B、ME300B开发系统中,均采用了8位数码管动态扫描显示(见图1)。它将所有数码管的8个段线相应地并接在一起,并接到 AT89S52的P0口,由P0口控制字段输出。而各位数码管的共阳极由AT89S52的P2口控制Q20-Q27来实现8位数码管的位输出控制。这样,对于一组数码管动态扫描显示需要由两组信号来控制:一组是字段输出口输出的字形代码,用来控制...
数码管显示数码管显示数码管显示数码管显示数码管显示...
具有数据储存的功能(重启后,并不恢复为上次关机时的值)。
第二章 使用方法
操作面板三按键输入,三位数码管显示输出,见下图:
图1 前面板
图2 后面板
界面 说明 备注
1 三位数码管显示输出 左起第一位为通道显示位,数值从1~4可调; 例:150表示第1通道亮度为50,注意,50是是十六进制表示的。
后两位为参数状态位...
 3.4 花样流水灯
 3.5 LED模拟交通灯
 3.6 单只数码管循环显示0~9
 3.7 8只数码管滚动显示单个数字
 3.8 8只数码管显示多个不同字符
 3.9 数码管闪烁显示
 3.10 8只数码管滚动显示数字串
 3.11 K1~K4控制LED移位
 3.12 K1~K4按键状态显示
 3.13 K1~K4分组控制LED...
数码管显示原理 数码的显示方式一般有三种: 第一种是字型重叠式; 第二种是分段式; 第三种是点阵式。目前以分段式应用最为普遍,主要器件是七段发光二极管(LED)显示器。它可分为两种,一是共阳极显示器(发光二极管的阳极都接在一个公共点上) ,另一是共阴极显示器(发光二极管的阳极都接在一个公共点上,使用时公共点接地) 。 EXCD-1 开发板使用的数码管为四位共阴极数码管, 每一位的共阴极...
电压表.rar
51MCU_CPLD仿真板V2[1].0.rar
9999计数器【数码管显示】.rar
LCD12864_TEST.rar
Mini51板仿真板V2.0【包含多个范例】.htm
两只老虎音乐.rar
串行通信程序-先接收再发送.rar
单片机唱歌“八月桂花香”.rar...
按下按钮SW1时,数码管LED1显示数字&1&;按下SW2时,数码管LED2显示数字&2&;以此类推,按下SW6时,数码管LED6显示数字&6&;无键按下时,数码管不显示任何内容。...
数码管显示相关帖子
=findpost&pid=2078660&ptid=502603][color=#999999]kk118a 发表于
09:31[/color][/url][/size]
不行的,你跑一下试[/quote]
试过了,确实不行。但我不明白为什么用数码管显示时,不用那个求绝对值函数也行,为什么到1602上面就不行呢?那个求绝对值函数也就是去小数点的作用啊,不是吗?
LCD源驱动和门驱动是什么意思?
LCD源驱动和门驱动是什么意思? 记得貌似和LED数码管的“位选段选”相似,两者同时选中的像素才会被点亮
[quote][size=2][url=forum.php?mod=redirect&goto=findpost&pid=2078430&ptid=502207][color=#999999]dark_sky 发表于
如下图,此操作板里的主控芯片是STC89LE52,与装置通信是串口的形式,为了通信的可靠性还增加了一块差分驱动器sn75179b,显示用两块串转并的移位寄存器74HC595D来驱动3位8段及四位8段数码管,数码管的拉电流端用pnp管驱动,外带一个旋转电位计,八个独立按钮
来看看老式变频器的操作面板...
,电流就可能改变。
最后,该电路在数码管显示段数少(如显示1)和显示段数多(如显示8)时,亮度不同。
不出问题和工作良好,不是一回事。
靠三极管的PN结来限流后果不可控,烧掉三极管或单片机也不是不可能。
使用PNP管,让三级管饱和导通,通过各段串联电阻来限流才是正道。
[quote][size=2][url=forum.php?mod=redirect&goto=findpost&pid...
相关的,大二发现其实51单片机这东西很多年前就开始火了,而自己只会用单片机写点液晶、数码管、蜂鸣器的驱动,眼界太窄,后来从单片机的振荡器,IO口和总线输出的原理的理解发现自己的基础真的很薄弱。大二时于是想搞硬件,搭过些运放电路,发现模电的基础真的很重要,当时很“天真”的把清华大学华成英老师的模电课程视频重新看一遍,确实掌握了许多,例如对三极管静态工作点Q的理解,失真和震荡的认识,还有就是运放虚短虚断...
用12864液晶显示屏实时显示DS18b20温度,12864的确可以显示实时温度了,但是不知道为什么,数码管始终在乱码,求大神指点怎样解决这问题。下面是 打的代码。
#include&reg52.h&
#include&stdio.h&
#define uchar unsigned char
#define uint unsigned int
sbit ds...
关闭所有数码管的位选
& & & & WEI=1;&&//让位选的这个u2 74hc573处于直通状态,也就是输入0,输出也是0,输入1输出也是1
& & & & WEI=0;&&//锁存 也就是保持74hc573现在这个时刻的输出状态一直不变
(void) interrupt 1
TH0=()/256;
TL0=()%256;
60~0的数码管循环显示 “未能实现该功能”
具体现象呢?现象都不描述清楚大家也不好回答你!
另外代码一行注释都没有,看着太累!你这个程序还比较简单,如果长一点大家就更懒得去看了
我猜是显示“ 06...
di370参考电路
LYT4312规格书 英文版
PCB layout
IPC-A-600G
proteus 新增元件库下载
AD9电路设计案例教程-第16讲第7章数码管显示电路原理图
pads 9.3汉化绿色精简版
altium designer 10 破解版下载
IC设计与制造
《半导体变流技术(第2版)》
CSR1010应用笔记
《IPC- 印制板...
][/url][/size]
“2、还有就是想请问一下,怎样才能让它底层和顶层都显示连上线呢,我顶层连好了, 再去底层连一下,它就自 ...[/quote]
就像这样的
我是方一个小型的数码管在上面
就是为了以后换一个大一点的数码管的时候
直接插上去就可以用了
所以我就在前面又加了一个过孔
就是直接跟前面的小型过孔连一起就可以了
这不是已经连接...
数码管显示视频
数码管显示创意
你可能感兴趣的标签
热门资源推荐  摘要:本文从“视觉暂留”入手,阐述了数码管动态显示原理。结合PROTEUS仿真软件,从基本知识、基本理论出发,实现了一" />
免费阅读期刊
论文发表、论文指导
周一至周五
9:00&22:00
从“视觉暂留”看LED数码管动态显示
2013年12期目录
&&&&&&本期共收录文章20篇
  摘要:本文从“视觉暂留”入手,阐述了数码管动态显示原理。结合PROTEUS仿真软件,从基本知识、基本理论出发,实现了一位数码管动态闪烁,两位数码管动态显示及多位数码管动态显示的电路设计和软件编程。 中国论文网 /8/view-4919129.htm  关键词:视觉暂留 数码管动态显示 PROTEUS仿真   中图分类号:G642.0 文献标识码:A 文章编号:(9-02   1 引言   LED数码管显示分为静态显示和动态显示。数码管静态显示信息时,每个数码管至少需要8个I/O 口。当需要显示多个不同的数字时,对于单片机,I/O 口就不够用,而在实际的单片机系统中,往往需要显示多位不同数字。当将所有位数码管的段选线并联在一起,这样可以节约I/O口资源。但这样如何能显示不同的内容呢?我们可以采用动态显示。动态显示中“视觉暂留”原理是学生理解的难点。怎样将理论知识在实际电路中进行应用并将效果实时呈现,也需要精心设计。本文将以“视觉暂留”为切入点,分析其原理,并分别以一位数码管动态闪烁,两位数码管动态显示及多位数码管动态显示的电路设计和编程实现为例,结合PROTEUS仿真软件,系统阐述LED数码管动态显示。   2 数码管动态显示原理   科学实验证明:人眼在某个视像消失后,仍可使该物像在视网膜上滞留50-200毫秒左右。视觉的这一现象被称为“视觉暂留”。   (图1)中,把段位都并联在一起,节约I/O口,一位一位选中数码管的同时送出段码,从选中第1位到选中最后一位所用的时间如果控制在人眼的视觉暂留范围内,可以连续看到数字好像同时都在显示,这种显示方式为动态显示方式。   动态显示原理:即轮流向各位数码管送出字形码和相应的位选,交替显示,利用发光管的余辉和人眼视觉暂留作用,使人的感觉好像各位数码管同时都在显示[1][3]。要理解好动态显示原理必需抓它的三个关键点:一是同时,在选中位的同时送出段码,二是依次,依次选中每一位,三是控制好选中每一位的时间间隔,如果间隔时间过长,就会超出人眼的视觉暂留时间范围,看见闪烁的效果。   3 数码管动态显示在PROTEUS软件中实现   3.1 一位数码管动态闪烁验证“视觉暂留”   按照动态显示方法,在1位共阴极数码管上动态显示8。在PROTEUS中设计原理图,如(图2)所示。   P3.7口控制数码管的位选,用P2口控制数码管的段选,针对设计好的电路图,介绍程序编写。将P3.7口置低电平将位选中,P3=0X7F,并将数字“8”的段码编码送入P2口,P2=table[8][2],同时间隔90ms,然后将位选关闭,间隔90ms,给出仿真效果,此时看到数字8在亮灭的闪烁。缩短它的间隔时间,将间隔缩短到50ms,同时看仿真结果,这时看到8停止闪烁。这个例子进一步证明人眼的视觉暂留存在,我们在使用时一定要将间隔时间控制好。以上用一位数码管的动态闪烁验证了“视觉暂留”的存在。   3.2 两位数码管动态显示电路及程序设计实现   按照动态显示方法,在两位共阴极数码管上动态显示56。在电路上两位数码管动态显示与一位数码管动态显示有区别。由于增加了一位数码管,首先用P3.7口控制第一位数码管,用P3.6口控制第二位数码管,由于两位数码管的段选并联在一起,因此用P2口控制它们的段选。电路如(图3)所示。   针对此电路给出程序设计.首先选中第一位数码管的位选,同时送出5的编码,间隔90ms,然后选中第二位数码管,送出6的编码,间隔90ms,选中第一位亮5时,第二位数码管灭,选中第二位时第一位灭,再来看仿真结果,5,6被依次点亮,选中5时6灭,选中6时5灭。接着将间隔缩小为50ms,发现5,6同时亮。在进行两位数码管动态显示实现过程中,选中一位时,同时送出段码,间隔一段时间后选中第二位,送出段码,只要控制好间隔,让总的扫描时间控制在人眼的视觉暂留范围之内[5],我们就可以实现不同数字好像都同时在显示的效果。   3.3 五位数码管动态显示电路及程序设计实现   按照动态显示方法,在五位共阴极数码管上动态显示56789。由于需要五位数码管,因此增加P3.5,P3.4,P3.3, 三位位选线,将段码并联在一起,用P2口控制其段选。电路如(图4)所示。   在程序设计中,依次送出位选,段码,间隔。给出间隔90ms的仿真效果,看到5,6,7,8,9依次选中,缩短间隔,改为10ms,看到56789同时显示。   通过仿真电路,对比,学生掌握了数码管动态显示的原理,特点,电路设计并会用C语言编程实现。   4 结语   本设计从基本知识、基本理论、基本方法层层推进,阐述了LED数码管动态显示的原理,并结合PROTEUS仿真软件介绍了LED数码管动态显示电路设计过程及软件编程。   参考文献   [1]郭天祥.51单片机C语言教程[M].北京:电子工业出版社,页.   [2]谭浩强.C语言程序设计(第二版)[M].北京:清华大学出版社,2000.   [3]何立民.单片机高级教程.第1版.北京:北京航空航天大学出版社,2001.   [4]于肃.数码管的动态显示技术[J].计量技术,1997.8.   [5]赵战民.数码管显示方法的比较[J],科技信息,2007年第3期.
转载请注明来源。原文地址:
【xzbu】郑重声明:本网站资源、信息来源于网络,完全免费共享,仅供学习和研究使用,版权和著作权归原作者所有,如有不愿意被转载的情况,请通知我们删除已转载的信息。
xzbu发布此信息目的在于传播更多信息,与本网站立场无关。xzbu不保证该信息(包括但不限于文字、数据及图表)准确性、真实性、完整性等。

我要回帖

更多关于 数码管静态显示程序 的文章

 

随机推荐