当前位置:首页 > 单片机 > 单片机
[导读]本文主要由两部分组成,一是STM32开发环境MDK-ARM的介绍及安装,一是STM32官方库文件的下载与配置。一、开发环境安装(一)开发环境简介KEIL公司目前有四款独立的嵌入式软件开发工具,即MDK、KEIL C51、KEIL C166、K

本文主要由两部分组成,一是STM32开发环境MDK-ARM的介绍及安装,一是STM32官方库文件的下载与配置。

一、开发环境安装

(一)开发环境简介

KEIL公司目前有四款独立的嵌入式软件开发工具,即MDK、KEIL C51、KEIL C166、KEIL C251,它们都是KEIL公司品牌下的产品,都基于uVision集成开发环境,其中MDK是RealView系列中的一员。而MDK-ARM、KEIL MDK、RealView MDK、KEIL For ARM,都是同一个东西,ARM公司现在统一使用MDK-ARM的称呼。

KEIL MDK开发工具源自德国 Keil 公司,被全球超过 10 万的嵌入式开发工程师验证和使用,是ARM公司目前最新推出的针对各种嵌入式处理器的软件开发工具。KEIL MDK 集成了业内最领先的技术,包括μVision5集成开发环境与RealView 编译器。支持ARM7、ARM9和最新的Cortex-M3/M1/M0 内核处理器,自动配置启动代码,集成Flash 烧写模块,强大的 Simulation设备模拟,性能分析等功能,与ARM之前的工具包ADS等相比,RealView编译器的最新版本可将性能改善超过20%。KEIL MDK出众的价格优势和功能优势,已经成为ARM软件开发工具的标准,目前,KEIL MDK在国内ARM开发工具市场已经达到90%的占有率。在此使用最新的5.4版本。


从上图可以看出,MDKCore又分成四个部分:uVisionIDE with Editor(编辑器),ARMC/C++ Compiler(编译器),PackInstaller(包安装器),uVisionDebugger with Trace(调试跟踪器)。uVision IDE从MDK4.7版本开始就加入了代码提示功能和语法动态检测等实用功能,相对于以往的IDE改进很大。SoftwarePacks(包安装器)又分为:Device(芯片支持),CMSIS(ARMCortex微控制器软件接口标准)和Mdidleware(中间库)三个小部分,通过包安装器,我们可以安装最新的组件,从而支持新的器件、提供新的设备驱动库以及最新例程等,加速产品开发进度。同以往的MDK不同,以往的MDK把所有组件到包含到了一个安装包里面,显得十分“笨重”,MDK5则不一样,MDKCore是一个独立的安装包,它并不包含器件支持和设备驱动等组件,但是一般都会包括CMSIS组件,大小350M左右,相对于MDK4.70A的500多M,瘦身不少。另外值得一提的是,在MDK5安装完成后,要让MDK5支持STM32F103的开发,我们还需要安装STM32F1的器件支持包:Keil.STM32F1xx_DFP.1.0.5.pack(STM32F1的器件包)。

(二)开发环境安装

1 下载MDK5集成开发环境

(1)官网下载

(2)第三方下载

(3)网上破解版

2 安装集成开发环境

(1)点击可执行文件,弹出如下页面


(2)选择安装路径,如下所示,最好不要中文路径


(3)最后弹出如下界面,说明CMSIS和MDK中间软件包已经成功,下面的进度指示程序在自动从KEIL的官网下载各种支持包(如果支持包下载失败,则执行下一步)


(4)下载并安装STM32F1xx支持库,在此选择STMicroelectronics%20STM32F1%20Series%20Device%20Support,%20Drivers%20and%20Examples

3%20如果是破解版,进行破解

二、STM32固件库

%201STM32库下载,选择STSW-STM32054,STM32F10x%20standard%20peripheral%20library

%202%20解压后,得到如下的文件目录


Libraries标准外设库包括CMSIS%20和STM32F10x_StdPeriph_Driver。CMSIS%20是独立于供应商的Cortex-M%20处理器系列硬件抽象层,为芯片厂商和中间件供应商提供了简单的处理器软件接口,简化了软件复用工作,降低了Cortex-M%20上操作系统的移植难度,并减少了新入门的微控制器开发者的学习曲线和新产品的上市时间。STM32F10x_StdPeriph_Driver则包括了分别对应包括了所有外设对应驱动函数,这些驱动函数均使用C语言编写,并提供了统一的易于调用的函数接口,供开发者使用。

Project文件夹中则包括了ST官方的所有例程和基于不同编译器的项目模板,这些例程是学习和使用STM32的重要参考。

Utilities包含了相关评估板的示例程序和驱动函数,供使用官方评估板的开发者使用,很多驱动函数同样可以作为学习的重要参考。

%203%20STM32库使用架构

STM32F10xxx标准外设库体系结构如图下图所示。图中很好的展示了各层以及具体文件之间的联系



图中各文件的具体功能如下表所述

文件名

功能描述

具体功能说明

core_cm3.h

core_cm3.c

Cortex-M3内核及其设备文件

LibrariesCMSISCM3CoreSupport

访问Cortex-M3内核及其设备:NVIC,SysTick等

访问Cortex-M3的CPU寄存器和内核外设的函数

stm32f10x.h

微控制器专用头文件

LibrariesCMSISCM3DeviceSupport

STSTM32F10x

这个文件包含了STM32F10x全系列所有外设寄存器的定义(寄存器的基地址和布局)、位定义、中断向量表、存储空间的地址映射等

system_stm32f10x.h

system_stm32f10x.c

微控制器专用系统文件

LibrariesCMSISCM3DeviceSupport

STSTM32F10x

函数SystemInit,用来初始化微控制器

函数Sysem_ExtMemCtl,用来配置外部存储器控制器

startup_stm32f10x_Xd.s

编译器启动代码

LibrariesCMSISCM3DeviceSupport

STSTM32F10xstartuparm

微控制器专用的中断处理程序列表(与头文件一致)

stm32f10x_conf.h

固件库配置文件

ProjectSTM32F10x_StdPeriph_Template

通过更改包含的外设头文件来选择固件库所使用的外设,在新建程序和进行功能变更之前应当首先修改对应的配置。

stm32f10x_it.h

stm32f10x_it.c

外设中断函数文件

ProjectSTM32F10x_StdPeriph_Template

用户可以相应的加入自己的中断程序的代码,对于指向同一个中断向量的多个不同中断请求,用户可以通过判断外设的中断标志位来确定准确的中断源,执行相应的中断服务函数。

stm32f10x_ppp.h

stm32f10x_ppp.c

外设驱动函数文件

LibrariesSTM32F10x_StdPeriph_Driver

包括了相关外设的初始化配置和部分功能应用函数,这部分是进行编程功能实现的重要组成部分。

Application.c

用户文件

用户程序文件,通过标准外设库提供的接口进行相应的外设配置和功能设计。

4 STM32外设库配置

(1)新建目录,新建应用工程目录,并从外设库中添加如下文件。

目录

概述

复制目录及文件

User


main.c

Sys


ProjectSTM32F10x_StdPeriph_Template stm32f10x_it.h

ProjectSTM32F10x_StdPeriph_Templatestm32f10x_it.c

ProjectSTM32F10x_StdPeriph_Templatestm32f10x_conf.h

LibrariesCMSISCM3DeviceSupport

STSTM32F10xstm32f10x.h

LibrariesCMSISCM3DeviceSupport

STSTM32F10x system_stm32f10x.h

LibrariesCMSISCM3DeviceSupport

STSTM32F10x system_stm32f10x.c

Lib

STM32库函数

LibrariesSTM32F10x_StdPeriph_Driver/src

LibrariesSTM32F10x_StdPeriph_Driver/inc

Core

系统文件

LibrariesCMSISCM3DeviceSupport

STSTM32F10xstartuparmstartup_stm32f10x_ld.s

LibrariesCMSISCM3CoreSupport core_cm3.h

LibrariesCMSISCM3CoreSupport core_cm3.c

Bin

编译生成文件



(2)新建工程,新建应用工程

(3)文件配置


打开项目管理界面

修改项目选项(可选)

对应(1)中的目录,添加文件组

在文件组中,添加(1)中文件夹对应的源文件



%205%20项目配置

(1)目标配置


(2)输出配置

(3)宏定义及头文件引用


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭