STM32CubeMX 实战教程:新建项目和生成 MDK_ARM 工程

STM32Cube 同时被 2 个专栏收录
19 篇文章 18 订阅
12 篇文章 19 订阅

1.资源的获取:关注博主并点赞对应博客,并在文章下留言邮箱索取;
2.资源的类型:获取资源仅限于免费公开文章或粉丝免费专享文章,不包括付费文章;

博主分享不易,请给三连哦(关注 + 点赞 + 收藏),你的鼓励是博主分享的动力。

1 前言

1.1 STM32CubeMX

2.1_1.STM32CubeMX_20200803

点击图片进入 ST 官网 STM32CubeMX 介绍页面

1.2 教程介绍

    STM32CubeMX 实战教程 基于正点原子 STM32F1 精英板(STM32F103ZET6)平台,旨在通过对板载资源的使用将各种外设的配置方法讲述清楚。更多教程请订阅 [专栏]STM32CubeMX
    本教程是 STM32CubeMX 实战教程中的基础篇,主要通过新建 CubeMX 项目和生成 MDK_ARM 工程,将 STM32CubeMX 新建项目或项目模板的方法和流程讲述清楚。

1.3 准备工作

    系统版本:Windows 10 专业版 64 位
    软件版本:STM32CubeMX V6.0.0 ( STM32CubeMX 下载及安装教程
    硬件平台:正点原子 STM32F1 精英板
    编译环境:MDK_ARM V5.29 ( MDK_ARM 下载及安装教程
    调试工具:ST-LINK/V2

2 新建项目

2.1 MCU 选择

  1. 打开 STM32CubeMX 软件,点击 File > New Project 或直接在软件窗口点击 ACCESS TO MCU SELECTOR
    2.1_1
  2. 设置 MCU 筛选条件,选择 STM32F103ZETx,然后点击 Start Project 开始项目工程配置;
    2.1_2
  3. 项目工程配置界面如下;
    2.1_3
    (PS:Pinout & Configuration 和 Clock Configuration 窗口介绍请参考:STM32CubeMX 项目配置窗口介绍(一)

2.2 引脚分配 & 外设配置

  1. Pinout & ConfigurationSystem Core 中,点击 RCC
    2.2_1
  2. HSE 时钟源设置为 Crystal/Ceramic Resonator(晶体或陶瓷谐振器);
    2.2_2
  3. 设置成功后,相应的管脚(OSC_IN & OSC_OUT)会被自动配置;
    2.2_3
  4. System Core 中,点击 SYS,设置 Debug 模式为 JTAG(4 pins);(不设置的话,程序将可能下载但不能仿真调试
    2.2_4

2.3 时钟配置

    配置时,将会自动检测错误;若频率配置错误,将会红色高亮报错。
2.3_1
(PS:可在需要配置的时钟方框内输入你想要的正确可允许时钟频率,软件将会自动配置分频系数)

2.4 保存项目

  1. 点击 Project Manager
    2.4_1
    (PS:Project Manager 窗口介绍请参考:STM32CubeMX 项目配置窗口介绍(二)
  2. 设置项目名称、地址、IDE及版本后,点击 File > Save Project
    2.4_2

2.5 生成代码

  1. Project Mannager > Code Generator 窗口配置如下;
    2.5_1

  2. Project Mannager > Advanced Settings 窗口下,选择 LL 库;(也可选择 HAL 库)
    2.5_2

  3. Project Mannager > Advanced Settings 窗口配置完成后,然后点击 GENERATE CODE 生成代码;
    2.5_3

  4. 代码自动生成中;
    2.5_4

  5. 代码生成成功;
    2.5_5

2.6 生成报告

  1. 在项目中,点击 File > Generate Report
    2.6_1
  2. 报告生成完毕。点击 Open Folder查看;
    2.6_2
  3. 项目目录下生成了 Template.pdf,里面包含了配置各种外设的配置数据和参数配置。
    2.6_3

2.7 Tools

2.6

3 工程测试

  1. 打开 MDK_ARM 工程;
    3_1

  2. 在用户变量代码区域定义变量 get_rcc_clock,在 main 函数用户代码区域2中,调用 LL_RCC_GetSystemClocksFreq(&get_rcc_clock); 获取系统时钟;
    3_2
    3_3

  3. 编译工程;
    3_4

  4. 使用 ST-LINK/V2 进行仿真调试,若看到如下现象,则说明代码生成成功,系统时钟正常。
    3_5

4 结束

    本教程由 Brendon Tan 原创发布,版权所有。该文档仅供个人学习交流使用,不得用于其他用途, 禁止商用, 转载或公开使用请联系作者授权。
    此教程由本人独立整理,如有不当之处,欢迎指正。

附录 相关教程

    STM32Cube 系列软件教程总目录请参考文章:STM32Cube 生态系统之网站、视频、文档及教程汇总
    该文章还提供:

  • STM32Cube 生态系统相关文章
  • STM32Cube 生态系统相关软件更新介绍
  • STM32Cube 生态系统相关教程汇总
  • STM32Cube 生态系统相关网站汇总
  • 该文章会不定期修改更新,更多信息请进入文章查看
  • 11
    点赞
  • 3
    评论
  • 16
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 技术黑板 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值