• 嵌入式开发--CubeMX使用入门教程


    嵌入式开发–CubeMX使用入门教程

    CubeMX简介

    传统的单片机开发时,需要针对片上外设做各种初始化的工作,相当麻烦。
    CubeMX是ST公司出品的一款图形化代码生成工具,通过图形化界面,可以非常直观的配置好各种片上外设,时钟,中断,DMA等等各种设备的参数,然后CubeMX可以直接生成初始化代码,使得开发人员可以将更多的精力放在核心代码的开发上。
    生成的代码选择性适配IAR,KEIL,以及ST自家的STM32CubeIDE(免费)

    初始界面

    打开软件后就是这个界面
    在这里插入图片描述

    最左边是之前打开过的工程,中间是生成新项目的方式,右边是软件安装选项。
    按箭头说明一下:
    1:通过选择一款MCU来生成工程,一般用这个。
    2:通过选择一款ST的开发板来生成工程,对于手里有ST开发板,想要学习开发板例程的,可以选择这个。
    3:通过实例来生成工程,这个实例就是开发板已经实现的例程的名字,比如我想学习SPI接口,那么就可以通过这个打开,然后再选择ST开发板,和第2项是一回事。
    4:检查更新
    5:安装和删除软件包。每一款单片机都是需要安装对应的支持包才行的,可以从这里安装,删除或更新软件包。

    生成工程

    下面我们生成一个计算CRC的工程,用到的片子是STM32G030C8T6,配置PA9和PA10为串口。开启串口中断。外部晶振8MHz。将来用KEIL做软件开发。
    点击箭头1,来到MCU型号选择界面
    在这里插入图片描述

    在1处输入STM32G030C8T6,前面的STM32也可以不输入。随着我们的输入,右边窗口会逐渐缩小选择范围,如下图,注意键盘要在英文输入状态,中文状态是不行的
    在这里插入图片描述

    箭头2所指的这个芯片,就是我们所要选择的。
    同时还给出了参考单价,芯片封装,FLASH和RAM容量,IO口数量和最高频率等信息,以方便我们选型
    确定好芯片以后,双击它,就来到下一个界面。

    功能配置界面

    在这里插入图片描述

    它包含4个选项卡,下面我们来一一介绍。

    1 引脚和配置

    这个界面最常用,左边是配置MCU内核,片上外设,中间件的。
    右边可以配置IO口,和引脚复用功能
    下面我们点开System Core,并点击SYS,并在新出现的窗口中勾选第1项Serial Wire,的意思是启用SWD调试接口,即可以通过仿真器下载和调试程序。
    在这里插入图片描述

    点击Connectivity,点击USART1,Mode选择Asynchronous,意思是异步串口。其他保持默认。下面的窗口中,通讯速度按需要设置,默认是115200bps,数据位8,奇偶校验无,1个停止位
    在这里插入图片描述

    此时可以看到窗口右边,相关引脚已经变为绿色。可以看到PA9为TX引脚,PA10为RX引脚。
    如果PA9必须做别的功能使用,那还有备用引脚可以选择,方法是按住Ctrl,再鼠标左键长按PA9,此时备用引脚会开始闪烁,本芯片的备用引脚只有一个:PB6
    左键点击PB6,选择USART1_TX即可将该引脚变为TX功能
    在这里插入图片描述
    在这里插入图片描述

    配置中断

    点击红箭头所指的NVIC Settings
    在这里插入图片描述

    在方框内勾选,即可开启串口中断
    在这里插入图片描述

    开启CRC模块

    CRC功能在Computing中配置,但是如果不知道呢,该怎么快速找到呢?
    在箭头所指处输入CRC,并回车,注意一定要在英文输入状态,左下就会出现展开CRC所属的Computing的配置项
    在这里插入图片描述

    在下方箭头处勾选,以激活CRC模块
    在这里插入图片描述

    下面的参数按需要设置。
    可以设置长度,多项式,初始值,输入是否反转,输出是否反转等。
    设置好以后,直接将要计算的数组发给CRC计算单元也就是使用HAL_CRC_Calculate()这个函数,返回值就是我们要计算的CRC值,方便快捷。
    有硬件可用就不需要写函数,速度还快,还省空间。

    时钟配置

    在RCC中选择HSE为外部时钟,即Crystal,意思是外部晶振,下面这两个脚就是晶振引脚,会变绿。
    在这里插入图片描述

    点击下图红箭头,进行时钟配置
    在这里插入图片描述

    选择下图的时钟路线
    在这里插入图片描述

    在箭头处输入64,回车,意思是使用64M的主频,相关的倍频分频参数软件会自动帮我们计算好。

    生成代码

    在这里插入图片描述

    在1处输入项目名称
    在2处选择工程路径
    在3处选择将来要开发的软件,我用Keil所以选择MDK
    在Code Generator选项中按下图设置
    在这里插入图片描述

    最后,点击右上角的GENERATE CODE,生成工程,
    在这里插入图片描述

    弹出下面的界面,就表示工程生成好了,点击Open Project就可以打开工程,开始开发了。
    在这里插入图片描述

  • 相关阅读:
    Style样式设置器
    第十三章 数据库
    Java方向面试题(一)
    js和css会不会阻塞页面渲染?
    HCIP- ICT实战进阶ex1-MPLS
    tvm交叉编译android opencl
    iOS代码混淆-从入门到放弃
    机器学习笔记 - 互信息Mutual Information
    java毕业设计大学生食堂饭菜价格信息管理系统mybatis+源码+调试部署+系统+数据库+lw
    开启深度学习之门—《深度学习》
  • 原文地址:https://blog.csdn.net/13011803189/article/details/127520503