聊城做网站价位,切实加强门户网站建设,鄂州网站建设哪家好,小红书关键词排名STM32#xff08;HAL库#xff09; CubeMXKeil5 建立工程
目标选择
菜单栏 File 新建工程打开工程退出软件 Window 输出窗口的开启软件字体设置 Help 软件帮助文档检查软件更新管理MCU 已存在工程#xff08;Existing Projects#xff09; 最近打开过的工程(Recent Open…STM32HAL库 CubeMXKeil5 建立工程
目标选择
菜单栏 File 新建工程打开工程退出软件 Window 输出窗口的开启软件字体设置 Help 软件帮助文档检查软件更新管理MCU 已存在工程Existing Projects 最近打开过的工程(Recent Opened Project)打开其他已经存在的工程(Other Project) 新建工程(New Project) 基于芯片(Start My Project from MCU)基于ST官方开发板(Start My Project form ST Board)交叉选型 在STM32的产品线中筛选出一个芯片型号这个芯片型号与工程师曾经使用过的芯片型号性能和资源等方面最为接近便于工程师转换到STM32平台进行项目开发。 软件管理(Manage software installation) 检查软件更新以及MCU固件包的更新(Check for STM32CubeMX and embedded software packages updates)安装/卸载MCU固件包(Install or remove embedded software packages) 选择基于芯片的方式新建工程,进入芯片/开发板选择界面选择指定的芯片或开发板型号或者按照用户的需求比如处理器内核产品存储空间的大小片上外设资源等条件筛选出满足用户要求的芯片型号或开发板型号。标签页切换 芯片选择器MCU/MPU Selector 用于选择芯片型号 开发板选择器 (Board Selector) 用于使用ST官方的开发板 交叉选择器 (Cross Selector) 用于初次使用STM32微控制器的工程师进行硬件平台的转换 筛选器 直接输入芯片型号或开发板型号进行筛选利用处理器内核、产品系列、存储空间大小以及片上外设资源等组合条件进行筛选 芯片文档方便用户快速掌握芯片基本功能 芯片特性功能框图开发文档数据手册购买途径 芯片/开发板列表框 这里基于STM32F407ZGT6在芯片型号出输入STM32F407ZGT6并在芯片/开发板列表框选择对应芯片双击点击右上角Start Project即可建立工程。 引脚分配
导航栏 用于切换CubeMX的配置操作过程 Home 返回到启动界面STM32F411RETx 返回到目标选择阶段 生成代码GENERATE CODE 当用户完成CubeMX的所有配置后点击GENERATE CODE就可以生成初始化代码以及工程框架。 功能标签页 引脚分配及外设和中间件配置PinoutConfiguration系统时钟配置Clock Configuration工程设置 Project Manager系统功耗估算 Tools 当用户的应用与低功耗相关时可以进行Tools标签页的设置而一般的应用只需要进行前三个功能标签页设置即可。 PinoutConfiguration 类别栏用于外设及中间件配置芯片引脚图用于引脚分配 在芯片引脚图上用不同的颜色来代表了引脚的功能比如电源用黄色来表示复位引脚和BOOT引脚用卡其色来表示GPIO引脚用灰色来表示复位状态 放大/缩小/旋转缩略图 查找引脚 用引脚搜索框来快速定位我们所需要进行分配的引脚。在引脚搜索框输入要分配的引脚名称例如PA5对应引脚将会闪烁. 选择引脚功能 单击PA5将弹出PA5引脚所用有的引脚功能选择GPIO_Output.此时引脚将变为亮绿色并且引脚的标签将显示为GPIO_Output. 外设配置
System Core:用于配置GPIO、时钟源、中断系统以及其他系统相关的外设Analog用于配置模数转换器ADC和数模转换器DACTimers用于配置定时器和实时时钟外设Connectivity用于配置I2C、SPI和UART等连接外设Multimedia用于配置I2S等音频数据传输外设Computing用于配置CRC校验外设Middleware用于配置RTOS和GUI等中间件 配置时钟模式 在System Core找到RCC点击RCC进入时钟模式配置窗口。 在配置窗口的上方有两个箭头可以展开或收起配置窗口 时钟模式的配置一共有三种选项 Disable内部时钟HSI和LSI 片内的RC振荡器提供时钟信号 一般存在5%左右的误差一般不选用 BYPASS Clock Source旁路时钟 外部的时钟信号作为时钟源Crystal/Ceramic Resonator晶振/陶瓷振荡器 外部的振荡电路产生时钟信号 本次不使用实时时钟模块故对于LSE32.768KHZ不进行设置。完成时钟模式配置之后对应的引脚将变为亮绿色同时引脚的功能将设置为OSC_IN和OSC_OUT 配置调试接口 在System Core找到SYS点击SYS进入调试配置窗口。使用Serial Wire串行调试接口 依据使用的仿真器情况选择此时对应的调试接口引脚将变为亮绿色引脚功能将变为SWDIO和SWCLK作为调试接口的数据引脚和时钟引脚 配置GPIO 在System Core找到GPIO点击GPIO进入GPIO配置窗口。选择GPIO标签页在出现的GPIO列表中选择PA5单击PA5将进入PA5引脚配置窗口。 配置GPIO参数 初始电平 GPIO output level引脚模式 GPIO mode上/下拉电阻 GPIO Pull-up/Pull-down引脚速度 Maximum output speed引脚名称 User Label 时钟配置
Clock Configuration 在这个标签页中以时钟树的形式完整地展示了STM32微控制器的时钟系统方便用户快速了解STM32微控制器的时钟系统。 时钟源模块 外部低速时钟LSE32.768KHz 主要提供给片内的RTC实时时钟由于在之前的外设配置中我们没有配置LSE因此这里显示灰色。 内部低速时钟LSI32KHz 主要提供给片内的RTC实时时钟模块和看门狗模块 内部高速时钟HSI16MHz 主要提供给系统时钟使用 外部高速时钟HSE 振荡模式4MHz~26MHz晶振旁路模式1MHz~50MHz信号 直接接入外部的1MHz~50MHz时钟信号作为时钟源 主要提供给系统时钟使用 时钟配置步骤 修改时钟源频率 选择外部高速HSE时钟作为时钟源并修改时钟源频率 选择锁相环输入时钟 选择锁相环输入时钟为HSE 选择系统时钟源 选择PLLCLK为系统时钟源 锁相环输出的时钟精度更高稳定性更好 设置HCLK时钟频率 一般设置为系统最高支持的主频 工程配置
Project Manager Project 工程管理Code Generator 代码生成Advanced Settings 高级设置 工程管理 工程名称工程路径 完成工程名称和工程路径设置后将自动在CubeMX文件夹下新建一个名为Demo的文件夹 选择IDE MDK-ARM V5Keil 5 代码生成设置 库函数的设置 复制所有的库到用户的工程中 需要经常查阅库函数的源代码故需要复制所有库 复制必要的库到用户的工程中不进行库的复制而是将库作为引用参考 生成文件设置 片内外设初始化将采用独立的.c/.h文件完成 HAL库设置 将所有没有使用的引脚设置为模拟功能可以优化系统功耗使能断言语句提升程序健壮性同时代码量也会增加 模板设置 高级设置 对片内的外设所使用的库函数进行选择可以选择HAL库或者LL库默认选择HAL库在Function Name中列出了由CubeMX所生成的外设初始化函数的名称比如MX_GPIO_Init就是对GPIO进行初始化的函数如果用户不想使用由CubeMX生成的初始化函数可以在Not Generate Function Call中勾选对应的函数。是否使用CubeMX所生成外设初始化函数 生成工程 点击GENERATE CODE就可以生成基于MDK-ARM集成开发环境的工程正确生成工程之后将弹出一个对话框 如果工程文件未打开则选择“Open Project”之后就会转到Keil5如果工程已打开则选择“Close” 参考的成电应电科协 觉得老师讲得很好 就记下来了