单片机点亮发光二极管C代码

一.keil新建单片机工程

1.单击”project”选项中的“new uvision project”,输入工程名字。

单片机点亮发光二极管C代码

2.选择单片机型号,本系列以AT89C52单片机为对象,所以在Ateml中选择AT89C52,右上角的方框不需要打勾,默认即可。右下角的”Description”就是对AT89C52单片机的描述,包括8位单片机,定时器和IO口数量,Flash容量等基本信息。

单片机点亮发光二极管C代码

点击OK之后,会出来一个对话框,意思是是否拷贝启动代码到工程并添加文件,入门阶段我们的主要目的是熟悉单片机各个内置模块怎么使用,相应的C代码烧录后会有什么样的效果,这里我们选“否”就可以了。

单片机点亮发光二极管C代码

3.建好工程之后,接下来就是要新建文本文件编写C代码了,我们通过“File”下拉菜单中的“New”建立一个空白的文本,建好之后先保存,这里一定要注意保存文件时要写上后缀.c。(https://www.dgzj.com/ 电工之家)保存好之后鼠标右键单击“Source Group 1”,选择Add Files to Group ”Source Group 1“,选择刚刚新建的文本添加到工程即可。添加之后可以在左侧Target1里看到刚刚添加进去的文件。

单片机点亮发光二极管C代码

二.点亮一个发光二极管C代码

通过上面的步骤,一个完整的单片机keil工程就完成了。

从proteus中的原理图可以看出,要想让LED灯发光,那么P0.0需要低电平,这样LED中才会有电流通过,灯也就发光了(AT89C52单片机刚上电时IO口引脚是高电平)。因此在文本中敲入如下C代码:

#include “reg52.h”//包含头文件

sbit led = P0^0;

void main()

{

led = 0; //P0.0引脚低电平

}

单片机编程的时候,首先要包含相应单片机型号的头文件,如本系列单片机的头文件reg52.h。单片机的头文件定义了各个特殊寄存器的地址,如本例中设置P0.0为低电平,那么首先要知道P0的地址。通俗的说,我们要去某个仓库提货,首先得知道这个仓库在哪,单片机的头文件就像规划局一样,已经规划好了每个内置模块的地址。写好C代码之后,先得对目标工程进行设置,点击“Target Options,分别设置单片机晶振为11.0592MHz,以及勾选”Create HEX File“,HEX文件就是单片机能够识别的格式文件(HEX本意是16进制,HEX文件里的内容本质上是二进制0101等,只不过用16进制表示)。

单片机点亮发光二极管C代码

单片机点亮发光二极管C代码

编译之后将hex文件导入proteus中的AT89C52单片机,运行后可以看到LED灯变亮(由于proteus中的LED属性为黄灯,所以点亮之后LED为黄色,图中的红色表示该点为高电平,蓝色表示低电平),在第二课中会展示keil的编译步骤和proteus的入门操作。

单片机点亮发光二极管C代码