社区导航

 
快捷导航
  • 首页
  • 论坛
  • 查看新帖
  • 最新回复
  • 精华区
  • 社区活动
  • 联系管理员
  • 消灭零回复
  • E金币兑换
搜索
查看: 5170|回复: 21

[讨论] 数码管发光暗,是因为扫描频率低吗?

[复制链接]

12

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2014-11-21 10:57:42 | 显示全部楼层 |阅读模式
数码管发光暗,是因为扫描频率低吗?还有第一位数码管为什么特别亮呢,从硬件原理解释一下,谢谢!
此帖出自51单片机论坛
IMG_20141121_102952.jpg

回复

使用道具 举报

668

TA的帖子

0

TA的资源

纯净的硅(初级)

Rank: 4

发表于 2014-11-21 11:26:28 | 显示全部楼层
最后一位是不是应该显示7 ?但是现在显示8 连小数点都亮了!

回复

使用道具 举报

668

TA的帖子

0

TA的资源

纯净的硅(初级)

Rank: 4

发表于 2014-11-21 11:05:58 | 显示全部楼层
应该是你程序上的问题,扫瞄时间不均等

点评

但是我把排线调换一下位置,还是那一位最亮  详情 回复 发表于 2014-11-21 11:20

回复

使用道具 举报

1551

TA的帖子

2

TA的资源

版主

Rank: 6Rank: 6

发表于 2014-11-21 11:13:52 | 显示全部楼层
哈 普中的51开发板 大学时代第一块开发板 至今还收藏着

点评

前辈,有没有什么好的学习经验,指导一下  详情 回复 发表于 2014-11-21 11:20
专业从事于在线监测振动、转速、轴振动、位移等,设备管理及故障检测振动诊断系统在线监测点巡检系统-现场动平衡仪-测振仪、便携式测振仪

回复

使用道具 举报

4969

TA的帖子

67

TA的资源

版主

Rank: 6Rank: 6

发表于 2014-11-21 11:14:41 | 显示全部楼层
你把最后一位显示个1看看
EEWORLD开发板置换群:309018200,——电工们免费装β的天堂,商家勿入!加群暗号:喵

回复

使用道具 举报

12

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

 楼主| 发表于 2014-11-21 11:20:01 | 显示全部楼层
slotg 发表于 2014-11-21 11:05
应该是你程序上的问题,扫瞄时间不均等

但是我把排线调换一下位置,还是那一位最亮

回复

使用道具 举报

12

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

 楼主| 发表于 2014-11-21 11:20:55 | 显示全部楼层
qq849682862 发表于 2014-11-21 11:13
哈 普中的51开发板 大学时代第一块开发板 至今还收藏着

前辈,有没有什么好的学习经验,指导一下

点评

我也用这个板子,现在也还收藏着呢,确实是学习单片机的经典玩意儿。。。。你是用它学习51么?还是arm?有什么问题可以找我哦,我们一起讨论。  详情 回复 发表于 2014-11-21 11:31

回复

使用道具 举报

111

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2014-11-21 11:29:58 | 显示全部楼层
哈哈,我也是这块板子。。。这个问题的因素有很多哦。扫描频率能影响这个玩意的亮度,但是影响不大,像你给的这个东西和驱动电流有关系,当你的单片机驱动这个数码管的时候,驱动电流的大小和那个挂在总线上的上下拉电阻有关系。总之和亮度直接相关的是电流。。。电流越大,越亮。不过也和管子有关系,不同的管子也是不一样的,有高亮的数码管,也有普通的,反正最后一位那个肯定是个高亮的。。。你懂我意思了吧?

点评

#include #define GPIO_SE P1 void delay(unsigned char z); unsigned int code sevalue[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x3f,0x7f,0x6f,0x40};//数码管显示数组 sbit a=P2^2; sbit b=P2^3; sbit c=P2  详情 回复 发表于 2014-11-21 12:58

回复

使用道具 举报

111

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2014-11-21 11:31:00 | 显示全部楼层
setupsong 发表于 2014-11-21 11:20
前辈,有没有什么好的学习经验,指导一下

我也用这个板子,现在也还收藏着呢,确实是学习单片机的经典玩意儿。。。。你是用它学习51么?还是arm?有什么问题可以找我哦,我们一起讨论。


回复

使用道具 举报

447

TA的帖子

9

TA的资源

纯净的硅(初级)

Rank: 4

发表于 2014-11-21 12:21:33 | 显示全部楼层
应该是程序的问题,我也遇到过、、、、

回复

使用道具 举报

132

TA的帖子

1

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2014-11-21 12:26:21 | 显示全部楼层
应该是您扫描的时间不一样吧,最后一位点亮了一定的时间之后,您没有让它灭吧,所以就最后一位最亮
图腾实验室------总有你想要的东西
https://shop112199014.taobao.com/?spm=a1z10.1-c.0.0.ie7t4K

回复

使用道具 举报

153

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2014-11-21 12:27:48 | 显示全部楼层
同学中这板子挺流行的。不过有个BUG,就是USB转串口线是插不上去的。

回复

使用道具 举报

12

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

 楼主| 发表于 2014-11-21 12:58:09 | 显示全部楼层
无奇不有 发表于 2014-11-21 11:29
哈哈,我也是这块板子。。。这个问题的因素有很多哦。扫描频率能影响这个玩意的亮度,但是影响不大,像你给 ...

#include<reg51.h>
#define GPIO_SE P1
void delay(unsigned char z);
unsigned int code sevalue[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x3f,0x7f,0x6f,0x40};//数码管显示数组
sbit a=P2^2;
sbit b=P2^3;
sbit c=P2^4;
unsigned char j;
unsigned char i;
void main()
{
        while(1)
        {       
                           
                for(i=0;i<8;i++)
                {
                               
                        switch(i) //位选138译码器
                        {       
                                case(0):  a=0;b=0;c=0; break;
                                case(1):  a=1;b=0;c=0; break;
                                case(2):  a=0;b=1;c=0; break;
                                case(3):  a=1;b=1;c=0; break;
                                case(4):  a=0;b=0;c=1; break;
                                case(5):  a=1;b=0;c=1; break;
                                case(6):  a=0;b=1;c=1; break;
                                case(7):  a=1;b=1;c=1; break;
                        }
                         GPIO_SE=sevalue; //段选
                        j=20;                          //延时
                        while(j--);
                        GPIO_SE=0x00;//消隐
                    }
         
        }
       


}
这是我的源程序,显示没有问题


回复

使用道具 举报

228

TA的帖子

0

TA的资源

一粒金砂(高级)

Rank: 3Rank: 3

发表于 2014-11-21 17:26:29 | 显示全部楼层
#include<reg51.h>
#define GPIO_SE P1
unsigned int code sevalue[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x3f,0x7f,0x6f,0x40};//数码管显示数组
unsigned char j;
unsigned char i;
void main()
{
        while(1)
        {                    
                for(i=0;i<8;i++)
                {      
                           P2=(i<<2)&0x1c;
                         GPIO_SE=sevalue; //段选
                        j=20;                          //延时
                        while(j--);
                        GPIO_SE=0x00;//消隐
                    }
        }
}貌似可以这样写
有好几年没碰过51了
另外,养成好习惯,在switch语句最后加上default: break;

点评

嗯嗯,谢谢前辈指点  详情 回复 发表于 2014-11-21 19:59

回复

使用道具 举报

3428

TA的帖子

6

TA的资源

裸片初长成(初级)

Rank: 10Rank: 10Rank: 10

荣誉会员勋章

发表于 2014-11-21 18:07:51 | 显示全部楼层
动态扫描的对时间要求比较严格,时间上出现了问题首先表现就是亮度问题,不均或者某一个不亮。尤其是再加上别的功能,在主循环里做处理起来比较麻烦。动态扫描的扫描频率对亮度影响不大,关键是每一次点亮和熄灭的比例,还有保证每一个数码管的这个比例要一直。一般在定时器里做起来比较简单

点评

嗯嗯,懂了,谢谢前辈指点  详情 回复 发表于 2014-11-21 20:01

回复

使用道具 举报

12

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

 楼主| 发表于 2014-11-21 19:59:17 | 显示全部楼层
LeoMe 发表于 2014-11-21 17:26
#include
#define GPIO_SE P1
unsigned int code sevalue[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x3f,0 ...

嗯嗯,谢谢前辈指点

回复

使用道具 举报

12

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

 楼主| 发表于 2014-11-21 20:01:05 | 显示全部楼层
jishuaihu 发表于 2014-11-21 18:07
动态扫描的对时间要求比较严格,时间上出现了问题首先表现就是亮度问题,不均或者某一个不亮。尤其是再加上 ...

嗯嗯,懂了,谢谢前辈指点

回复

使用道具 举报

175

TA的帖子

0

TA的资源

纯净的硅(初级)

Rank: 4

发表于 2014-11-21 21:18:26 | 显示全部楼层
本帖最后由 ahshmj 于 2014-11-21 21:19 编辑

你的程序需要改一改。
如果嫌所有的数码管亮度不够,可以在每显示一位数后,适当加点延时。
至于最后一位过亮的原因:前面的几位显示时间是每一语句执行的时间(因为没有延时),而执行下一语句时,前面一个数码管就会关闭。而最后一位点亮以后,要等到下一次循环时并点亮第一个数码管时才被熄灭,比起他的数码管供电的时间长得多,所以就亮的多。解决的办法就是每点亮一个数码管后加适当延时,最后一位在同样的延时以后关闭。

点评

嗯嗯,懂了,谢谢!  详情 回复 发表于 2014-11-22 19:54

回复

使用道具 举报

6

TA的帖子

0

TA的资源

一粒金砂(初级)

Rank: 1

发表于 2014-11-22 14:19:17 | 显示全部楼层
数码管发光暗,是因为扫描频率低吗?还有第一位数码管为什么特别亮呢,从硬件原理解释一下,谢谢!

回复

使用道具 举报

12

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

 楼主| 发表于 2014-11-22 19:54:13 | 显示全部楼层
ahshmj 发表于 2014-11-21 21:18
你的程序需要改一改。
如果嫌所有的数码管亮度不够,可以在每显示一位数后,适当加点延时。
至于最后一位 ...

嗯嗯,懂了,谢谢!

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

  • 论坛活动 E手掌握

    扫码关注
    EEWORLD 官方微信

  • EE福利  唾手可得

    扫码关注
    EE福利 唾手可得

小黑屋|手机版|Archiver|电子工程世界 ( 京ICP证 060456

GMT+8, 2017-9-23 15:39 , Processed in 0.618764 second(s), 19 queries , Redis On.

快速回复 返回顶部 返回列表