前言
本篇文章讲正式带大家开始学习51单片机,希望这些文章能够很好的帮助到大家学习51单片机。
一、LED原理图
一般的51单片机上都带有8个LED灯,这里8个LED灯分别接到了板子上面的P2.0-P2.7。
这里LED灯采用了共阳接法,共阳极就是发光二极管的正极连接在一起,这里的8个LED灯通过共阳接法接到了VCC(电源)。
当P2.0-P2.7中任意一个端口赋值为低电平时,发光二极管就会被导通,LED灯亮。
比如想要让D1亮,那么就让P2.0输出低电平,此时就可以将D1点亮。
这里补充一个知识:
一般VCC在编程中都被定义为逻辑1,而低电平或者GND都被定义为逻辑0。
所以上面让P2.0 = 0,就可以将D1点亮。
二、创建keil5工程
1.选择Project,然后选择第一个创建新的工程。
2.选择工程保存路径和文件名
3.芯片选择
选择完成后点击OK即可。
4.创建文件并保存
5.将创建好的文件加入工程中
添加成功后可以在Source Group 1里面看见添加好的LED.c文件。
6.勾选生成hex可执行文件
三、代码的编写
1.包含51单片机的头文件
学过C语言的都知道头文件的作用,这里就不多介绍。
#include <reg52.h>
2.主函数的编写
我们编写的代码都将在下面的main函数里面执行。
while(1)循环就是为了让代码不断的执行。
void main() { while(1) { } }
3.LED端口的定义
这里使用了sbit,sbit很多人学习51单片机时都不知道是什么意思,因为在平时学习C语言时是没有这个关键字的。
在C51里面添加有这个关键字,sbit是定义特殊功能寄存器的位变量。
使用sbit定义了相关的位后就可以对这个定义好的位进行直接操作了。
sbit LED0 = P2^0;
4.给LED端口赋值低电平点亮LED
LED0 = 0;
5.全部代码
#include <reg52.h> sbit LED0 = P2^0; void main() { while(1) { LED0 = 0; } }
四、程序的烧录
这里我使用的是普中的烧录软件,烧录起来还是非常方便快捷的。只需要选择对应的hex文件点击下载即可。
代码运行效果:
这里可以看到D1已经被点亮了。
总结
点亮LED的文章到这里就结束了,大家有什么疑问可以留言提问。