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

相关文章

这15个Vue指令,让你的项目开发爽到爆

1. V-Hotkey 仓库地址: github.com/Dafrok/v-ho… Demo: 戳这里 https://dafrok.github.io/v-hotkey 安装: npm install --save v-hotkey 这个指令可以给组件绑定一个或多个快捷键。你想要通过按下 Escape 键后隐藏某个组件,按住 Control 和回车键再显示它吗?小菜一碟: <template

如何用Docker运行Django项目

本章教程,介绍如何用Docker创建一个Django,并运行能够访问。 一、拉取镜像 这里我们使用python3.11版本的docker镜像 docker pull python:3.11 二、运行容器 这里我们将容器内部的8080端口,映射到宿主机的80端口上。 docker run -itd --name python311 -p

在cscode中通过maven创建java项目

在cscode中创建java项目 可以通过博客完成maven的导入 建立maven项目 使用快捷键 Ctrl + Shift + P 建立一个 Maven 项目 1 Ctrl + Shift + P 打开输入框2 输入 "> java create"3 选择 maven4 选择 No Archetype5 输入 域名6 输入项目名称7 建立一个文件目录存放项目,文件名一般为项目名8 确定

Vue3项目开发——新闻发布管理系统(六)

文章目录 八、首页设计开发1、页面设计2、登录访问拦截实现3、用户基本信息显示①封装用户基本信息获取接口②用户基本信息存储③用户基本信息调用④用户基本信息动态渲染 4、退出功能实现①注册点击事件②添加退出功能③数据清理 5、代码下载 八、首页设计开发 登录成功后,系统就进入了首页。接下来,也就进行首页的开发了。 1、页面设计 系统页面主要分为三部分,左侧为系统的菜单栏,右侧

SpringBoot项目是如何启动

启动步骤 概念 运行main方法,初始化SpringApplication 从spring.factories读取listener ApplicationContentInitializer运行run方法读取环境变量,配置信息创建SpringApplication上下文预初始化上下文,将启动类作为配置类进行读取调用 refresh 加载 IOC容器,加载所有的自动配置类,创建容器在这个过程

Maven创建项目中的groupId, artifactId, 和 version的意思

文章目录 groupIdartifactIdversionname groupId 定义:groupId 是 Maven 项目坐标的第一个部分,它通常表示项目的组织或公司的域名反转写法。例如,如果你为公司 example.com 开发软件,groupId 可能是 com.example。作用:groupId 被用来组织和分组相关的 Maven artifacts,这样可以避免

2. 下载rknn-toolkit2项目

官网链接: https://github.com/airockchip/rknn-toolkit2 安装好git:[[1. Git的安装]] 下载项目: git clone https://github.com/airockchip/rknn-toolkit2.git 或者直接去github下载压缩文件,解压即可。

9.8javaweb项目总结

1.主界面用户信息显示 登录成功后,将用户信息存储在记录在 localStorage中,然后进入界面之前通过js来渲染主界面 存储用户信息 将用户信息渲染在主界面上,并且头像设置跳转,到个人资料界面 这里数据库中还没有设置相关信息 2.模糊查找 检测输入框是否有变更,有的话调用方法,进行查找 发送检测请求,然后接收的时候设置最多显示四个类似的搜索结果

Windows如何添加右键新建菜单

Windows如何添加右键新建菜单 文章目录 Windows如何添加右键新建菜单实验环境缘起以新建`.md`文件为例第一步第二步第三步 总结 实验环境 Windows7 缘起 因为我习惯用 Markdown 格式写文本,每次新建一个.txt后都要手动修改为.md,真的麻烦。如何在右键新建菜单中添加.md选项呢? 网上有很多方法,这些方法我都尝试了,要么太麻烦,要么不凑效

maven发布项目到私服-snapshot快照库和release发布库的区别和作用及maven常用命令

maven发布项目到私服-snapshot快照库和release发布库的区别和作用及maven常用命令 在日常的工作中由于各种原因,会出现这样一种情况,某些项目并没有打包至mvnrepository。如果采用原始直接打包放到lib目录的方式进行处理,便对项目的管理带来一些不必要的麻烦。例如版本升级后需要重新打包并,替换原有jar包等等一些额外的工作量和麻烦。为了避免这些不必要的麻烦,通常我们