如何实现stm32环境搭建

发布时间:2021-12-10 18:25:13 作者:柒染
来源:亿速云 阅读:369

这期内容当中小编将会给大家带来有关如何实现stm32环境搭建,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

MDK

http://www.keil.com/arm/mdk.asp

MDK-ARM(Microcontroller Development Kit) 是功能强大和常用的cortex-mx 开发环境。

其包含 µVision4 IDE,最新版本需要根据mcu的系列下载不同的pack包(http://www.keil.com/dd2/Pack/)以支持特定设备,目前stm32库开发方式有两种,一种是最新的cube方式,另一种是传统的标准库方式,如果使用前者,不需要下载其它东西即可,如果需要stm的标准库开发方式,还需单独下载st官方的标准库。

因为标准库方式之前比较主流,参考资源较多,这里先学习标准库方式。

官方标准固件库

链接

Home  》Embedded Software  》MCUs Embedded Software  》STM32 Embedded Software

首页 》    软件   》  微控制器软件   》  STM32微控制器软件

在灰色的导航中选择 STM32 standard peripherals library,然后根据需要的型号进入对应页面,在页面最底部提供软件下载地址(需要输入邮箱)

如何使用标准库

解压下载的标准库压缩包,目录结构如下:

├── _htmresc
├── Libraries
│   ├── CMSIS                                            符合cmsis规范的cortex核心驱动
│   └── STM32F4xx_StdPeriph_Driver        stm32外设驱动
├── Project
│   ├── STM32F4xx_StdPeriph_Examples   各外设使用例子有效代码(基于官方评估板)
│   └── STM32F4xx_StdPeriph_Templates   例子的公共部分模版
└── Utilities
    ├── Media
    ├── ST
    ├── STM32_EVAL                                     例子中可能用到的其它评估板代码
    └── Third_Party

上面是对基本目录的解释,另外根目录有个chm帮助文件,关于固件库的一切信息都可以在这个帮助里找到。

重要文件说明

File name

Description

stm32f4xx_conf.h

在stm32f4xx.h被引用(如果定义了宏USE_STDPERIPH_DRIVER)
位于库目录下的每个实例项目和模版目录,用于配置应用需要哪些外设驱动
This file can also be used to enable or disable the Library run-time failure detection before compiling the firmware library drivers, through the preprocessor define USE_FULL_ASSERT

stm32f4xx_ppp.h

stm32外设驱动头文件,位于Libraries\STM32F4xx_StdPeriph_Driver
This file includes the PPP peripheral function and variable definitions used within these functions.

stm32f4xx_ppp.c

stm32外设驱动,位于Libraries\STM32F4xx_StdPeriph_Driver

stm32f4xx_it.h

中断控制原型,位于库目录实例和模版目录,实例中没有被引用过

stm32f4xx_it.c

Template source file containing the interrupt service routine (ISR) for Cortex-M4F exceptions. User can add additional ISR(s) for the used peripheral(s) (for the available peripheral interrupt handler's name, please refer to the startup file startup_stm32f4xx.s).

 STM32F4xx CMSIS files

File name

Description

stm32f4xx.h

CMSIS 外设访问层文件,该文件是唯一需要在main.c文件中包含的库文件

该文件定义了所有外设的数据结构、地址映射、访问寄存器的宏,寄存器声明和位定义,在该文件末尾可通过注释或不注释#define USE_STDPERIPH_DRIVER来决定是使用库还是直接访问寄存器方式开发

位于Libraries\CMSIS\Device\ST\STM32F4xx\Include

  This file contains:

  • configuration section that allows to select:

-  the device used in the target application
             -  to change few application-specific parameters such as the HSE crystal frequency

system_stm32f4xx.h

CMSIS 外设访问层系统函数,如控制时钟、执行SystemInit

被stm32f4xx.h引用

位于Libraries\CMSIS\Device\ST\STM32F4xx\Source\Templates

system_stm32f4xx.c

CMSIS Cortex-M4F STM32F4xx devices peripheral access layer system source file.

startup_stm32f4xx.s

STM32F4xx 设备启动汇编文件,每个编译器需要一个

位于Libraries\CMSIS\Device\ST\STM32F4xx\Source\Templates\arm

 总结下,如果使用库开发方式,需要的文件如下,

startup_stm32f4xx.s 》stm32f4xx.h 》system_stm32f4xx、stm32f4xx_conf.h 》用户文件 》库驱动

需要在编辑器的c/c++宏定义中定义USE_STDPERIPH_DRIVER和使用的cpu型号宏(参考stm32f4xx.h中对芯片型号的定义),多个宏间用逗号分割

注意

虽然m3和m4库文件使用方式基本一样,但仍有些区别,如库文件目录结构和宏的名称

项目工程建立

需要从逻辑上分组,并将上述必须的文件添加进来,然后设置调试选型等

上述就是小编为大家分享的如何实现stm32环境搭建了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注亿速云行业资讯频道。

推荐阅读:
  1. STM32单片机IO中断实现步骤
  2. 如何实现Python与STM32通信方式

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

stm32

上一篇:Scala简化代码的方法是什么

下一篇:ESP8266开发中如何进行开发环境搭建

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》