51单片机工程创建

一、文件夹的创建 

首先,我们创建一个工程文件夹,在该文件夹内建立4个文件夹,分别是HARDWARE、OBJ、SYSTEM和USER。HARDWARE文件夹下用于存放各种外设模块,如图2所示;OBJ文件夹用于存储编译产生的文件;SYSTEM文件夹中存放sys.c,用于定义引脚以及一些系统程序;USER文件夹中存放工程文件和main.c文件。

图1  工程文件夹​​​

 

图2  HARDWARE文件夹

二、工程的创建 

第一步,点Project,再点New uVision Project,新建一个工程。

 

第二步,给创建的工程命名,并存到USER文件夹中。 

 

第三步,给单片机选择型号,第2个是默认的一些单片机型号,第1个是STM32的一些型号,第3个是STC公司出品的单片机型号,第1个和第3个需要自己添加。

 

第四步,选择STC89C52单片机。

 

第五步,生成工程,下面这个点否,因为这个文件没啥作用。

 

第六步,点Manage Project Items,管理那些文件。 

 

第七步,更改项目名称以及可以创建其下子文件夹。

 

第八步,这里以LED流水灯工程为例,把项目名称改成LED,然后创建两个子文件夹,MAIN文件夹用来存放main.c文件,HARDWARE 文件夹中的LED子文件夹用来存放led.c和led.h文件。

 

 

第九步,把相应文件存到相应的文件夹中。

 

第十步,点Add File,把main.c添加到MAIN中,把led.c添加到HARDWARE中。

 

第十一步,可以看到添加后的效果如下。 

 

第十二步,点击那个烟花棒图标,在Target目录下把晶振改了(Debug时候能用到),我的开发板晶振是11.0592MHz。 

 

第十三步,在OutPut目录下把Create HEX File勾上,然后Select Folder for Ojects... 选择OBJ文件夹,用于储存编译产生的文件。 

 

第十四步,在Listing目录中Select Folder for Listings... 选择OBJ文件夹,同样来储存编译产生的文件。 

 

第十五步,在C51目录下载Include Paths中选择要包含的文件路径,注意要包含到最底一层。

 

 第十六步,由于流水灯代码较为简单,这里只包含了LED文件夹。

 

第十七步,右击我的电脑,点击管理,查看单片机与电脑连接的端口号。 

 

第十八步,这里我们可以看到端口号是COM5。 

 

在下载软件中选择正确的单片机型号和端口号,打开程序文件(在OBJ文件夹中) ,然后下载程序即可。

 

 三、流水灯示例

led.h

#ifndef __LED_H
#define __LED_H

#include<reg52.h>

sbit ADDR0 = P1^0;
sbit ADDR1 = P1^1;
sbit ADDR2 = P1^2;
sbit ADDR3 = P1^3;
sbit ENLED = P1^4;

void Led_Init();

#endif

 

led.c

#include"led.h"

void Led_Init()
{
	ENLED = 0;
	ADDR3 = 1;
	ADDR2 = 1;
	ADDR1 = 1;
	ADDR0 = 0;
}

 

main.c

#include<reg52.h>
#include<led.h>

typedef unsigned int u16;
typedef unsigned char u8;

void main()
{
	u16 i = 0;
	u8 cnt = 0;
	Led_Init();
	while(1)
	{
		P0 = ~(0x01 << cnt);
		for(i = 0; i < 20000; i++);
		cnt++;
		if(cnt >= 8)
		{
			cnt = 0;
		}
	}
}

 

©️2020 CSDN 皮肤主题: 创作都市 设计师:CSDN官方博客 返回首页