一、创建系统工程
1、新建工程
点击project -> new project。
在弹出的对话框中,新建文件夹并设置文件夹名为工程名。之后进入新建的文件夹,设置工程保存路径、名称。
点击保存后,KEIL5自动弹出对话框,选择主控芯片。这里以STC89C52RC为例,先在最上面的下拉菜单中选择STC MCU Database,再去Search选项栏中搜索stc89c52rc关键词,选择对应的芯片型号。点击确定后,KEIL5还会提示是否要添加STARTUP.A51文件,可以先确定添加,等到有需要时,再删除或编辑STARTUP.A51文件。
2、设置文件夹
鼠标移到Target1上,右键Add Group,就能添加工程内的文件夹,用于方便区分文件功能。
鼠标移到New Group上,左击两次,这两次的间隔时间长一些,就会进入重命名文件夹模式。重命名文件夹为Lib,Lib文件夹存放支持库文件,一般为官方或第三方的 .c 和 .h 文件。
按照以上步骤新建工程内文件夹,重命名为Source,用于存放自己编辑的.c 和 .h 文件。
以上只是新建工程内文件夹,相当于只设置了下图Test_KeilC.uvproj文件,这些文件夹并不会同步在电脑硬盘中,即目前硬盘对应位置的文件夹如下图。
因此,需要手动添加硬盘文件夹。
3、配置系统
点击Options for Target,KEIL5自动弹出当前工程的配置对话框。
选择Output选项卡,选择Create HEX File,用于生成 .hex 文件,并为后续下载程序到主控芯片中提供支持。点击Select Folder for Objects即可查看当前 .hex 文件生成位置,选择其他位置即可修改 .hex 文件默认生成路径。
选择C51选项卡,点击Include Paths选项后侧的三个点,可以进入工程文件配置对话框。
工程文件配置对话框右侧四个按钮分别是:
- New (Insert) 添加新的工程文件路径;
- Delete 删除选中的文件路径;
- Move UP 上调选中的文件路径;
- Move Down 下调选中的文件路径;
通过以上四个按钮,将硬盘中的Lib和Source文件夹包含到工程中去。然后一直点击OK,退出所有对话框。
4、设置KEIL5软件
点击Edit -> Configuration,进入KEIL5软件设置对话框。
在KEIL5软件设置对话框中,点击Eidtor选项卡,设置Encoding为Encode in UTF-8 without signature。该项可以设置文件编码方式为UTF-8,方便工程文件跨设备传输不乱码;如果习惯使用KEIL5的CTRL+F查找功能,且习惯中文注释,那设置Encoding为Chinese GB2312(Simplified)。无论如何设置,建议所有文件采用相同的文件编码,且在工程中添加工程简介相关文档,说明本工程的文件编码信息。
在最下面有C/C++、ASM、Other三种文件的设置,建议三者都勾选Insert spaces for tabs,并将Tab size设置为4,同时勾选Show Line Numbers。这样可以将代码缩进的制表符Tab替换为4个空格,显示行数,方便阅读代码,且跨设备传输文件不跑版。
自此,成功新建并设置新工程。
二、编程建议
例如,在Lib文件夹中有REG52.H和lib.h,在Source文件夹中有main.c和test.h。如果想在main.c中包含REG52.H、lib.h和test.h,那么需要在main.c的 #include 后面加相对路径,如下图。这样编写出的系统工程,方便跨设备传输和移植,且最大可能地减少报错。下图是编辑好并编译完成的结果。