单片机编程为什么 led=0;led灯就亮

1、这个是需要看外围电路的,不一定是输入低电平led就会亮,首先led的正极接到vcc,负极接到单片机的P1.0上,当单片机的P1.0为高电平时,LED两端电压一样,电流不会流动,led不会亮,只有当p1.0为低电平是,电流才会从vcc进过led流向p1.0,再进过单片机内部形成回路,led就会亮了,反之一样,led负极接GND,正极接p1.0,当p1.0置高电平时,LED也会亮。

2、灯亮是因为两侧有电压差LED是一般0.7V左右,是有高电平低电平组成的电压差;:
1共阳极接法:
. 当LED阳极接电路板上的高电位,阴极接单片机引脚,
单片机引脚输出高电平,没有电压差,灯不亮;
单片机引脚输出低电平,有电压差,灯亮。(你所说的情况)
2.共阴极接法:
LED阴极接电路板上的低电位,阳极接单片机引脚,
单片机引脚输出高电平,有电压差,灯亮;
单片机引脚输出低电平,没有电压差,灯不亮。

3、当I/O口输出高电平时,LED两端的电位相同,因此电压为0V,不能构成电流回路,所以LED不亮。当I/O口输出低电平时,LED左侧电位为0,而右侧则在R1的上拉作用下电位提高,因此LED两端有正向电压,可以点亮发光。

  MCS-51单片机的I/O口具有比较强的灌电流能力,但拉电流能力却很弱,所以并不适合用输出高电平的方法点亮LED,大多采用这种负逻辑的驱动方法。

https://zhidao.baidu.com/question/145296256?from=&ssid=&uid=2CFD9DEA1013CEF62941F4740D51C0EC&pu=sz%40224_240%2Cos%40&step=4&bd_page_type=1&init=middle

发布了106 篇原创文章 · 获赞 204 · 访问量 128万+

猜你喜欢

转载自blog.csdn.net/ab6326795/article/details/99552906