单片机为何使用0xfe来点亮第一个发光二极管,而关闭却是0xff?

发光二极管:正向导通,但当正负极同时至高电平(低电平)时,二极管中电流将不再流动,也就不再发光。

在实际应用时和二极管的接法有关,二极管阴极端连单片机,输出低电平0就会点亮。

基于此:

我们现在0xfe是十六进制数,转换成二进制就为1111 1110,单片机一般阅读由右向左阅读,即第一位为代表第一个灯——0(低电平),可以发生正向导通。而0xff转换成二进制为1111 1111,即第一位为1,代表高电平,此时二极管两端都为高电平,没有电流通过(灯灭)。

同理

0xfe=1111 1110 表示一个灯亮。
0xfc=1111 1100 表示最后2个灯亮。
0xfd = 1111 1101 //第2个灯亮
0xfb = 1111 1011 // 第三个灯亮
0xf7 = 1111 0111 // 第4个灯亮
0xef = 1110 1111 // 第五个灯亮
0xdf = 1101 1111 // 第六个灯亮
0xbf = 1011 1111 // 第七个灯亮
0x7f = 0111 1111 // 第八个灯亮

作者:Relearn Again

物联沃分享整理
物联沃-IOTWORD物联网 » 单片机为何使用0xfe来点亮第一个发光二极管,而关闭却是0xff?

发表评论