单片机的IO驱动LED灯电路,需要用到三极管,求原理图,并说明
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了单片机的IO驱动LED灯电路,需要用到三极管,求原理图,并说明相关的知识,希望对你有一定的参考价值。
搞不明白单片机I/O口驱动LED为什么要用到那么复杂的电路,是单纯的为了复杂而复杂吗?很晕!如果一个I/O口驱动一个LED,只要I/O口低电平有效LED串一个470Ω的电阻即可,如果驱动多个LED只要按下图即可:
如果Vcc=5v;则R0=1KΩ-5.1KΩ;Rn=470Ω。如果晶体管用S8550,那么同时点亮5个LED是没问题的。
参考技术A I/O口驱动LED灯是不需要三极管的。将I/O口直接接LED灯的负极,LED灯的正极接一限流电阻(330欧),电阻另一端接电源(3.3V或者5V根据I/O的电压为准)就可以了。
当I/O的电压为低时,LED灯亮;
当I/O的电压为高时,LED灯灭。 参考技术B 单片机I/O口驱动LED是否用三极管以及具体电路,和LED的功率、单片机的工作电压、I/O口的驱动能力都有关联。你得提供更详尽的具体细节才能给出答复或实用电路。追问
这个电路R17是做什么用的
R17是用来调节三极管Q2的静态工作点的,R17的阻值越小,Q2的静态工作电流也越小。
但是这个电路用来驱动LED是有问题的,就是我前边所说的电压问题。LED的工作电压通常都在3V以上、4V以下,而这里Q2的集电极电压只有3V,就算Q2进入深度饱和状态,剩下的电压也只有2.7V,在加上Q2的发射极电阻阻值有1kΩ之大,即使只流过1mA的电流也会产生1V的电压降,LED肯定不能被正常驱动发光。
51单片机学习——点亮LED灯
51单片机学习——点亮LED灯
1、对照开发板原理图对端口进行赋值
如下图,要使LED2点亮,需要在其正极输入高电平,在负极输入低电平。而这需要PNP型三极管Q16导通,即标点LEDS6要为低电平。
根据标点找到对应控制元件。图中,要使74HC138起作用,其ENLED要为低电平,ADDR3要为高电平。要使LED6为低电平,则A2A1A0的值分别为110,即ADDR0=0,ADDR1=1,ADDR2=1。
控制ADDR0、R1、R2、R3电平的端口为P1.0、P1.1、P1.2、P1.3
控制ENLED电平的端口为P1.4
找到对应的控制端口后,将P1.0、P1.1、P1.2、P1.3、P1.4 分别赋值01110就可让PNP型三极管Q16导通。
再通过标点DB0找到对应控制端口P0.0
将P0.0赋值为0 就可以让LED2点亮
2、程序代码
完整代码如下:
#include <reg52.h>
sbit ADDR0=P1^0;
sbit ADDR1=P1^1;
sbit ADDR2=P1^2;
sbit ADDR3=P1^3;
sbit ENLED=P1^4;
sbit LED2=P0^0;
void main()
ADDR0=0; //端口初始化
ADDR1=1;
ADDR2=1;
ADDR3=1;
ENLED=0;
while(1)
LED2=0;
本篇为记录学习过程,如有错误,欢迎指正。
以上是关于单片机的IO驱动LED灯电路,需要用到三极管,求原理图,并说明的主要内容,如果未能解决你的问题,请参考以下文章
想用一个mos管做开关,单片机的I/O口控制一个5V/3W的led灯,用p沟道好还是n沟道的好。应用电路是怎么样?