51单片机点亮LED灯(程序+仿真)

1. 前言

点亮一个LED是每一位电子工程师的第一个程序,也是每一位工程师的必经之路,对于新手来说是一个也是一个挑战,这篇文章将带你进行点亮第一个LED以及LED灯的几个高级操作。开启你的工程师之路。

2. LED灯介绍

LED灯的本质就是一个会发光的二极管,具有和普通二极管相似的性质。我们在点亮LED时主要是使用了他的单向导电性,当正向导通时LED灯亮,反向导通时LED灭。

在正向导通时我们只要用单片输出高电平就可以点亮LED灯(默认LED的正极连接单片机),因为单片机引脚输出的电压为5伏足够点亮LED。了解LED灯之后我进行硬件电路图的搭建。

3.硬件仿真电路

使用 proteus 仿真软件建一个仿真电路,LED灯的正极连接到单片机的P20引脚。如下图所示
仿真图

4. 软件程序

4.1 点亮这颗LED灯程序

根据电路我们可以知道只要让单片机的 P20 引脚输出高电平就可以点亮LED。在程序中只需要将 P20 引脚输出 1 即可。

#include <reg52.h> //包含头文件
sbit led1 = P2^0;
main()            //主函数
{
	while(1)    //死循环
	{
		led1 = 1; //点亮P20引脚连接的灯
	}
}

4.2 LED灯闪烁程序

如果想让LED灯熄灭只需要让输出 P20 引脚输出 0 ,亮灭程序有了。那我们只要加一个延时,让LED灯的状态保持一段时间就可以了。只需要让单片机运行其他程序即可。比如延时函数,单片机引脚就会保持原来的电平。

#include <reg52.h> //包含头文件
sbit led1 = P2^0;


void Delay(int ms)  //延时函数根据变量 ms 可以确定延时多长时间
{
	int i,j;       //定义两个变量
	for(i=0;i<ms;i++)     //for循环语句
		for(j=0;j<110;j++); //延时1ms
}

main()            //主函数
{
	while(1)    //死循环
	{
		led1 = 0;    //点亮P20引脚连接的灯
		Delay(500);  //调用延时函数,延长500毫秒
		led1 = 1;    //熄灭P20引脚连接的灯
		Delay(500);  //调用延时函数,延长500毫秒
	}
}
  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值