音乐门户网站模板,网络营销核心要素,wordpress体验,网站开发目标开题报告相关文章#xff1a;
【HAL库】 STM32CubeMX 教程 1 --- 下载、安装 目录
第一部分、新建工程
第二部分、工程文件解释
第三部分、编译验证工程 友情约定#xff1a;本系列的前五篇#xff0c;为了方便新手玩家熟悉CubeMX、Keil的使用#xff0c;会详细地截图每一步Cu…相关文章
【HAL库】 STM32CubeMX 教程 1 --- 下载、安装 目录
第一部分、新建工程
第二部分、工程文件解释
第三部分、编译验证工程 友情约定本系列的前五篇为了方便新手玩家熟悉CubeMX、Keil的使用会详细地截图每一步CubeMX、Keil的操作并做上标记。之后的篇章仅截图主要步骤页面。希望新手玩家熟记本篇的基本操作。 第一部分、新建工程 步骤 8-1新建工程基于芯片型号 步骤 8-2搜索芯片型号
输入芯片型号在搜索列表里双击目标型号即可进入配置。 步骤 8-3配置Debug调试方式
最多人出问题、易漏易错的 4 项中这是其一; 养成习惯新建工程时先配置Debug选项, 即调试模式。默认是关闭的配置为Serial Wire通用STLink、JLink、CMSIS DAP等仿真器。如果忘了配置将会导致烧录一次程序后芯片无法再烧录按图中操作解锁芯片。 步骤 8-4设置晶振源
易漏易错的 4 项中这是其二; HSE外部高速晶振 Crystal/Ceramic ResonatorLSE 外部低速晶振用于实时时钟不使能以后用到时再打开CubeMX增加配置置。 步骤 8-5配置时钟树
下图参数通用STM32F407xx系列 。易漏易错的 4 项中这是其三; 特别是F4, 经常有人填错晶振值导致各种无法排查的问题。下图中 1、3 这两项值注意填写真实晶振值。可以查看晶振上丝印 也可以查看原理图。在配置F407芯片时软件上默认是25M的值但是市面上F407板子常用 8M、25M 这两种不同的晶振一定要注意区分。如果搞错了程序可能无法运行、通信失败等等。
晶振值输入分频输出倍频输出分频USB分频APB1分频APB2分频系统时钟8 或 25 8 或 253362742168MHz USB分频 平时是灰色不可选状态。当使能了USB功能时才会变成可设置状态。 步骤 8-6工程管理
进入工程管理页面这一页要设置3个地方工程名称、存放目录、开发环境。 易漏易错的 4 项中这是其四重点1工程生成位置、工程名称不能使用中文 否则生成时会缺少文件工程无效。重点2开发环境默认是EWARM改 MDK-ARM, 即Keil工程。重点3Stack Size, 栈空间大小改 0x1000。Heap Size, 默认除非你用到malloc申请空间。 栈空间大小 - Stack Size。 在单片机开发中栈空间大小是一个非常重要的概念。与Java、Python等高级语言不同单片机的内存资源非常有限通常只有几十K到几百K。因此开发者需要特别留意局部数组、变量等占用栈空间的大小避免栈溢出导致程序跑飞、卡死。 为避免以后无意间使用了大数组作为函数变量、函数传参或者要移植FreeRTOS、LVGL等功能在配置工程时先把Stack设置大一点有备无患。 注意栈溢出是编译时无法发现的这类bug较难排查。 步骤 8-7代码文件配置
打勾两个选项
标记2只复制需要的库文件, 可以有效控制代码体积。标记3为各种外设生成独立的C、h文件倘若不打勾外设的生成代码会堆在main.c中。 至此基础工程所需配置完毕。 步骤 8-8生成工程 稍等片刻会弹窗 操作技巧 在刚才的软件配置中我们使用的是英文的目录路径、英文的工程名称。工程在第一次生成时必须是英文路径、名称 。否则生成时会缺失文件。当工程生成后可以把工程文件夹修改成中文名称。也可以把工程文件夹复制到其它带中文的路径中存放方便管理。但是不能修改工程内的子文件夹名称、文件名称否则工程无法正常打开。 第二部分、工程文件解释 双击打开工程目录不管哪种STM32芯片, 文件结构都基本相同 这个目录下常用的是 ioc文件。
当需要修改工程配置、功能时双击这个蓝色 ioc 文件可再次进入CubeMX配置。
文件、文件夹解释
Core用户平时要编写的文件都在这文件夹里如main.cDrives芯片内核支持文件、 HAL库文件。都不用修改的MDK-ARM工程入口文件、仿真调试记录文件工程名称.iocCubeMX的配置文件双击它就可以再次对工程进行配置 而最常用的是 “MDK-ARM这个文件夹。
打开后如下图里面有一个绿色图标的 keil 工程文件。
平时就是通过它打开keil工程进行代码的编辑。 第三部分、编译验证工程 步骤 2-1打开工程 双击绿色图标的uvprojx文件进入keil工程。 Keil 常用按钮只有三、四个下图中圈出了它们的位置及标示了功能。 双击左侧文件管理器中的 Core 文件夹其下有最常用的main.c、it.c等文件。 双击main.c即可在代码编辑区中打开进行编辑。 步骤 2-2编译工程 无需做其它环境配置、参数设置。 点击工具栏的 “编译” 按钮即可对工程进行编译。 等待编译完成后信息中结果为:0 Error, 即表示CubeMX生成工程成功如下图 如果在CubeMX配置时使用了中文路径、名称就会出再各种错误如缺少启动文件等。 至此咱的第一个工程已成功地建成了 为了清晰界定每一项操作点亮LED、配置烧录器、烧录等等必备技能咱们拆篇再独立示范 CubeMX 与 Keil 的作用区分 CubeMX 配置工程; 生成指定功能的初始化代码、底层代码; Keil: 编写具体的业务代码。 其实用keil也能新建、配置工程编写初始化代码、底层代码。 但通过CubeMX来实现更直观、更省事。 CubeMX更大的意义在于当我们熟悉了一个型号芯片的操作后就能方便在其它型号的芯片间游走因为不同型号的芯片配置操作是大致相同的、生成的代码文件结构是相同的、函数名称是相同的。