【51单片机】点亮一个LED灯(看开发板原理图十分重要)

简介: 点亮一个LED灯(看开发板原理图十分重要)



🍔基础内容

🏳️‍🌈sbit:特殊功能位声明

sbit 变量名=地址值;在给某个引脚取名的时候经常会用到。如上面对LED管脚的定义sbit led=P2^0。


如下图,就可以声明为


P2^0        P2^1        P2^2        P2^3等


🏳️‍🌈注意

⭐声明引脚必须要按照电路原理图上面给的引脚来声明,比如P0^1就是错的

image.png

🎆方法一

使用sbit

🍔现象&&代码

🎊点亮一个

🎈现象

image.png

🎈代码

#include <REGX52.H>
sbit led=P2^0;     //将单片机的P2.0端口定义为led(当然也可以定义其他端口)
void main()      
{
  while(1)   
  {
    led=0;    //低电平
  }   
}

可以看到LED模块是共阳极的,所以引脚(P2^0)要为0(低电平)

🎊点亮两个

🎈现象

image.png

🎈代码

#include <REGX52.H>
sbit led1=P2^0;    //将单片机的P2.0端口定义为led(当然也可以定义其他端口)
sbit led2=P2^1;
void main()      
{
  while(1)   
  {
    led1=0;   //低电平
    led2=0;
  }   
}

🎊点亮三个

🎈现象


image.png

🎈代码

#include <REGX52.H>
sbit led1=P2^0;    //将单片机的P2.0端口定义为led(当然也可以定义其他端口)
sbit led2=P2^1;
sbit led3=P2^2;
void main()      
{
  while(1)   
  {
    led1=0;   //低电平
    led2=0;
        led3=0;
  }   
}

可以发现,声明不同的引脚,可以点亮不同的灯

🎆方法二

使用二进制

🍔现象&&代码

🎊点亮一个

🎈现象

image.png

🎈代码

#include <REGX52.H>
void main()      
{
  while(1)   
  {
    P2=0xFE;    
  }   
}

0xEF对应二进制1111 1110,最低位为0,所以P2.0 的输出被设置为低电平,其他位的输出都是高电平

🎊点亮两个

🎈现象

image.png

🎈代码

#include <REGX52.H>
void main()      
{
  while(1)   
  {
    P2=0xFE;  //1111 1110
        P2=0xFD;  //1111 1101
  }   
}

🏳️‍🌈总结(非常重要)

上面介绍了两种方式点亮LED灯,下面来说说一些注意事项


1.要看原理图,因为原理图上面的LED是P2的,所以如果写为P3=0xFE,就不能亮


2.sbit和使用二进制其实有一定的关联


比如P2=0xFE,对应二进制1111 1110,就是P2.0,和sbit led=P2^0是一样的

🥰如果大家有不明白的地方,或者文章有问题,欢迎大家在评论区讨论,指正🥰
8.5.png

相关文章
|
6月前
4-2 51单片机点亮LED
4-2 51单片机点亮LED
63 2
|
3月前
【51单片机】开发板上矩阵键盘键码在数码管上的显示,按下键盘在数码管上显示对应段码
【51单片机】开发板上矩阵键盘键码在数码管上的显示,按下键盘在数码管上显示对应段码
112 0
【51单片机】Kn独立按键控制【LED亮灭】【LED状态】【LED二进制式显示】【LED不断移位】(4)
【51单片机】Kn独立按键控制【LED亮灭】【LED状态】【LED二进制式显示】【LED不断移位】(4)
|
6月前
|
编译器 C语言 C++
【51单片机】LED的三个基本项目(LED点亮&LED闪烁&LED流水灯)(3)
【51单片机】LED的三个基本项目(LED点亮&LED闪烁&LED流水灯)(3)
|
6月前
|
存储 传感器 芯片
【51单片机】开发板和单片机的介绍(2)
【51单片机】开发板和单片机的介绍(2)
|
6月前
|
IDE 开发工具 C++
【51单片机】开发板&开发软件(Keil5&STC-ISP)简介&下载安装破译传送门(1)
【51单片机】开发板&开发软件(Keil5&STC-ISP)简介&下载安装破译传送门(1)
定时器+按键控制LED流水灯模式+定时器时钟——“51单片机”
定时器+按键控制LED流水灯模式+定时器时钟——“51单片机”
|
6月前
|
C语言
独立按键控制LED亮灭、独立按键控制LED状态、独立按键控制LED显示二进制、独立按键控制LED移位——“51单片机”
独立按键控制LED亮灭、独立按键控制LED状态、独立按键控制LED显示二进制、独立按键控制LED移位——“51单片机”
|
6月前
|
C语言
点亮一个LED+LED闪烁+LED流水灯——“51单片机”
点亮一个LED+LED闪烁+LED流水灯——“51单片机”
|
6月前
|
传感器 物联网 C语言
单片机在智能家居中的应用:以LED灯控制为例
单片机在智能家居中的应用:以LED灯控制为例
205 0
单片机在智能家居中的应用:以LED灯控制为例
下一篇
无影云桌面