IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> STM32CubeMX的安装以及使用实例 -> 正文阅读

[嵌入式]STM32CubeMX的安装以及使用实例

一、STM32CubeMX

1.简介

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

2.详细安装过程

安装STM32CubeMx一共需要三个安装3个板块:

  • JRE (Java Runtime Environment) Java运行环境 运行JAVA程序所必须的环境的集合
  • STM32CubeMX
  • HAL库 STM32 HAL固件库 ST官方推出的另一套库

(1)JRE安装

  • 进入官网:https://www.java.com/en/download/manual.jsp

  • 我的电脑是Windows系统64位,所以选择Windows Offline(64-bit),点击下载
    在这里插入图片描述

  • 下载好后,进入安装界面
    在这里插入图片描述

  • 点击更改来修改目标文件夹,修改好后点击下一步
    在这里插入图片描述

  • 正在安装
    在这里插入图片描述

  • 完成安装后,点关闭即可
    在这里插入图片描述

(2)STM32CubeMX安装

  • 进入官网:www.st.com/stm32cubemx

  • 点击Login,登录账号,没有则需注册
    在这里插入图片描述
    在这里插入图片描述

  • 选择自己需要的版本下载,我下载的是6.3.0,当前的最新版本
    在这里插入图片描述

  • 下载好后,点击打开安装包
    在这里插入图片描述

  • 进入安装界面,点击Next进入下一步
    在这里插入图片描述

  • 勾选Accept后,点击Next进入下一步
    在这里插入图片描述

  • 勾选第一个信息后,点击Next进入下一步(第二个信息是询问你是否同意公司收集你的信息)
    在这里插入图片描述

  • 点击Browse选择目标文件夹后,点击Next进入下一步
    在这里插入图片描述

  • 这是在提示你,安装本软件可能会与文件夹之前文件冲突,导致文件夹之前文件丢失,询问你是否继续,点击Yes即可
    在这里插入图片描述

  • 这一步直接点击Next进入下一步
    在这里插入图片描述

  • 正在安装
    在这里插入图片描述

  • 等待安装,安装好后点击Done退出,完成安装
    在这里插入图片描述

(3)HAL库安装

  • HAL库,有在线安装、离线安装两种方式
  • 此处我们只演示在线安装过程
  • 打开已经安装好的STM32CubeMX 软件,点上面的Help→Manage embedded software packages
    在这里插入图片描述
  • 选择你需要的HAL的版本和适用的芯片类型,并点击Install Now进行安装
    在这里插入图片描述
  • 正在安装
    在这里插入图片描述
  • 完成安装的情况
    在这里插入图片描述

二、实例——流水灯

1.利用STM32CubeMX生成工程文件,并生成代码

(1)新建工程

  • 打开STM32CubeMX,点击New Project建立新工程
    在这里插入图片描述

(2)选择MCU

  • 硬件我用的是STM32F103C8,所以Part Number中我选择的是STM32F103C8
    在这里插入图片描述
  • 选择好后,点击Start Project来开始工程
    在这里插入图片描述

(3)配置时钟

  • 接着我们来配置时钟,进入RCC 设置,选择 HSE(外部高速时钟) 为 Crystal/Ceramic Resonator(晶振/陶瓷谐振器)
    在这里插入图片描述
  • 点击进入 Clock Configuration 界面,配置系统时钟 SYSCLK 为 72MHz,修改 HCLK 的值为 72 ,回车后,软件会自动修改所有配置(注意圈出来的地方的信息)
    在这里插入图片描述

(4)配置调试模式

  • 点击进入SYS 设置,Debug 处设置为 Serial Wire
  • 在这里插入图片描述

(5)配置GPIO

  • 点击进入GPIO 设置,在右边图中找到 LED 灯对应的输出引脚,选择 GPIO_Output,这里我选的PA5、PA6、PA7为LED的端口
    在这里插入图片描述
  • 为管脚命名
    在这里插入图片描述

(6)工程配置以及代码生成

  • 点击进入project manager界面,输入项目名和项目路径,选择应用的 IDE 开发环境 MDK-ARM V5
    在这里插入图片描述
    注意:地址路径中不可包含中文目录

  • 点击 GENERATE CODE 生成代码
    在这里插入图片描述

2.代码完善

  • 找到刚才生成的main.c函数
    在这里插入图片描述
  • 双击打开main.c文件,发现里面只有初始化,需要我们进一步完善代码
    在这里插入图片描述
  • 自动生成的代码是由HAL库版本的代码,这里调用的函数是其已经编写好的函数,如下:
函数名称函数原型参数说明
(HAL_Delay)void HAL_Delay (__IO uint32_t Delay)Delay表示所要延时的时间大小,单位是毫秒
(HAL_GPIO_WritePin)void HAL_GPIO_WritePin (GPIO_TypeDef * GPIOx, uint16_t GPIO_Pin, GPIO_PinState PinState)GPIOx: 管脚组(x的取值为A~G)GPIO_Pin: 管脚编号(x的取值为0~15)PinState: 管脚的状态(取值为GPIO_BIT_RESET表示0, GPIO_BIT_SET表示1)
  • 完善代码如下:
HAL_GPIO_WritePin(GPIOA,GPIO_PIN_5,GPIO_PIN_SET);//将PA5设置为高电平
HAL_Delay(100);\\延时
HAL_GPIO_WritePin(GPIOA,GPIO_PIN_5,GPIO_PIN_RESET);//将PA5设置为低电平
HAL_Delay(100);\\延时
HAL_GPIO_WritePin(GPIOA,GPIO_PIN_6,GPIO_PIN_SET);//将PA6设置为高电平
HAL_Delay(100);\\延时
HAL_GPIO_WritePin(GPIOA,GPIO_PIN_6,GPIO_PIN_RESET);//将PA6设置为低电平
HAL_Delay(100);\\延时
HAL_GPIO_WritePin(GPIOA,GPIO_PIN_7,GPIO_PIN_SET);//将PA7设置为高电平
HAL_Delay(100);\\延时
HAL_GPIO_WritePin(GPIOA,GPIO_PIN_7,GPIO_PIN_RESET);//将PA7设置为低电平
HAL_Delay(100);\\延时

3.生成.hex文件

  • 找到用CubeMX生成的.uvprojx,双击打开
    在这里插入图片描述

  • 找到main.c后,双击打开
    在这里插入图片描述

  • 编译运行
    在这里插入图片描述

  • 编译成功
    在这里插入图片描述

  • 目录下出现.hex文件
    在这里插入图片描述

4.程序烧录及结果

  • 打开FlyMcu,找到需要的.hex文件,然后点击烧录
    在这里插入图片描述
  • 烧录结果
    请添加图片描述

三、Keil的软件仿真逻辑分析(波形图)

1.设置环境

  • 点击“魔法棒”进入设置界面
    在这里插入图片描述
  • 点击进入Debug界面后,调整3处地方,然后点击OK
    在这里插入图片描述

2.调试

  • 点击“Start/Stop…”进入调试界面
    在这里插入图片描述
  • 点击“Logic Analyzer”进行波形分析
    在这里插入图片描述
  • 点击左上角setup,弹出对话框,添加需要查看的波形的的引脚,点击右上角的添加输入(直接输入GPIOX_IDR.Y,X为选择的GPIO口号,Y为选择的引脚号,然后回车),再将Display Type改为Bit
    在这里插入图片描述

3.运行

  • 点击左上角的run,开始运行
    在这里插入图片描述

  • 产生的波形与期望中的波形相同,仿真成功
    在这里插入图片描述

四、总结

通过本篇博客,读者可以学习到如何安装STM32CubeMX以及如何使用STM32CubeMX进行代码的编写和输出波形的仿真,掌握了STM32CubeMX后,我们就可以更加轻松的进行程序的编写,不需要再为初始化或者编写函数而烦恼,有兴趣的读者可以在此基础上进行拓展,进一步地学习。本篇博客参考的资料已经列在下方,若存在博客没有涉及到的问题或者博客有纰漏,欢迎大家补充交流。

五、参考文献

【STM32】STM32 CubeMx使用教程一–安装教程
STM32实现LED闪烁——基于HAL库

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2021-10-28 12:32:33  更:2021-10-28 12:34:12 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 6:20:14-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码