我手工画的八个led是一个共阴数码管的原理图
a b c d e f g 分别是数码管的每一个段,dp是数码管的小数点(这些都称为段选)。他们的阴极连到一块,称为公共端(为什么叫共阴数码管就是这样来的)。
数码管显示不同的数字,是通过让数码管的不同段的亮灭组合实现的。比如说要显示0,需要使数码管的a b c d e f亮,g dp灭。这样在公共端为0的情况下段选段输入:0b0011111=0x3f时(dp g ...a),数码管就显示0了,同理若要使数码管显示其他数字,只需在段选端输入其对应的段选码就行了。
0-f对应的段选码分别为:
0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d, 0x07,
0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71
共阴极数码管显示字符:3FH、06H、5BH、4FH、66H、(0—4)
6DH、7DH、07H、7FH、6FH、(5—9)
至于管脚定义,那要看把数码管的8根管脚接到哪个口。(设数码管已接地)
假如你是接到P0口,则可以这样定义:
LED EQU P0
到时要显示数字,直接用mov P0,XX 语句,往P0口送如上数据就可以了。
初始化就行 共阴接地 共阳接正电源
你问的是LED的段值吧,自己按实物编成代码或去网上找
LED编码软件来取值就可以了