登录
首页
单片机论坛
回帖
发帖
正文
主题:51单片机动态数码管显示
点击:889 回复:7
楼主
编辑
引用
管理
ss1Y0G
仿真没有问题,现在到单片机就会一直闪
21-12-28 20:53
1楼
编辑
引用
管理
pqsh
可能你的电路板p2不是对应数码管的.
21-12-28 21:18
2楼
编辑
引用
管理
guanyumou
动态扫描OK?
21-12-28 21:50
3楼
编辑
引用
管理
微鑫科技
试一下这个看看。
duan=seg_dat[1];//显示1
dil=0;
delay(2);
dil=1;
duan=seg_dat[3];//显示3
di2=0;
delay(2);
di2=1;
duan=seg_dat[1];//显示1
di3=0;
delay(2);
di3=1;
duan=seg_dat[4];//显示4
di4=0;
delay(2);
di4=1;
21-12-29 10:01
4楼
编辑
引用
管理
微鑫科技
再试试下面这种:
void Write_LED(unsigned char b,unsigned char dat)//写位,写数字
{
duan=0x00;
switch(b)
{
case 1://显示第1位
di2=1;di3=1;di4=1;dil=0;
break;
case 2://显示第2位
di1=1;di3=1;di4=1;di2=0;
break;
case 3://显示第3位
di1=1;di2=1;di4=1;di3=0;
break;
case 4://显示第4位
di1=1;di2=1;di3=1;di4=0;
break;
default://错误位
di1=1;di2=1;di3=1;di4=1;
break;
}
duan=seg_dat[dat];//显示数字
}
Write_LED(1,1);
delay(2);
Write_LED(2,3);
delay(2);
Write_LED(3,1);
delay(2);
Write_LED(4,4);
delay(2);
最后修改:
2021/12/29 14:14:56
21-12-29 10:20
5楼
编辑
引用
管理
1056128144
普中板!
我的应还能用。
话说,最近这么多学单片机的?
被PLC疯涨的价格跟无限的货期搞怕了?
问题有2个:
1,硬件问题,我依稀记忆中,数码管段,位都不是直驱,通过138等驱动的。
2,软件,用你仿真电路,消影也要加时间,防止暂留视觉残影。显示,消影2个时间配合,可正常显示。
特别提醒下,
普中板例程,为教学而写以后不要照搬。
象显示程序,占时巨大。用锁存芯片或开个定时器按时刷新,占时更少,更合理。
最后修改:
2021/12/31 9:04:46
21-12-30 08:10
6楼
编辑
引用
管理
微鑫科技
应该用数码管专用驱动芯片,SPI接口,只需要三根驱动信号线就搞定,直接把数据丢进驱动芯片,让它自己扫描驱动,这种方式才是最终的王道,例如:TM1620,才一块多钱,一个芯片可以驱动6位数码管,爽的不要不要的。
21-12-30 09:38
7楼
编辑
引用
管理
guanyumou
引用
微鑫科技
在 2021/12/30 9:38:13 发言
【内容省略】
要节省IO口,那就用驱动芯片吧
22-01-03 21:10
工控新闻
喜报丨珞石机器人入选工信部《首台(套)重大技术装备推广应用指导目录》
头顶 “ 中国第一MEMS传感器企业 ” 歌尔微拟赴港上市!
ABB与威腾电气携手成立新合资公司,加速科技创新更好服务市场
全球6G标准化工作进入实质阶段,中企扮演什么角色?
总经理专访 | 价值引领 倍福的创新力量
开展倒计时!倍福诚邀您一起聆听智能制造与未来工业的深刻对话
4000亿,今年港交所最大IPO敲钟了
ESG+AI创新驱动协同降碳,《联想集团2023/24碳中和行动报告》正式发布
更多新闻资讯