STM32CubeMX和HAL库-新建项目

2024-09-08 11:12
文章标签 项目 stm32cubemx 新建 hal

本文主要是介绍STM32CubeMX和HAL库-新建项目,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

新建项目

选择开发板

 MCU图形化配置界面总览

MCU配置


新建项目

新建项目包含选择MCU创建项目、选择开发板新建项目和交叉选择MCU新建项目三部分。 1. 选择MCU创建项目 单击主菜单项File→New Project,或Home视图上的ACCESS TO MCU SELECTOR 按钮,都可以打开的New Project from a MCU/MPU对话框。该对话框用于新建项目,是STM32CubeMX的3个主要视图之一,用于选择MCU或开发板以新建项目。 图3-7所示的是MCU/MPU Selector界面,用于选择MCU。

界面有如下几个功能区域。 (1)MCU/MPU Filters区域,用于设置筛选条件,缩小MCU的选择范围。有一个局部工具栏,一个型号搜索框,以及各组筛选条件,如Core、Series、Package等,单击某个条件可以展开其选项。 (2)MCUs/MPUs List区域,通过筛选或搜索的MCU列表,列出了器件的具体型号、封装、Flash、RAM等参数。在这个区域可以进行如下的一些操作。 ① 单击列表项左端的星星图标,可以收藏条目(★)或取消收藏(☆)。 ② 单击列表上方的Display similar items按钮,可以将相似的MCU添加到列表中显示,然后按钮切换标题为Hide similar items,再单击就隐藏相似条目。 ③ 单击右端的Export按钮,可以将列表内容导出为一个Excel文件。

④ 在列表上双击一个条目时就以所选的MCU新建一个项目,关闭此对话框进入项目管理视图。 ⑤ 在列表上单击一个条目时,将在其上方的资料区域里显示该MCU的资料。 (3)MCU资料显示区域,在MCU列表里单击一个条目时,就在此区域显示这个具体型号MCU的资料,有多个界面和按钮操作。 ① Features界面,显示选中型号MCU的基本特性参数,界面左侧的星星图标表示是否收藏此MCU。 ② Block Diagram界面,会显示MCU的功能模块图,如果是第一次显示某MCU的模块图,会自动从网上下载模块图片并保存到软件库根目录下。 ③ Docs&Resources界面,这个界面显示MCU相关的文档和资源列表,包括数据手册、参考手册、编程手册、应用笔记等。单击某个文档时,如果没有下载,就会自动下载并保存到软件库根目录下;如果已经下载,就会用PDF阅读器打开文档。

④ Datasheet按钮,如果数据手册未下载,会自动下载数据手册然后显示,否则会用PDF阅读器打开数据手册。数据手册自动保存在软件库根目录下。 ⑤ Buy按钮,用浏览器打开ST有限公司网站上的购买界面。 ⑥ Start Project按钮,用选择的MCU创建项目。 图左侧的MCU/MPU Filters框内是用于MCU筛选的一些功能操作,上方有一个工具栏,有4个按钮。 (1)Show favorites按钮,显示收藏的MCU列表。单击MCU列表条目前面的星星图标,可以收藏或取消收藏某个MCU。 (2)Save Search按钮,保存当前搜索条件为某个搜索名称。在设置了某种筛选条件后可以保存为一个搜索名称,然后再单击Load Searches 按钮时选择此搜索名称,就可以快速使用以前用过的搜索条件。

(3)Load Searches按钮,会显示一个弹出菜单,列出所有保存的搜索名称,单击某一项就可以快速载入以前设置的搜索条件。 (4)Reset all filters按钮,复位所有筛选条件。 在此工具栏的下方有一个Part Number Search编辑框,用于设置器件型号进行搜索。可以在文本框里输入MCU的型号,例如STM32F103,就会在MCU列表里看到所有STM32F103xx型号的MCU。 MCU的筛选主要通过下方的几组条件进行设置。 (1)Core(内核),筛选内核,选项中列出了STM32支持的所有Cortex内核。 (2)Series(系列),选择内核后会自动更新可选的STM32系列列表,图3-9只显示了列表的一部分。

(3)Line(产品线),选择某个STM32 系列后会自动更新产品线列表中的可选范围。例如,选择了STM32F1系列之后,产品线列表中只有STM32F1xx的器件可选。 (4)Package(封装),根据封装选择器件。用户可以根据已设置的其他条件缩小封装的选择范围。图3-11是封装列表的一部分。 (5)Other(其他),还可以设置价格、IO引脚数、Flash大小、RAM大小、主频等筛选条件。

选择开发板

用户还可以在New Project from a MCU/MPU窗口里选择开发板新建项目,其界面如图3-12所示。STM32CubeMX目前仅支持ST官方的开发板。

交叉选择MCU新建项目 New Project from a MCU/MPU对话框的第三个界面是Cross Selector,用于交叉选择MCU新建项目,界面如图所示。

在图中,左上方的Part Number Search部分用于选择原有MCU的厂家和型号,厂家有NXP、Microchip、ST、TI等,选择厂家后会在第二个下拉列表框中列出厂家的MCU型号。选择厂家和MCU型号后,会在下方的Matching ST candidates(500)框中显示可选的STM32MCU,并且有一个匹配百分比表示了匹配程度。

 MCU图形化配置界面总览

选择一个MCU创建项目后,界面上显示的是项目操作视图。因为本书所用开发板上的MCU型号是STM32F103ZET6,所以选择STM32F10ZET6新建一个项目进行操作。这个项目只是用于熟悉STM32CubeMX软件的基本操作,并不需要下载到开发板上,所以可以随意操作。读者选择其他型号的MCU创建项目也是可以的。 新建项目后的工作界面如图所示,界面主要由主菜单栏、标签导航栏和工作区三部分组成。 窗口最上方的主菜单栏一直保持不变,标签导航栏现在有3个层级,最后一个层级显示了当前工作界面的名称。导航栏的最右侧有一个GENERATE CODE按钮,用于图形化配置MCU后生成C语言代码。工作区是一个多页界面,有4个工作界面。

(1)Pinout&Configuration(引脚与配置)界面,这是对MCU的系统内核、外设、中间件和引脚进行配置的界面,是主要的工作界面。 (2)Clock Configuration(时钟配置)界面,通过图形化的时钟树对MCU的各个时钟信号频率进行配置的界面。 (3)Project Manager(项目管理)界面,对项目进行各种设置的界面。

     (4)Tools(工具)界面,进行功耗计算、DDR SDRAM适用性分析(仅用于STM32MP1系列)的操作界面。

MCU配置

引脚与配置界面是MCU图形化配置的主要工作界面,如图所示。这个界面包括 Component List(组件列表)、Mode &Configuration(模式与配置)、Pinout view(引脚视图)、System view(系统视图)和一个工具栏。 1.    组件列表 位于工作区左侧的是MCU可以配置的系统内核、外设和中间件列表,每一项称为一个组件(Component)。组件列表有两种显示方式:分组显示和按字母顺序显示。单击界面上的Categories或A->Z页标签就可以在这两种显示方式之间切换。 在分组显示状态下,主要有如下的一些分组(每个分组的具体条目与MCU型号有关,这里选择的MCU是STM32F103ZE)。

(1) System Core(系统内核),有DMA、GPIO、IWDG、NVIC、RCC、SYS和WWDG。 (2) Analog(模拟),片上的ADC和DAC。 (3) Timers(定时器),包括RTC和所有定时器。 (4)Connectivity(通信连接),各种外设接口,包括CAN、ETH、FSMC、I2C、SDIO、SPI、UART、USART、USB_OTG_FS、USB_OTG_HS等接口。 (5) Multimedia(多媒体),各种多媒体接口,包括数字摄像头接口DCMI和数字音频接口12S。 (6) Security(安全),只有一个RNG(随机数发生器)。 (7) Computing(计算),计算相关的资源,只有一个CRC(循环冗余校验)。

(8) Middleware(中间件),MCU固件库里的各种中间件,主要有FatFS、FreeRTOS、LibJPEG、LwIP、PDM2PCM、USB_Device、USB_Host等。 (9) Additional Software(其他软件),组件列表里默认是没有这个分组的。如果在嵌入式软件管理窗口里安装了STM32Cube扩展包,例如在3.2.2节演示安装了 TouchGFX,那么就可以通过图3-14中Pinout &Configuration页标签下菜单栏上的Additional Software按钮打开一个对话框,将TouchGFX安装到组件面板的Additional Software分组里。 在初始状态下,组件列表的各个项前面没有任何图标,在对MCU的各个组件做一些设置后,组件列表的各个项前面会出现一些图标(见图3-15),表示组件的可用性信息。因为MCU引脚基本都有复用功能,设置某个组件可用后,其他一些组和可用标记件可能就不能使用了。这些图标的意义如表所示。

这篇关于STM32CubeMX和HAL库-新建项目的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1147949

相关文章

一文教你如何将maven项目转成web项目

《一文教你如何将maven项目转成web项目》在软件开发过程中,有时我们需要将一个普通的Maven项目转换为Web项目,以便能够部署到Web容器中运行,本文将详细介绍如何通过简单的步骤完成这一转换过程... 目录准备工作步骤一:修改​​pom.XML​​1.1 添加​​packaging​​标签1.2 添加

tomcat多实例部署的项目实践

《tomcat多实例部署的项目实践》Tomcat多实例是指在一台设备上运行多个Tomcat服务,这些Tomcat相互独立,本文主要介绍了tomcat多实例部署的项目实践,具有一定的参考价值,感兴趣的可... 目录1.创建项目目录,测试文China编程件2js.创建实例的安装目录3.准备实例的配置文件4.编辑实例的

PyCharm如何设置新建文件默认为LF换行符

《PyCharm如何设置新建文件默认为LF换行符》:本文主要介绍PyCharm如何设置新建文件默认为LF换行符问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录PyCharm设置新建文件默认为LF换行符设置换行符修改换行符总结PyCharm设置新建文件默认为LF

springboot集成Deepseek4j的项目实践

《springboot集成Deepseek4j的项目实践》本文主要介绍了springboot集成Deepseek4j的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价... 目录Deepseek4j快速开始Maven 依js赖基础配置基础使用示例1. 流式返回示例2. 进阶

SpringBoot项目启动报错"找不到或无法加载主类"的解决方法

《SpringBoot项目启动报错找不到或无法加载主类的解决方法》在使用IntelliJIDEA开发基于SpringBoot框架的Java程序时,可能会出现找不到或无法加载主类com.example.... 目录一、问题描述二、排查过程三、解决方案一、问题描述在使用 IntelliJ IDEA 开发基于

SpringBoot项目使用MDC给日志增加唯一标识的实现步骤

《SpringBoot项目使用MDC给日志增加唯一标识的实现步骤》本文介绍了如何在SpringBoot项目中使用MDC(MappedDiagnosticContext)为日志增加唯一标识,以便于日... 目录【Java】SpringBoot项目使用MDC给日志增加唯一标识,方便日志追踪1.日志效果2.实现步

Ubuntu中Nginx虚拟主机设置的项目实践

《Ubuntu中Nginx虚拟主机设置的项目实践》通过配置虚拟主机,可以在同一台服务器上运行多个独立的网站,本文主要介绍了Ubuntu中Nginx虚拟主机设置的项目实践,具有一定的参考价值,感兴趣的可... 目录简介安装 Nginx创建虚拟主机1. 创建网站目录2. 创建默认索引文件3. 配置 Nginx4

SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法

《SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法》本文主要介绍了SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法,具有一定的参考价值,感兴趣的可以了解一下... 目录方法1:更改IDE配置方法2:在Eclipse中清理项目方法3:使用Maven命令行在开发Sprin

Nginx实现高并发的项目实践

《Nginx实现高并发的项目实践》本文主要介绍了Nginx实现高并发的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录使用最新稳定版本的Nginx合理配置工作进程(workers)配置工作进程连接数(worker_co

Vue项目的甘特图组件之dhtmlx-gantt使用教程和实现效果展示(推荐)

《Vue项目的甘特图组件之dhtmlx-gantt使用教程和实现效果展示(推荐)》文章介绍了如何使用dhtmlx-gantt组件来实现公司的甘特图需求,并提供了一个简单的Vue组件示例,文章还分享了一... 目录一、首先 npm 安装插件二、创建一个vue组件三、业务页面内 引用自定义组件:四、dhtmlx