背景
时间2022年5月29日,继上篇文章使用IAR平台创建华大HC32F460单片机工程,今天使用KEIL平台创建,特此记录一下。
开发平台
KEIL5
新建工程
分为4个步骤:1、准备工作。2、新建工程。3、添加文件。4、配置工程。
上篇文章已经新建了IAR工程,我们在同个文件夹下创建KEIL工程。
1、准备工作
首先,我们要知道,创建一个华大工程需要哪些文件 ,这些文件都在华大驱动库文件包中,可以在华大官方网站下载。
1、内核标准文件和系统配置文件
2、启动文件
3、驱动库文件
4、烧录算法文件
我们先来认识一下华大驱动库包下的文件功能。注意,华大提供的包是没有M4内核标准文件的,ST提供的驱动库包是有的,就是CORE文件夹。
再来看看我们已经新建过IAR工程的都有哪些文件。
主目录
app目录,这些文件时从华大示例 程序hc32f46x_ddl_Rev1.3.1\example\gpio\gpio_output\source目录下拷贝过来的。IAR和KEIL通用。
CMSIS目录。这些文件是从 华大驱动库包hc32f46x_ddl_Rev1.3.1\mcu目录下拷贝过来的,该目录待会儿我们只需要再拷贝KEIL的烧录算法文件即可。common文件是IAR和KEIL通用。
Driver目录。这些文件是从华大驱动库包hc32f46x_ddl_Rev1.3.1\driver目录下拷贝过来的驱动库文件,KEIL和IAR通用。
Project目录,已经创建了IAR工程,待会儿我们只需要再创建一个KEIL工程即可。
工作开始 。
复制华大驱动库包KEIL烧录算法文件到我们的CMSIS目录下。
在Project目录下创建KEIL文件夹用于存放KEIL工程所有文件。
去华大示例代码下随便找一个MDK工程,复制启动文件到我们刚刚创建的MDK工程目录下。
安装芯片支持包。可以在华大官方网站下载。
OK准备完毕。
2、新建工程
打开KEIL5,新建工程,保存在我们刚刚创建的MDK目录。
选择芯片型号。我们这里用的是HC32F460JETA,48pin,512KFLASH,192KRAM。
勾选内核标准组件。注意,华大驱动库包是没有提供标准内核文件的,不论是华大还是ST单片机,使用的内核文件都是通用的,这里有两种方法,1、勾选内核组件。2、复制ST库的CORE M4内核标准文件。本次我们直接选择方法1。
方法1。直接选择KEIL提供的组件。
方法2 。复制ST库的内核标准文件到我们的CMSIS目录下,注意HC32F4是M4内核。
3、添加文件
向工程添加文件夹。
向工程添加文件。
4 、配置
包含头文件路径,需要包含App、CMSIS\common、driver\inc,三个头文件路径。在声明几个宏定义HC32F46x、USE_DEVICE_DRIVER_LIB,声明的目的是型号选择编译,否则编译报错。
编译优化配置。华大驱动库中断的特点是回调函数调用,而编译器是会优化掉一些认为不用的函数的,所以我们要屏蔽优化回调函数。
使用KEIL下载程序和Debug烧录配置。我们使用的是JLINK的SWD模式 。
输出HEX配置。
点击OK,编译。 OK完毕。
总结:
使用KEIL新建华大单片机工程相对IAR来说简单许多,因为KEIL可以安装华大芯片支持包,省去了烧录算法文件的配置步骤,可能是我学艺不精,不知道IAR也可以安装芯片支持包,知道的请告诉我一声哦。细心的同学肯定发现刚刚我们移植的CMSIS目录下的MDK算法文件没有用到,当然你也可以用上。如下
结语
至此,我们分别使用IAR平台和KEIL平台创建华大单片机HC32F460工程已经完毕,而且在同个目录下,以后不管使用哪个平台开发都很方便啦!!!