在《51单片机编程学习笔记——点亮LED》一文中,我们直接使用教程中的编译结果点亮了第一个LED灯。本文我们将修改并编译一段代码,点亮第二个LED灯。
编程环境
一般情况下,开发板商家会提供开发相关的套件和资料。我们只要在这个资料中找到编译器安装包和破解程序(在目录下:5–开发工具\1-KEILC51软件),按照向导中步骤执行即可。
非破解版可以编译代码量小于2K的工程,而对超过2K的代码则会报错。为了避免以后的麻烦,我们可以购买正版或者破解它。
破解过程不表,可以在网上找到资料。需要注意的是,启动Keil时需要使用“管理员”权限。
工程编译
本例我们并不新建工程,而是直接打开《51单片机编程学习笔记——点亮LED》一文中“2-点亮第一个LED”下的工程。
具体步骤如下:
- 在Keil中选择“Project”下的“Open Project”
- 选择工程文件(后缀是uvproj)
然后我们看到如下代码
/**************************************************************************************
深圳市普中科技有限公司(PRECHIN 普中)
技术支持:www.prechin.net
PRECHIN
普中
实验名称:点亮第一个LED
接线说明:
实验现象:下载程序后“LED模块”的D1指示灯点亮
注意事项:
***************************************************************************************/
#include "reg52.h"
sbit LED1=P2^0; //将P2.0管脚定义为LED1
/*******************************************************************************
* 函 数 名 : main
* 函数功能 : 主函数
* 输 入 : 无
* 输 出 : 无
*******************************************************************************/
void main()
{
LED1=0; //LED1端口设置为低电平
while(1)
{
}
}
这段代码的编译结果就是前文中点亮第一个LED灯。
如果我们还想点亮第二个LED灯,则只要添加如下代码
……
sbit LED2=P2^1; //将P2.1管脚定义为LED2
……
LED2=0; //LED2端口设置为低电平
完整代码如下
/**************************************************************************************
深圳市普中科技有限公司(PRECHIN 普中)
技术支持:www.prechin.net
PRECHIN
普中
实验名称:点亮第一个LED
接线说明:
实验现象:下载程序后“LED模块”的D1指示灯点亮
注意事项:
***************************************************************************************/
#include "reg52.h"
sbit LED1=P2^0; //将P2.0管脚定义为LED1
sbit LED2=P2^1; //将P2.1管脚定义为LED2
/*******************************************************************************
* 函 数 名 : main
* 函数功能 : 主函数
* 输 入 : 无
* 输 出 : 无
*******************************************************************************/
void main()
{
LED1=0; //LED1端口设置为低电平
LED2=0; //LED2端口设置为低电平
while(1)
{
}
}
编译
选择“Project”下的“Build target”
可以在“Build Output”中看大编译过程
最后我们通过PZ-ISP将编译结果hex文件烧录到单片机上
可以看大第一个和第二个灯都被点亮了