STC单片机点亮一个LED灯

这篇博客介绍了LED的基础知识,包括其工作原理和在电路中的符号表示。通过解析LED的原理图,解释了为何需要串联电阻以及如何通过单片机控制LED的亮灭。文中还提供了点亮和熄灭LED的驱动程序代码示例,并针对二极管反接的情况给出了解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

点亮第一个LED

1 . LED是什么

LED,发光二极管,是一种半导体固体发光器件。如图:

2 . LED工作原理

LED的符号为: LED的工作是有方向性的,只有当正级接到LED阳极(+),负极接到LED的阴极(-)的时候才能工作,如果反接LED是不能正常工作的。

3 . 看懂原理图

LED的原理图解析
      一共有八个led灯D1 - D8,开发板上面LED的原理图如上图,LED的阳极串联一个电阻,然后连接到电源VCC,而LED的阴极连接到单片机的P2口,如果你想点亮一盏LED就对把单片机相对应的IO赋为低电平。

如果来记住阳极,或阴极,发光二极管是这样的 剪头是阴极,就想一根管子一样,阳极流入阴极

如果要LED发光需要VCC为阳极(1) P2端口为阴极(0)才能发光.

为什么需要加电阻:因为需要给LED限流,LED有一个正常的工作电压和电流,如果不加入有可能会将我们的发光二极管给烧毁。

4 . 编写驱动程序

拐脚:就是STC上面的针孔:

在编写过程中如果没有看我前面写的《STC单片机 Keil4安装, 第一个程序》的话建议先去看一下 link:https://liwangjiang.blog.csdn.net/article/details/110355725

控制LED的时候我们需要用到P2拐脚,因为D1到D8对应的是 P2.0-P2.7的一个拐脚,首先我们需要通过sbit 来定义:

sbit 变量名 = 地址值;

#include "reg51.h"       //或者是 reg52.h
sbit LedP20 = P2^0;		 //表示Led P20拐脚的针
void main(){             //主函数
	while(1){            //一直运行
		LedP20 = 0;		 //等于0表示点亮
	}
}

这个代码是点亮D1的LED灯,表示点亮第一个灯 效果图如下:

二极管反过来接入,解封方案

如果我们的二极管是这样接入的:

我, 在代码里面LedP20 就只能等于1了,因为vcc接入的是阴极,那么拐脚只能等于阳极才能点亮,这是二极管反过来接入的代码:

#include "reg51.h"       //或者是 reg52.h
sbit LedP20 = P2^0;		 //表示Led P20拐脚的针
void main(){             //主函数
	while(1){            //一直运行
		LedP20 = 1;		 //等于1表示点亮
	}
}

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

达帮主

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值