51单片机开发板实验:点亮第一个LED灯

文字块标题
实验目标:点亮 LED模块的D1 指示灯。

一、硬件设计


在单片机开发板上有 8 个 LED 连接单片机 P2 IO 口上,具体电路如下图所示:

该电路即可实现 LED 实验,还可以实现交通灯实验(只需按照交通灯颜色摆放即可),所以我们也称该电路为 LED/交通灯电路。
从电路图可以看出,LED 控制管脚直接连接到 51 单片机的IO 上。LED 采用共阳接法,即所有 LED 阳极管脚接电源 VCC,阴极管脚通过一个
470 欧的限流电阻接到 P2 口上。根据前面 LED 的介绍我们知道,要让 LED 发光,即对应的阴极管脚就应该为低电平,若为高电平则熄灭。
如果要想 51 单片机控制 LED,就必须通过单片机管脚在 P2 IO 口上输出低电
平。

二、软件设计


观察上面的电路图,LED模块D1指示灯通过RP9限流电阻链接到单片机的P2口第0个引脚,因为电路采用共阳接法,即所有 LED 阳极管脚接电源 VCC,要让D1指示灯点亮,D1的阴极管脚应为低电平,因此在程序中需要让P20管脚输出低电平。

C语言实现代码:

sbit led1 = P2^0;
led1 = 0;

sbit定义了led1变量,该变量指向P2口的第0位,若执行语句led1=0; 则P1口的第0位被置为低电平。

三、编写程序


启动Keil软件后,创建一个新项目,选择单片机型号STC89C52RC。在项目中添加C语言源文件main.c。
在main.c文件内输入下面的源代码:

#include "reg52.h"
sbit led=P2^0; //将单片机的P2.0端口定义为led
void main()
{
led=0; //P2.0端口设置为低电平
while(1)
{

}
}

配置输出HEX文件
51单片机只能运行HEX或BIN文件,HEX是十六进制文件,英文全称为“hexadecimal”,BIN文件是二进制文件,英文全称为binary,这两种文件可以通过软件相互转换。若需要Keil编译后输出HEX文件,需要对Keil输出选项进行配置。在Keil工作窗口,展开【Project】菜单,选择“Options for Targets”命令,在弹出的对话框中,选择“Output”标签页,确定“Create Hex File”被选中。

四、下载程序


使用USB连接线将51单片机开发板链接至电脑。

启动下载程序软件PZ-ISP.exe,下载程序界面如下图所示:

下载程序启动后,会自动识别51单片机链接的串口号,芯片类型也会自动识别,芯片类型选择STC89C5xx-RC Series,其它选项采用默认参数即可。单击【打开文件】,程序弹出“打开”对话框,选择keil输出的HEX文件,即可下载HEX嵌入式程序到单片机,单片机会自动运行下载的程序。

上图为开发板运行程序后的情况,LED模块的D1指示灯被点亮。

想要更深入地学习物联网和嵌入式开发吗?为您推荐以下课程:
《物联网/嵌入式体系课》 - 系统学习,快速掌握物联网/嵌入式编程技能。
进入课程