自造星球-创客空间  - 讨论区

标题:使用74LS47驱动LED数码管

2015年06月01日 星期一 18:45

LED数码管在很多地方都有应用,可以简单方便的显示一些数字,比如温度、电压、电流、时间等。

我手头有一些LED数码管,型号是5161AS(共阴)和5161BS(共阳),经过我的测试,亮度很高,工作稳定。

我整理了一份上述两种数码管的原理图,供大家参考:

如果使用单片机直接驱动数码管显示数字,则至少需要7个IO端口,而且还需要自己整理每个数字对应的数码管管脚,我曾经尝试了一遍,相当麻烦。

后来我找到了74LS47这个专用的数码管驱动器,它驱动一位数码管,只需要4个IO引脚,在连接好电路后,只需要按位往IO引脚写8421BCD码即可,74LS47已经把剩下的工作都做完了。

我画了一个简单的电路图,大家参考:

单片机的BCD输出接74LS47的IA IB IC ID即可。

Arduino的测试例程如下:

void setup() {
  pinMode(1, OUTPUT);
  pinMode(2, OUTPUT);
  pinMode(3, OUTPUT);
  pinMode(4, OUTPUT);
}

void loop() {
  for(int i=0;i<10;i++){
  digitalWrite(1, i & 1);
  digitalWrite(2, i & 2);
  digitalWrite(3, i & 4);
  digitalWrite(4, i & 8);
  delay(500);
  }
}

 

看看我在Arduino面包板上的连接效果:

 

最后,推荐大家去下载74LS47的Datasheet并认真阅读。

 

 

 

 

如下红色区域有误,请重新填写。

    你的回复:

    请 登录 后回复。还没有在Zeuux哲思注册吗?现在 注册 !

    Zeuux © 2024

    京ICP备05028076号