一个数码管有八段:A,B,C,D,E,F ,G,H即由八个发光二极管组成;发光二极管导通的方向是一定的(导通电压一般取为1.7V),这八个发光二极管的公共端有两种:可以分别接+5V(即为共阳极数码管)或接地(即为共阴极数码管)
共阳极: 位选为高电平(即1)选中数码管, 各段选为低电平(即0接地时)选中各数码段,
共阴极: 位选为低电平(即0)选中数码管, 各段选为高电平(即1接+5V时)选中各数码段。

1位数码显示数字其实就是这8个发光二极管,哪个亮哪个不亮,从而达到显示数字的效果,亮和不亮无非就是0或1。以共阴极为例。
数码管的段依次从低到高如图中的a,b,c,d,e,f,g,h(h是小数点),如果要显示数字1,即b,c亮,其他都不亮,对应的二进制数字为:00000110,转换为16进制为0x06。即段码为0X06时,这个数码管就能显示数字1了。以此类推就可以得出1-9的断码了。共阳极的原理也是如此,对共阴极的段码取反即可。
8位数码管可以理解为8个1位数码管组成的,这就涉及到位码,你可以理解为位置,像第一位数码管,第二位数码管这样。以共阴极为例。位选为低电平(即0)时选中该数码管。
比如你有1个8八位数码管,你只想让第1、2、3、位数码管显示亮起来,那么即选中1,2,3,其他均不选,二进制数字为11111000,转换为16进制为0XF8,只要设置位码为0xF8即可达到这个效果了,其他也是一样的,共阳极取反即可。
数码管结构及工作原理,段码计算方法

段码计算方法:理论上,八个笔段可以显示128种不同的字符,扣除其中没有意义的组合状态后,七段LED数码管可以显示的字符如表所示。相应的其它字符也可推算出来。


#include 《STC89.H》 //延时程序代码
void delay_ms(unsigned int Cnt) {
unsigned int t; while(Cnt--) { t=100; while(--t); } }
//主程序代码
void main()
{ unsigned char i;
unsigned char code LED[16]= { 0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71, };
while(1) { P1=0xfe; for(i=1;i《=6;i++) { P0=LED[i];
delay_ms(400);
P1=(P1《《1)|0x01;
}
}
}
高品质LED产品是怎样炼成的
时间:2026-03-14
LED电源的分类和选择
时间:2026-03-14
激光二极管模拟器的试验
时间:2026-03-14
高压LED芯片对比分析
时间:2026-03-14
led数码管结构及其检测
时间:2026-03-14
oled与tft的区别对比
时间:2026-03-14
直下式LED背光源方案
时间:2026-03-14
LED驻波指示器方案
时间:2026-03-14
大尺寸TFT-LCD的LED背光技术
时间:2026-03-14
巧用废旧塑料电筒做高亮LED电筒
时间:2026-03-14
电阻的标称阻值和允许偏差
时间:2026-03-05
变压器并列运行的条件浅析
时间:2026-03-06
玻璃釉电容器的结构与特点
时间:2026-03-05
晶体三极管放大电路的非线形失真及其解决办...
时间:2026-03-07
石英灯电子变压器电路原理
时间:2026-03-06
旋转变压器原理与应用知识
时间:2026-03-06
关于STM32WL LSE 添加反馈电阻后无法起振的...
时间:2026-03-05
贴片电阻的阻值识别方法
时间:2026-03-05
可调电阻怎么接线
时间:2026-03-05
压敏电阻有正负极吗
时间:2026-03-05