单片机 为什么P1口输出低电平小灯才亮

单片机原理图中 排阻一端接电 另一端连发光二极管 发光二极管连在89c52的I/O口上 请问 这个电路是一个回路吗?为什么I/O口输出低电平才能点亮二极管?
一个电路 一定要是闭合电路才能工作吗?如果我在电路一端输入高电平 然后接一个二极管 另一端输入低电平 但并不跟高电平那一端连通 请问这样的话 二极管能亮吗?

  这与实际的电路连接有关,能够构成LED的电流回路,就能够点亮LED。

  下面这个电路图,就是低电平点亮的电路图:

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

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

温馨提示:内容为网友见解,仅供参考
第1个回答  2010-04-04
因为发光二极管正极接的是VCC,负极是单片机的I/O口,发光二极管要有一个电势差它才会亮,如果I/O口是高电平的话发光二极管两端没有电势差,所以不会亮。只有当发光二极管的负极是低电平是它才会有电势差,才会工作。
楼主的第二个问题也是正确的,只要形成一个足够的电势差,二极管就能工作,不过电池的话就要形成闭合回路才行。本回答被提问者采纳
第2个回答  2010-04-04
排阻就是将N个电阻集成到一个器件上,然后引出一个公共端,你想,你将那个公共端接VCC其他通过LED给I/O口,就相当于你接了8路的限流电阻然后通过LED给单片机,这是灌入电流式的,肯定低电平才能构成回路,LED才能发光。相反,你将公共端接地,单片机输出高电平LED才发光,不过51貌似驱动能力不够哦,对AVR单片机来说,输出最大20mA电流,灌入最大40mA电流,驱动LED很随意
第3个回答  2010-04-04
你应该好好看看书咯…… 排阻连接到单片机的口上只是增加单片机端口电平的稳定性,也就是将端口上拉!其实P1口可以不接排阻的,因为内部已经有上拉电阻了,而P0是必须要接的,因为它是漏极开路!

你说的那种情况会亮!

但是你应该养成这种习惯,这就是常说的上拉,你要是做电机控制之类的,你就更加清楚,会有干扰,电机会抖动,但是加了上拉电阻,信号就能相对稳定!但是你要就是接二极管那肯定是没问题了,因为那点干扰你根本看不出来!
相似回答