网络上提供的教程和实际有很大出入,实操中遇到了很多问题并且会变复杂(可能适用于老版本的Keil),非常不适合入门。 我花了3天时间整理出如下资料。希望对大家有所帮助。另外,本文中如果有错误或需改善的地方,欢迎留言,谢谢!
–>pack包下载链接点这里
正常界面如下,使用浏览器的ctrl+F功能快速搜索到对应的系列进行下载。 如果网页打不开,或者找不到下载包的地方,解决方法请点击这里。 我使用的芯片是STM32F103C8T6,所以下载的是下图中第一个文件(下载后的是zip文件,不是pack包。我下载了另一个系列,也是这样的)。 只需要把后缀名zip改为pack。然后双击打开安装即可。这里我是全程手动创建的项目,被网上的资料带跑偏了,删了又可惜,还是留着把。快速创建项目请转至大佬的博文(点这里)
准备工作:解压刚才下载的zip文件。文件夹内容如下。
开始创建项目。 找个地方创建一个文件夹,作为项目目录。然后给它取个好听的名字(我这里命名为了"demo")。
把刚才pack包里面 名叫“Device”的文件夹复制进去。 “Device”文件夹中的文件功能如下。后续开发,主要使用第三个文件夹里面的函数库。
项目目录下,打开Device\Source\ARM。这里面保存的是程序启动文件,只能保留一个,需要根据自己的MCU型号进行选择。 我使用的是stm32F103C8T6,只需保留如下文件。
文件名后缀代表的含义
后缀含义备注hd高密度产品FLASH 256KB ~512KB ,H:highmd中密度产品FLASH 64KB~128KB,m:middleld低密度产品FLASH 16KB ~32 KB ,l:lowcl互联型产品stm32f105/107系列vl超值型产品stm32f100系列xl高密度型产品stm32f101/103系列在Keil5的安装目录中,搜索以下三个文件,都复制到项目的 Device\Include文件夹中。 (1)cmsis_armcc.h (2)cmsis_compiler.h (3)cmsis_version.h (4)core_m3.h (5)RTE_Components.h
在项目的根目录下,再新建一个USER文件夹,用于存放自己的代码。
打开Keil5,新建项目,位置选择刚才创建的demo文件夹。然后i给项目取个名字,保存一下。
选择芯片系列号,点击ok。
这个界面用于配置文件的,我们是手动复制粘贴,所以直接点ok跳过。
点击积木一样的图标,中间部分新建以下分组。 其中CMSIS组用于存放启动文件。把Device文件夹下的所有文件全部添加进去(点击右下角的【Add Files】即可添加文件)。
FWLIB组用于存放官方的函数库。 把Device文件夹里面“inc”、“src”以及 “templates”三个文件夹中的所有内容添加进去。(templates这个文件夹里面的内容其实可以移动到USER文件夹下,它里面的文件用于配置项目的基本参数和中断程序) USER组用来存放自己的文件,这里只要新建这个分组就行 。 **另外注意:**选择文件的时候,文件类型要选择ALL files,不然无法包括全部文件。
注意:“STM32F10X_MD”这个参数需要按照flash内存大小来选择的,可参照如下规则: 256 ~512 Kbytes:输入系列号_HD,如STM32F10X_HD 64 ~128 Kbytes :输入系列号_MD,如STM32F10X_MD 16 ~32 Kbytes :输入系列号_LD,如STM32F10X_LD 3. 【c/c++】的include Paths中,把项目中所有目录全部包含进去 4. 【debug】选项中,暂时先选择【模拟调试】用于确保Keil5配置完毕。 5. 编写测试文件。 (1)新建一个main.c的文件, (2)输入一个简单的代码,按CTRL+S保存到USER文件夹里面 (3)添加到项目中的USER组。 6.点击编译按钮,出现如下提示,说明项目配置完成了