用keil开发STM32流程 | 您所在的位置:网站首页 › stm32f103c8t6工程模板 › 用keil开发STM32流程 |
前期准备: 1.keil V5 MDK-ARM 2.固件库V3.5.0(STM32F10x_StdPeriph_Lib_V3.5.0) 3.STM32F103C8T6最小系统板 4.J-Link烧写器 下面进行开发环境的搭建 下载固件库,进行解压,大概了解一下,然后关闭。 接着新建或找到自己的工作空间(建立工作空间的目的是便于储存不同开发环境下的工程) 新建工程模板(名称根据自己喜好安排) 在文件夹中新建四个文件夹 第一个文件夹ASM。存放与单片机相关的汇编文件,里面是与单片机启动相关的内容 在固件库\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm 根据单片机的情况选择,STM32F103C8T6属于中容量 这里可以全部复制过来,在工程配置时选择 第二个文件夹LIB。存放固件库源码与头文件 在固件库\Libraries\STM32F10x_StdPeriph_Driver路径下的inc和src都复制过来 第三个文件夹System。存放内核相关、中断入口定义、一些重要的头文件 这些文件在 固件库\Libraries\CMSIS\CM3\CoreSupport 固件库\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x 固件库\Project\STM32F10x_StdPeriph_Template 第四个文件夹USR。存放开发者自己的源码 新建一个文本文档 重命名为main.c 如果有提示选择“是” 到这里工程文件已经准备齐全,打开Keil进行工程的软件配置 点击新建工程New uVision project 选择刚才的路径\KeilMDKWorkSpace\STM32F103Project打开 写上文件名,一般和工程的文件夹名一致。这里写STM32F103Project,保存 弹出器件选择提示框 在Search快速搜索:F103C8 (1)发现并没有搜索结果,说明没有安装相关器件库,继续安排 (2)有搜索结果,点击此处跳转阅读。 打开Pack Installer 在Search快速搜索:STM32F103C8 在右侧的Packs中可以看到keil::STM32F1xx_DFP 点击Install,进行安装 当右下角100%时下载完成 Up to date为灰色时说明安装了最新的器件库 关闭页面后,会有是否重新加载提示。选择“是” 返回上边,新建工程New uVision project,按以上流程进行会搜索到结果 如果搜索到了结果会有如下显示,选中点击“OK” 继续点击“ok” 点击项目目录规划 选择对应名称文件会出现这样,点开文件类型选Asm Source files 选中适合当前单片机容量的启动文件,STM32F103C8T6属于中容量,进行添加:Add(点一下就OK) 添加完成后 是这个样子的 USR文件夹Add System文件夹Add LIB文件夹把inc和src中的都Add
点击OK,项目文件夹就添加好了 点击项目配置按钮:Options for Target... 在Target选项中,更改主频。ARM Compiler选择 Use default compiler version 5 在Output选项中勾选创建十六进制文件: Create HEX file 在C/C++选项中,配置宏:STM32F103X_MD,USE_STDPERIPH_DRIVER 宏参数1根据单片机容量填写,大容量(HD),STM32F103C8T6为中容量(MD),所以是STM32F103X_MD 宏参数1与参数2用(英文半角逗号)隔开。 在C/C++选项中,设置 头文件 的路径 Include Paths 在Debug选项中,选择调试工具J-Link等,选好之后点击:Setting 在Setting里的Degug选项。选择Jlink的连接模式,JTAG或SW。这里根据单片机的实际连接选择 在Setting的Flash Download选项中。勾选:Reset and Run 并确定 在Utilities选项中去掉 调试前更新:Update Target before Debugging 并添加输出文件到USR,点击OK 打开main.c文件 编写测试代码,并点击编译按钮 如果出现以下错误 说明逗号用错了,把中文逗号改为 英文半角逗号(,) 点击OK 再次编译(快捷键F7),会提示 0错误,0警告: 这说明,我们的开发环境没问题了 把单片机和仿真器连接好,单片机供电。BOOT0置0,BOOT1置0置1都可。(进入Flash) 点击下载程序:Download 可以看到程序下载完成 到这里就可以开发自己的程序了。 需要注意的是: 采用库函数开发时,最好用到那部分内容再添加到工程中,例如用到adc就把adc.c 添加到工程中。 固件库模块声明在STM32f10x_conf.h中 没有用到的部分注释掉,可以在编译程序时加快编译效率。
本教程内容大多搬运自CSDN优秀原创作者“年纪青青”,并非本人原创。 在结合了实践,经历了可能出现的错误后。本文把流程和某些错误的解决办法一起写下,更加适合 新手上路。 原文链接:STM32F10x在Keil环境下的配置 CSDN优秀作者主页:年纪青青 如有侵权请联系本文作者,第一时间删除博文并致歉。
|
CopyRight 2018-2019 实验室设备网 版权所有 |