现在我们就来大略理解一下按键检测和LED驱动电路。
1、按键检测电路图1是按键检测电路。该电路图包含两种电路:

图1 按键检测电路

一种是连接按键的单片机端口在按键未按下时,处于低电平状态,当按键按下后,单片机端口变为高电平,也便是说,当单片机端口检测到端口电平由低电平变为高电平后,可以判断为按键按下。
另一种是连接按键的单片机端口在按键未按下时,处于高电平状态,当按键按下后,单片机端口变为低电平,也便是说,当单片机端口检测到端口电平由高电平变为低电平后,可以判断为按键按下。
这种按键检测电路的缺陷是没有防抖动功能,以是要实现消抖功能,必须通过单片机软件编程实现。
其余,电路中的电阻的浸染是为了保护端口,避免电源直接连到单片机端口导致的烧毁端口情形发生。
2、带消抖功能的按键检测电路图2是带消抖功能的按键检测电路,同样的,带消抖功能的按键检测电路也分为按键平时处于高电平还是低电平两种。我们以按键未按下时处于高电平,按下后处于低电平为例来理解一下电路事理。
图2 硬件消抖电路
当按键断开时,电源电压通过电阻对电容充电,电容上的电压与电源电压相等,当按键按下时,由于按键内阻很小,电容通过按键迅速放电,按键两端电压迅速降到靠近0V,单片机输入端为低电平,在按键按下时,由于抖动导致按键会短时断开,电源电压经电阻对电容充电,由于电阻的阻值较大,短韶光内电容充电量很少,以是电容两端电压基本不变,单片机输入真个电平也基本保持不变,从而担保了按键抖动时仍可以使单片机输入端保持稳定的低电平旗子暗记。
这种硬件消抖电路须要根据实际情形选择R和C的值,详细请参考我在头条里的文章《基于proteus的51单片机开拓实例(7)--按键的检测》。
3、大略的LED驱动电路图3是一种大略的LED驱动电路。这两个电路一个是LED发光时,电流经由LED流到单片机端口,俗称“灌电流”驱动LED,另一种是LED发光时,电流经由单片机端口流到地,俗称“拉电流”驱动LED。
图3 LED驱动电路
这种电路的缺陷是:单片机的驱动能力有限,一样平常单片机端口驱动电流能力在10mA以下,并且单片机总的驱动电流一样平常不超过100mA。以是当单片机电路中电路模块较多时,可能会导致驱动能力不敷,因此这种办法只适宜在学习和实验时,不适宜用在单片机产品中。
4、通用LED驱动电路图4,图5是常用的LED驱动电路。在这两个电路中,单片机端口实际上相称于开关的功能,当单片机输出高(或者低)电平时,LED点亮(或者熄灭);当单片机输出低(或者高)电平时,LED熄灭(或者点亮),驱动LED发光所需的电流由三极管供应,单片机端口只卖力掌握三极管的导通或者截止就可以了。
图4 LED驱动电路1
图5 LED驱动电路2
5、LED驱动芯片
现在有很多专用的LED驱动芯片,可以直接驱动多路LED,至于LED驱动芯片的电路,每种芯片有各自特点,这里就不多说了。










