找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 7562|回复: 15
收起左侧

用单片机怎么控制二位共阳数码管?我这个两边都是一样的

  [复制链接]
ID:475870 发表于 2019-3-8 18:22 | 显示全部楼层 |阅读模式
怎么控制二位共阳数码管呀,我这个两边都是一样的,求指导
89655d9eb7387c4f10004a3b593db30.jpg 3f9a5433e1973131f5b0478878f51ce.jpg

回复

使用道具 举报

ID:123289 发表于 2019-3-9 09:36 | 显示全部楼层
难道老师连这个也未教?
回复

使用道具 举报

ID:164602 发表于 2019-3-9 14:43 | 显示全部楼层
程序在哪里?
第一:好好看看你的数码管的管脚,共十脚,为什么呢?每个数码管的八个LED的阴极——八个脚,另外两脚就是每个数码管的共阳了,电路如图 1.jpg

看清楚了,这两个数码管的阴极是并联在一起的,所以你给段码后,两个数码管显示内容当然是一样的!
这样做对新手是很难的,但节约了单片机的IO口啊——10个IO口控制两个数码管,12个IO口可以控制四个数码管......用的数码管越多,节约的IO口就越多。
第二:这样的数码管显示方法是:利用视觉暂留现象,开一个数码管,显示一下,就关了,马上开另一个数码管,人眼还没有感觉第一个数码管已经关了,第二个又开了,人就认为——是认为,两个数码管都是亮的,四个、八个数码管都是这样显示的举个例子程序吧:
假设:上面这两个数码管是这样和单片机连接的:ABCDEFG和DP接在P0口,A在最低位,DP在最高位;DIG1、DIG2分别接在P20、P21上,那么,显示子函数应该是这样的:
void XS(void)//显示子函数
{
    DIG1=1;//开第一个数码管
    P0=0x55;//这个0x55是我随便写的,表示你要显示的第一个内容
    void Delay10ms();//软件延时
    DIG1=0;//关第一个数码管
    DIG2=1;//开第二个数码管
    P0=0xaa;//这个0xaa是我随便写的,表示你要显示的第一个内容
    void Delay10ms();//软件延时
    DIG2=0;//关第二个数码管
}

你试试看

评分

参与人数 1黑币 +16 收起 理由
angmall + 16 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

ID:96682 发表于 2019-3-9 16:04 | 显示全部楼层
只要懂得引脚与数码管字面上之间的关系,想用什么电路控制都行
回复

使用道具 举报

ID:475870 发表于 2019-3-9 18:54 | 显示全部楼层
HC6800-ES-V2.0 发表于 2019-3-9 14:43
程序在哪里?
第一:好好看看你的数码管的管脚,共十脚,为什么呢?每个数码管的八个LED的阴极——八个脚 ...

可以了,多谢指点
49050768ea9103930fa5b304caaffaa.jpg

回复

使用道具 举报

ID:487591 发表于 2019-3-9 20:36 | 显示全部楼层
把8个引脚分别接上单片机,编程把一个一个引脚的送低电平,就可以试出来了
回复

使用道具 举报

ID:487629 发表于 2019-3-9 21:43 | 显示全部楼层
  
字符
  
  
0
  
  
1
  
  
2
  
  
3
  
  
4
  
  
5
  
  
6
  
  
7
  
  
数值
  
  
0xC0
  
  
0xF9
  
  
0xA4
  
  
0xB0
  
  
0x99
  
  
0x92
  
  
0x82
  
  
0xF8
  
  
字符
  
  
8
  
  
9
  
  
A
  
  
B
  
  
C
  
  
D
  
  
E
  
  
F
  
  
数值
  
  
0x80
  
  
0x90
  
  
0x88
  
  
0x83
  
  
0xC6
  
  
0xA1
  
  
0x86
  
  
0x8E
  
共阳com口接5V,abcdefg接Px.0-Px.7(x可以为0,1,2...),利用上面的真值表,配置Px就可以得到不同的显示效果,dp是小数点的效果,要想得到动态的数码管,要用定时器中断,不断刷新数码管显示。
回复

使用道具 举报

ID:354116 发表于 2019-3-10 17:37 | 显示全部楼层
用电源引线,串电阻,一对对引脚测试,就能找出来
回复

使用道具 举报

ID:657845 发表于 2019-12-22 09:13 来自手机 | 显示全部楼层
请问  单片机89C51接 这个共阳数码管 的话是不是要在8个端口都接上大约200Ω的电阻
回复

使用道具 举报

ID:819112 发表于 2021-1-19 18:54 | 显示全部楼层
LTX~LTX 发表于 2019-3-9 18:54
可以了,多谢指点

延时要多少啊?
回复

使用道具 举报

ID:880092 发表于 2021-1-24 19:29 | 显示全部楼层
先用万用表确定公共端,确定段选,用两个IO口控制位选,8个控制段选,如果需扩展IO口可用74H138。
回复

使用道具 举报

ID:190577 发表于 2021-1-24 19:47 | 显示全部楼层

一般2MS
回复

使用道具 举报

ID:819112 发表于 2021-1-25 16:33 | 显示全部楼层

程序可以贴出来看看么?
回复

使用道具 举报

ID:847443 发表于 2021-1-25 16:42 | 显示全部楼层
现在网上查3621AH的资料,再用万用表二极管档验证各管脚的功能。
回复

使用道具 举报

ID:811405 发表于 2021-1-27 08:59 | 显示全部楼层
控制数码管位选和段选就能显示你想要的值
回复

使用道具 举报

ID:883031 发表于 2021-2-24 10:00 | 显示全部楼层
动态扫描
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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