STM32CubeMX简介和安装使用方法

发布时间:2024-07-25  

一、STM32CubeMX 简介

1、STM32CubeMX 是 ST 意法半导体近几年来大力推荐的STM32 芯片图形化配置工具,目的就是为了方便开发者, 允许用户使用图形化向导生成C 初始化代码,可以大大减轻开发工作,时间和费用,提高开发效率。STM32CubeMX几乎覆盖了STM32 全系列芯片。


在CubeMX上,通过傻瓜化的操作便能实现相关配置,最终能够生成C语言代码,支持多种工具链,比如MDK、IAR For ARM、TrueStudio等 省去了我们配置各种外设的时间,大大的节省了时间。

wKgaomSANPiAYccfAALahSkJBh4975.jpg

安装CubeMx一共需要三个

JRE(Java Runtime Environment) Java运行环境 运行JAVA程序所必须的环境的集合

STM32CubeMX

HAL库STM32 HAL固件库 ST官方推出的另一套库

1安装JRE

由于 STM32CubeMX 软件是基于 JAVA 环境运行的,所以需要安装 JRE (Java Runtime Environment)才能使用,

1点击安装

wKgZomSANPmAFVrTAADbUf1zlP4670.jpg

2 修改路径 点下一步

wKgaomSANPmABLFTAAB8zYIxBYg616.jpg

3 等待安装完成,关闭界面

wKgZomSANPmAUM8sAACJ3cH_wZk812.jpg

2安装STM32CubeMX

官网下载:

wKgaomSANPmALvwYAAETTqfp6Fg667.jpg

在官网下载需要注册下ST官网账号,目前最新为5.3.0版本,不想在官网下可以在百度云盘下载,

1打开安装包

wKgZomSANPqAPjRKAAFgq_PUfdA825.jpg

2同意协议,下一步

wKgaomSANPqAaW7YAAKfMRvXLv0838.jpg

3 勾选第一个即可,第二个选项是是否同意ST公司收集你的个人使用信息等。

wKgZomSANPqAXIeBAAIM6x28XGE895.jpg

4 点YES 这句话是安装本软件可能会与文件夹之前文件冲突,导致文件夹之前文件丢失 是否继续

点继续即可

wKgaomSANPuAWVbWAAGvR3LGVPc794.jpg

5 直接点NEXT,其他不用设置 之后开始安装

wKgZomSANPuAQEgzAAHnUtHVZoA066.jpg

6 安装完成,点Done退出

wKgaomSANPuAPXQVAACuyhyPXHg596.jpg

3安装HAL库

什么是HAL固件库?

STM32 HAL固件库是Hardware Abstraction Layer的缩写,中文名称是:硬件抽象层。HAL库是ST公司为STM32的MCU最新推出的抽象层嵌入式软件,为更方便的实现跨STM32产品的最大可移植性。HAL库的推出,可以说ST也慢慢的抛弃了原来的标准固件库,这也使得很多老用户不满。但是HAL库推出的同时,也加入了很多第三方的中间件,有RTOS,USB,TCP / IP和图形等等。

和标准库对比起来,STM32的HAL库更加的抽象,ST最终的目的是要实现在STM32系列MCU之间无缝移植,甚至在其他MCU也能实现快速移植。

并且从16年开始,ST公司就逐渐停止了对标准固件库的更新,转而倾向于HAL固件库和 Low-layer底层库的更新,停止标准库更新,也就表示了以后使用STM32CubeMX配置HAL/LL库是主流配置环境;

HAL库,有在线安装、离线安装两种方式。

在线安装

打开安装好的 STM32CubeMX 软件 点上面的Help -> Manage embedded software packages

wKgZomSANPyAftPSAAQHdApXqfg134.jpg

会跳出来一个选择型号界面 勾选上你要安装的HAL库, 点击“Install Now” 直到安装成功。 如下图:

wKgaomSANPyAZBs9AAP9DK8Ouas996.jpg

离线安装

离线安装需要下载安装包,这里提供百度云和ST官方下载方式PS:建议在线安装 速度快,又稳定

软件下载旁边一栏就是HAL库下载 下载对应芯片的安装包

wKgZomSANPyAAxm7AACRL3xH_XY065.jpg

wKgaomSANP2AK8ouAAHxGCPVXsA766.jpg

1直接导入安装包 Help -> Manage embedded software packages ->From Local 选择离线包即可

wKgZomSANP2AS2bvAADgSnVR2l0412.jpg

2直接解压

Help->Updater Settings... 可以选择HAL库安装包路径,默认在C盘 可以自行修改

wKgaomSANP2AfsvVAAOsOUoXBIc543.jpg

解压到相对应路径即可

二、配置工程

打开Cube,选择对应芯片

wKgZomSANP-AJqwhAAHsyPmRPEE730.jpg

配置下载线:下载接口SW

wKgaomSANP-AdF8eAAGKEfo1zx8581.jpg

配置系统工作时钟:168MHZ

配置外部晶振

wKgZomSANP-AXMLmAAHqDh1Sz1U958.jpg

配置时钟树:

wKgaomSANQCAZ96SAANry5qQmnY740.jpg

配置IO:

wKgZomSANQCAZupNAAB38i_Nsc8288.jpg

LED4—PB5---通用推挽输出

LED5—PB4

LED6—PB3

选择引脚功能:

wKgaomSANQCAFop7AAHmUHoeeo4943.jpg

配置具体引脚功能:

wKgZomSANQGAS9DKAAHOpLSo1Tg113.jpg

配置keil工程:

wKgaomSANQGADxZwAAJ7EijpOrg579.jpg

wKgZomSANQKAZ60tAAJYpIKFVLQ798.jpg

生成工程

wKgaomSANQKATIC2AAHUddGg648160.jpg

wKgZomSANQKAA81fAABvBmD0W54165.jpg

可直接选择打开工程也可关闭后,在文件夹中手动打开

闪灯代码:

wKgaomSANQOAfqegAAIsTcW3uIU569.jpg

三、注意事项

(1)延时函数:可直接使用系统根据滴答定时器生成的HAL_Delay();

(2)中断的回调函数:

在CubeMX中配置的中断会在“stm32f4xx_it.c”中创建对应的中断服务程序,可在生成的函数预留位置处直接编程,如下:

wKgZomSANQOAfWZHAAHn4FZAs3E386.jpg

也可找到对应的回调函数,重写回调函数进行编程:

wKgaomSANQSAYuueAAGSglQSqX4832.jpg

重新写一个该函数即可,无需调用;

使用外设中断时:

CubeMX可以开启全局中断,NVIC分配优先级;

工程应用时:使能具体的中断操作,执行过中断任务后默认中断会关掉,需要做的是再次开启;如:串口接收中断

(3)代码编写区域,要在规定的范围内,否则重新生成的代码将会覆盖编写的代码,如:

/* USER CODE BEGIN 2 */

UASRT1_Init();

printf("初始化完成");

/* USER CODE END 2 */


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

我们与500+贴片厂合作,完美满足客户的定制需求。为品牌提供定制化的推广方案、专属产品特色页,多渠道推广,SEM/SEO精准营销以及与公众号的联合推广...详细>>

利用葫芦芯平台的卓越技术服务和新产品推广能力,原厂代理能轻松打入消费物联网(IOT)、信息与通信(ICT)、汽车及新能源汽车、工业自动化及工业物联网、装备及功率电子...详细>>

充分利用其强大的电子元器件采购流量,创新性地为这些物料提供了一个全新的窗口。我们的高效数字营销技术,不仅可以助你轻松识别与连接到需求方,更能够极大地提高“闲置物料”的处理能力,通过葫芦芯平台...详细>>

我们的目标很明确:构建一个全方位的半导体产业生态系统。成为一家全球领先的半导体互联网生态公司。目前,我们已成功打造了智能汽车、智能家居、大健康医疗、机器人和材料等五大生态领域。更为重要的是...详细>>

我们深知加工与定制类服务商的价值和重要性,因此,我们倾力为您提供最顶尖的营销资源。在我们的平台上,您可以直接接触到100万的研发工程师和采购工程师,以及10万的活跃客户群体...详细>>

凭借我们强大的专业流量和尖端的互联网数字营销技术,我们承诺为原厂提供免费的产品资料推广服务。无论是最新的资讯、技术动态还是创新产品,都可以通过我们的平台迅速传达给目标客户...详细>>

我们不止于将线索转化为潜在客户。葫芦芯平台致力于形成业务闭环,从引流、宣传到最终销售,全程跟进,确保每一个potential lead都得到妥善处理,从而大幅提高转化率。不仅如此...详细>>