在进行项目软件开发时,为了方便管理,可将与项目有关的所有文件放在一个文件夹中。故启动Keil MDK5软件(以下简称Keil软件)前,先在计算机D盘根目录下(也可以选择其他位置)新建一个“寄存器方式点亮LED”文件夹,再在该文件夹中建立一个“User”文件夹,如图3-5所示。User文件夹用来存放用户编写的main.c、STM32F1启动文件、stm32f10x.h头文件等。
图3-5 在新建的“寄存器方式点亮LED”文件夹中再建立一个“User”文件夹
STM32单片机编程时需要启动文件startup_stm32f10x_hd.s,在安装芯片包时系统将该文件存放在Keil软件安装文件夹的Pack文件夹中,需要找到该文件并将其复制到User文件夹中。
在Keil软件安装文件夹中打开Pack文件夹(路径为C:\Keil_v5\ARM\Pack),如图3-6(a)所示。在窗口右上角的搜索框(可按F3键调出该搜索框)中输入启动文件名“startup_stm32f10x_hd.s”,系统马上在Pack文件夹中搜索该名称的文件,不久窗口中会显示找到的文件及其路径,如图3-6(b)所示。如果有多个相同名称的文件,一般选择体积最大的那个,将它复制到User文件夹中,如图3-6(c)所示。
图3-6 查找并复制启动文件
在“开始”菜单中找到并单击“KeilμVision5”,启动Keil软件,如图3-7(a)所示。执行菜单命令“Project”→“NewμVision Project”,如图3-7(b)所示,弹出如图3-7(c)所示的建立新工程对话框,将新工程命名为“DianliangLED”,保存到先前创建的“寄存器方式点亮LED”文件夹中。单击“保存”按钮后,弹出如图3-7(d)所示的单片机型号选择对话框,由于使用的单片机型号为STM32F103ZET6,故选择“STM32F103ZE”,如图3-7(e)所示。单击“OK”按钮,弹出在线添加固件库文件对话框,如图3-7(f)所示,在使用寄存器方式编程时不需要添加固件库文件,故单击“Cancel”按钮关闭该对话框。这样就在Keil软件中新建了一个名为“DianliangLED”的工程,如图3-7(g)所示,该工程还是一个空工程,没有程序文件。
图3-7 新建工程
图3-7 新建工程(续)
前面新建的工程还是一个空工程,需要建立程序文件并添加到工程中,然后在程序文件中编写程序。新建程序文件的操作如图3-8所示。
执行菜单命令“File”→“New”,新建一个默认名称为“Text1”的程序文件,如图3-8(a)所示;再执行菜单命令“File”→“Save As”,弹出如图3-8(b)所示的另存为对话框,将“Text1”更名为“main.c”并保存在User文件夹中。再用同样的方法新建一个默认名称为“Text2”的程序文件,将其更名为“Mystm32f10x.h”并保存在User文件夹中,如图3-8(c)所示。
图3-8 新建程序文件
前面建立的两个程序文件与工程还没有关联,需要将其导入工程。将程序文件导入工程的操作如图3-9所示,在左侧的“Source Group 1”文件夹上双击,弹出“Add Files to Group‘Source Group 1’”对话框,打开User文件夹,并在“文件类型”一栏选择“All files”,对话框中会显示User文件夹中所有的文件,如图3-9(a)所示。选择其中一个文件,再按“Ctrl+A”快捷键选择该文件夹中所有的文件,单击“Add”按钮,选择的文件将被导入工程的“Source Group 1”文件夹,如图3-9(b)所示。
图3-9 将程序文件导入工程