单片机驱动Led数码管(或n个Led)应该算是单片机经典实验之一了。
数码管品种:
数码管类型 |
上拉电阻 |
限流电阻 |
对单片机电流的影响 |
三极管驱动 |
工业IC |
共阳极 |
不需 |
200~470Ω (非排阻) |
位码高电平, 段码低电平时点亮 |
PNP |
|
共阴极 |
需求 (可排阻1KΩ) (因此浪费电 并且并且悉数 平息时比悉数 点亮时更费电) |
不需 |
位码低电平, 段码高电平时点亮 |
NPN |
常用 |
现在手里只要共阴的数码管(LG5011AH),依照网上查找到的下图完结:
实践用的单片机是AT89S51,参阅上面的的图做了恰当的修正,用P2操控段,P3操控位。
一切与单片机的衔接均用排针。
LED驱动的段显操控:
首要确认显现的段,将段按次序转化成二进制数字,从而转化成十进制数字。
假定P2.0~P2.6按次序接到a-h段
单片机 |
Pn.7 |
Pn.6 |
Pn.5 |
Pn.4 |
Pn.3 |
Pn.2 |
Pn.1 |
Pn.0 |
数码管 |
h |
g |
f |
e |
d |
c |
b |
a |
如显现“H” |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
0 |
B01110110= 0x76 |
||||||||
如显现“O” |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
B00111111= 0x3f |