什么是STM32CubeMX?(STM32代码生成器)

发布者:SparkCrafter最新更新时间:2021-06-16 来源: eefocus关键字:STM32CubeMX  STM32  代码生成器 手机看文章 扫描二维码
随时随地手机看文章

一、STM32CubeMX 介绍


STM32CubeMX 是 ST 意法半导体近几年来大力推荐的STM32 芯片图形化配置工具,通过自己对硬件的需要,进行选择,而后可以快速生成代码,减少开发人员的开发难度,时间和花销。STM32 覆盖整个STM32系列。


在我看来有如下优点:


大量的芯片(资源,价格介绍),方便对我们进行芯片选型


除了拥有芯片本身的外设选择外,还拥有一系列的中间件,如 RTOS, USB, TCP/IP等


对芯片的整体资源,以及时钟树有更深刻的认识


快速代码生成(对外设进行初始化),方便我们对我们的想法进行验证与开发


工程也可以进行更新(当增加外设时)


下面我们详细介绍一下以上优点:


大量的芯片(资源,价格介绍),方便对我们进行芯片选型

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FQapGBtd-1594825025494)(/image/芯片选择介绍.png)]

除了拥有芯片本身的外设选择外,还拥有一系列的中间件,如 RTOS, USB, TCP/IP等

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DbChwVzB-1594825025498)(/image/STM32图形资源介绍.png)]

对芯片的整体资源,以及时钟树有更深刻的认识


上面说了资源,这里看一下时钟树

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KX3m5E9S-1594825025500)(/image/STM32时钟树.png)]

快速代码生成(对外设进行初始化),方便我们对我们的想法进行验证与开发


生成的工程

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oUxB3syQ-1594825025504)(/image/生成的工程.png)]

快速生成的代码(简要说一下流程)


选择想要的资源,这里就以 USART 为例

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Vcvk36UI-1594825025506)(/image/以USART为例生成代码.png)]

时钟配置

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KPvcMLPI-1594825025508)(/image/STM32时钟树.png)]

生成的代码

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NvfbhTzb-1594825025510)(/image/生成的代码.png)]

接下来使用串口相关 API 进行调用就可以了

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-x5A01XGf-1594825025510)(/image/API调用.png)]

总结:


不过对初学者来说,可能会觉得头疼,毕竟对标准库进行二次封装,但是只要学会了,相信更容易进行编程


后续我还会继续分享STM32CuBeMX的相关操作,以及对库函数源码进行剖析,相信你会学到更多知识。

关键字:STM32CubeMX  STM32  代码生成器 引用地址:什么是STM32CubeMX?(STM32代码生成器)

上一篇:用 STM32 通用定时器做微秒延时函数(STM32CubeMX版本)
下一篇:STM32CubeMX之串口不定长数据接收(接收中断+空闲中断)

推荐阅读最新更新时间:2024-11-12 14:13

STM32 产品唯一身份标识寄存器(96位) 闪存容量寄存器
产品唯一的身份标识非常适合: ● 用来作为序列号(例如USB字符序列号或者其他的终端应用) ● 用来作为密码,在编写闪存时,将此唯一标识与软件加解密算法结合使用,提高代码在闪存存储器内的安全性。 ● 用来激活带安全机制的自举过程 96位的产品唯一身份标识所提供的参考号码对任意一个STM32微控制器,在任何情况下都是唯一的。用户在何种情况下,都不能修改这个身份标识。 这个96位的产品唯一身份标识,按照用户不同的用法,可以以字节(8位)为单位读取,也可以以半字(16位)或者全字(32位)读取。 un=(*( u16 *)0x1FFFF7E0); //闪存容量寄存器 printf( The Flash size: %d KB\r\n
[单片机]
<font color='red'>STM32</font> 产品唯一身份标识寄存器(96位) 闪存容量寄存器
STM32的GPIO输入输出模式配置
最近在看数据手册的时候,发现STM32的GPIO输入输出模式的配置种类有8种之多(输入和输入各4种): (1)GPIO_Mode_AIN模拟输入 (2)GPIO_Mode_IN_FLOATING浮空输入 (3)GPIO_Mode_IPD下拉输入 (4)GPIO_Mode_IPU上拉输入 (5)GPIO_Mode_Out_OD开漏输出 (6)GPIO_Mode_Out_PP推挽输出 (7)GPIO_Mode_AF_OD复用开漏输出 (8)GPIO_Mode_AF_PP复用推挽输出 我们平时接触的最多的也就是推挽输出、开漏输出、上拉输入这三种,但对于各种模式下IO口的内部电路和典型应用,STM32的数据手册中也未曾做过详细的说明和归纳
[单片机]
STM32中 关于液晶字符 表示字节数的计算规律
PCtolcd2002提字库的字节计算方法 原子程序里有字库字节的计算公式,如下 u8 csize=(size/8+((size%8)?1:0))*(size/2); 在使用PCtolcd2002字库提取软件提取字库时,是如图 从第一列开始向下每取8个点作为一个字节,最后向下不足8个点就补满作为一个字节,所以这个可以通过(size/8+((size%8)?1:0))计算出来表示一列需要的字节数,由于原子的提取的字库都是宽x2=高,如图 则宽度就是列数,是高的一半(size/2);则列字节数x列数=一个字符所占用的字节数。 可以改动公式为u8 csize=(size/8+((size%8)?1:0))*列数,这样可以适用于所有大
[单片机]
<font color='red'>STM32</font>中 关于液晶字符 表示字节数的计算规律
STM32定时器的几种用法
一、常用的定时功能 (1)基本、通用、高级定时器都有最基本的定时功能,定时功能用到的函数如下: HAL_ TI M_Base_Init 初始化定时,包括分频、 预装值等。 HAL_TIM_ConfigClockSource 选择定时器的 时钟 源 HAL_TIM_Base_Start_IT 开始定时器 HAL_TIM_PeriodElapsedCallb ac k 超时后的回调函数 (2)Cubemx的配置,不管什么定时器,都是这个配置,注意开启中断,计算好最终的定时器时钟 (3)代码片段 1 void MX_TIM12_Init(void) 2 { 3 TIM_ClockConfigTypeDef sClo
[单片机]
<font color='red'>STM32</font>定时器的几种用法
关于STM32中GPIO的8种工作模式
1 综述 I/O口是单片机中非常常用的外设,STM32的I/O口有8种状态,虽然一直在使用过程中没有遇到什么问题,但是一直都不是很清楚,因此这里做一个总结(实际上这里的概念也是和STM8等其他单片机,理解了这8中状态,也就基本上理解了大部分I/O口)。 2 庐山真面目 我们在库文件中的 stm32f10x_gpio.h 中可以看到如下代码: typedefenum { GPIO_Mode_AIN = 0x0, GPIO_Mode_IN_FLOATING = 0x04, GPIO_Mode_IPD = 0x28, GPIO_Mode_IPU = 0x48, GPIO_Mode_Out_OD = 0x14
[单片机]
关于<font color='red'>STM32</font>中GPIO的8种工作模式
stm32时钟初始化分析
之前在系统应用中都是直接用的void SystemInit (void)函数进行系统时钟的初始化,从来没有考虑怎样进行时钟初始化的细节,但是突然硬件时钟无法起振了,所以才考虑利用系统内部,stm32内部提供了一个8M的内部时钟,不是很准确,但是可以用。如果还是按照调用系统时钟的方法,程序运行起来会很慢,因为SystemInit函数运行之后如果硬件晶振无法启动,就是自动切换到HSI时钟启动,所以只能用8M的时钟,不能用PLL进行倍频。在网上找到一串内部晶振初始化的程序,先贴上。 void RCC_Configuration(void) { RCC_DeInit(); RCC_HSICmd(ENABLE); while(
[单片机]
STM32助你轻松解码数字电源设计
如果把处理器和传感器分别比作是电子设备的“大脑”和“五官”,那么电源管理就是电子设备的“心脏”,其重要性不言而喻。 物联网时代,功能越来越强大的服务器、通信设备等产品推动了半导体工艺技术不断升级,体积小、性能强大的芯片要求电源管理IC能提供更智能的控制环路、更快速的动态响应、更高的电压反馈精度以及更简化的外围电路布局设计。 面对这些要求,拥有集成度高、快速响应、设计灵活、可控性强等优势的数字电源技术备受青睐。 如何定义数字电源? 数字电源,以数字信号处理器(DSP)或微控制器(MCU)为核心,将数字电源驱动器、PWM控制器等作为控制对象,能实现控制、管理和监测功能的电源产品。它是通过设定开关电源的内部参数来改变其外特性
[单片机]
<font color='red'>STM32</font>助你轻松解码数字电源设计
STM32的看门狗使用方法
简介:stm32自带两个看门狗模块,独立看门狗IWDG和窗口看门狗WWDG。主要作用是——可用来检测和解决由软件错误引起的故障;当计数器达到给定的超时值时,触发一个中断(仅适用于窗口型看门狗)或产生系统复位。 具体的实现步骤:开启看门狗,设置减计数的初始值,当计数值达到超时值时,产生MCU复位,此时本来运行的程序终止重新启动单片机(发生了故障)。在使用了看门狗之后,在正常运行的程序中加入喂狗的程序,即采用定时器的方式每隔一段时间进行一次喂狗重置计数装载值,这样,只要程序正常运行,没有出现故障或软件错误,就会不断的定时喂狗,从而不会使计数值达到超时值产生复位。 独立看门狗IWDG: IWDG主要性能 ●自由运行的递减
[单片机]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved