找回密码
 立即注册
查看: 116|回复: 15

关于数码管驱动问题

[复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:4
  • 最近打卡:2026-05-07 11:24:48

15

主题

25

回帖

162

积分

注册会员

积分
162
发表于 5 天前 | 显示全部楼层 |阅读模式
您好,使用STC8A8K64D4芯片,芯片工作电源5V,
通过动态扫描方式(频率100HZ),
驱动一个5位,共阳的0.56英寸的数码管,
P0口8位做数码段位显示控制,P1口5位做数码片选控制,
P1口设置推挽输出,高电平直接驱动,
P0口串接470欧下拉限流电阻,具体电路图如下,
在频率100HZ下,每位数码片选的占空比是20%,
通过示波器测量P1口输出的高电平在4.1V左右,
高电平和工作电源5V之间有压降,
是不是驱动电流大了,导致压降增加了,
如果P1口通过三极管放大后驱动数码片选,是不是会好点。
另如果在不增加外围器件的情况下,
驱动电压有什么办法可以提高吗?谢谢

电路图

电路图

驱动波形图

驱动波形图
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:401
  • 最近打卡:2026-05-08 09:46:24

850

主题

1万

回帖

2万

积分

管理员

积分
23212
发表于 5 天前 | 显示全部楼层
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:363
  • 最近打卡:2026-05-08 17:09:43
已绑定手机

63

主题

257

回帖

2157

积分

金牌会员

积分
2157
发表于 5 天前 | 显示全部楼层
芯片的驱动能力就在那里了,还是加三极管吧
试试带LED驱动的型号看会不会电流更大一些。
或者直接上专用的驱动芯片像1638这种
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:401
  • 最近打卡:2026-05-08 09:46:24

850

主题

1万

回帖

2万

积分

管理员

积分
23212
发表于 5 天前 | 显示全部楼层
回复

使用道具 举报 送花

  • 打卡等级:常住居民I
  • 打卡总天数:67
  • 最近打卡:2026-05-08 06:02:18
已绑定手机

3

主题

115

回帖

561

积分

高级会员

积分
561
发表于 5 天前 | 显示全部楼层
测试程序
#include "STC8A8K64D4.H"

unsigned char code table[]={//共阳数码管段码"0~f-."
                0xc0,0xf9,0xa4,0xb0,
                0x99,0x92,0x82,0xf8,
                0x80,0x90,0x88,0x83,
                0xc6,0xa1,0x86,0x8e,0xbf,0x7f};
unsigned char data dis_buf[5];
unsigned int num;

void delay(unsigned int ms)//注:ms_max=65536
{
        unsigned int i;
        do
        {
                i=1106;  //STC8 11.0592MHz
                while(--i);
        }
        while(--ms);
}

void main(void)
{
        unsigned char i,j;

        P0M0 = 0x00;P0M1 = 0x00;
        P1M0 = 0x1f;P1M1 = 0x00;//P1.0~1.4推挽
        P2M0 = 0x00;P2M1 = 0x00;
        P3M0 = 0x00;P3M1 = 0x00;
        P4M0 = 0x00;P4M1 = 0x00;
        P5M0 = 0x00;P5M1 = 0x00;
        P6M0 = 0x00;P6M1 = 0x00;
        P7M0 = 0x00;P7M1 = 0x00;
        while(1)
        {
                if(++j>250)//
                {
                        j=0;
                        num++;
                }
                switch(i)
                {
                        case 0: dis_buf[0]=table[num/10000%10]; break;
                        case 1: dis_buf[1]=table[num/1000%10]; break;
                        case 2: dis_buf[2]=table[num/100%10]; break;
                        case 3: dis_buf[3]=table[num/10%10]; break;
                        case 4: dis_buf[4]=table[num%10]; break;
                }        
                P1&=0xe0;     //消隐
                P0=dis_buf;//送段码
                P1|=0x01<<i;  //送位码
                i=++i%5;      //循环计数
                delay(2);     //延时2ms
        }
}
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:543
  • 最近打卡:2026-05-07 10:27:33
已绑定手机

14

主题

239

回帖

2922

积分

金牌会员

积分
2922
发表于 5 天前 | 显示全部楼层
看产品的定位和使用环境,再选方案吧。
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:363
  • 最近打卡:2026-05-08 17:09:43
已绑定手机

63

主题

257

回帖

2157

积分

金牌会员

积分
2157
发表于 5 天前 | 显示全部楼层
限流470欧姆,用高亮的数码管,5位,亮度还行吧。
室内使用足够了,我见过用11F系列芯片直接驱动7位的,亮度也可以用。
我用0.4寸的4位的,电阻430欧姆,共阴的,片选端0.64V.亮度足够。
感觉用共阴极的毕竟好,IO的灌入电流似乎比输出电流要大一点。
但是再多位的我一般都是在片选增加三极管的。
或者比如8位的直接上1638,还带按键,与主板只用5根线,很是方便呢
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:401
  • 最近打卡:2026-05-08 09:46:24

850

主题

1万

回帖

2万

积分

管理员

积分
23212
发表于 5 天前 | 显示全部楼层
1.9 V ~ 5.5V 能正常工作,
不担心 MCU-VCC 抖动,但 MCU-GND 上少走大电流为好

截图202605041642398448.jpg


回复

使用道具 举报 送花

  • 打卡等级:以坛为家III
  • 打卡总天数:822
  • 最近打卡:2026-05-08 08:56:07
已绑定手机

16

主题

1413

回帖

5247

积分

论坛元老

积分
5247
发表于 5 天前 | 显示全部楼层
1、数码管数量不多时,可以用单片机直接驱动数码管,不串联电阻,可以通过调节占空比来调节亮度(5位数码管每一位的占空比是远小于20%的,因为其他时间要CPU处理其它事情)。某一段从小占空比向上调,切记不要调的太大,会烧坏LED或者单片机。
2、单片机直接驱动数码管,建议用共阴极,否则数码管不同数字的亮度不好控制。
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:363
  • 最近打卡:2026-05-08 17:09:43
已绑定手机

63

主题

257

回帖

2157

积分

金牌会员

积分
2157
发表于 4 天前 | 显示全部楼层
21cns*** 发表于 2026-5-4 22:40
1、数码管数量不多时,可以用单片机直接驱动数码管,不串联电阻,可以通过调节占空比来调节亮度(5位数码管 ...

不加电阻,就容易出现8个段在某个数字上时亮度不一样的问题,不好搞,换个品牌就可能很明显。
回复

使用道具 举报 送花

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

本版积分规则

QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2026-5-9 05:41 , Processed in 0.154254 second(s), 98 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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