0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

介绍在CubeMx+VS下创建STM32项目的两种方式

冬至子 来源:ITRelief 作者:Sachefgh Xu 2023-07-24 10:32 次阅读

方法一:通过Embedded Project Wizard 提供的例程创建

优点:直接通过VS创建,配置过程简单直观

缺点:修改初始化配置麻烦,只能从例程生成(或许是我还没研究明白)...

1.创建Embedded Project Wizard项目

图片

2.命名解决方案,指定存储路径

图片

如果点击创建后出现下图窗口,直接OK即可

图片

3.配置项目类型

图片

图片

↑C Library Type 选择支持浮点的输出函数比较好

4.选择模板项目

图片

5.※调试模式选择

①将调试器连接到电脑

②Debug Method 选择USB->ST-Link v2

图片

③配置调试选项

STM32采用SWD接口模式

有关Debug Protocol:

图片

④※硬件连线

※注意不要双向供电(血淋淋的教训)!!!

SWD 接口模式下调试使用 SWDIO SWCLK 两线。对于芯片复位脚RST ,考虑到烧写需要复位芯片,也推荐连接RST引脚(即连五根线)。

接线图:

图片

⑤接好线后可以按test检测连接是否有误,若无问题即可开始代码编写

※在通过这种方式生成的项目中,startup_stm32xxxxx.c和system_stm32xxxxx.c为系统的配置函数,可以进行更改(配置寄存器)

方法二:通过CubeMX创建初始化的代码 (※推荐)

优点:更改配置容易,体验棒

1.打开STM32CubeMX

按需求自己选择创建的类型,这里我选择从MCU Selector开始

图片

2.选择MCU/开发板

图片

3.系统配置

①配置引脚

可以告别麻烦的寄存器操作,直接用图形化的方式配置引脚、时钟看门狗、中断源、硬件iicspican等等,这也是我推荐CubeMX的原因

图片

配置后生成的代码后期可通过CubeMX再次更改,可以先编写代码,随时可以更改

②※时钟源的选择

图片

其中外部时钟的配置可在上一步骤的RCC选项中配置。时钟源的选择:

LSE: 外部低速时钟源(<1Mhz),可以在RCC选项中配置

HSE: 外部高速时钟源(4-16Mhz),可以在RCC选项中配置

外部时钟源有BYPASS和Crystal/Ceramic两种模式。后者即我们熟悉的无源晶振两脚输入模式。

BYPASS即旁路模式,这一模式下外部时钟信号从OSC_IN引脚输入,OSC_OUT引脚处于高阻态。

HSI: 芯片自带高速时钟源(8Mhz)。HSI的精度比较差(1%),其校准值会在每次复位时加载。在对精度要求比较高的情况下推荐使用外部时钟源。省事省力直接用HSI

LSI: 芯片自带低速时钟源(40khz),看门狗时钟源。

✦STM32具有一个FC功能的PLL,可以将HSI和HSE的时钟信号倍频(最高16x)。配置时钟源请走PLL(这样才能高速)。

✦关于CSS:

图片

✦关于MCO(Master Clock Output):当在RCC中开启MCO后,可通过引脚输出时钟,时钟源可选择。

一种时钟源配置:

图片

③※项目配置

选择Basic代码结构; 选择GPDSC为工具链

图片

图片

(可选)配置功耗模式、节能模式和功率估算:

图片

完成后只要再图片就完成了项目的生成。

※要修改配置,打开目录下的xxxx.ioc再重新生成代码即可。

4.创建Embedded Project Wizard项目

图片

配置新项目时项目名称任易填

4.导入上面CubeMX创建的GPDSC格式项目

如图:

图片

图片

Debug Method 的选择方式同方法一

图片

项目即导入成功了。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 存储器
    +关注

    关注

    38

    文章

    7454

    浏览量

    163613
  • STM32
    +关注

    关注

    2266

    文章

    10875

    浏览量

    354897
  • 调试器
    +关注

    关注

    1

    文章

    300

    浏览量

    23692
  • swd接口
    +关注

    关注

    0

    文章

    11

    浏览量

    2820
  • CubeMx
    +关注

    关注

    0

    文章

    30

    浏览量

    1327
收藏 人收藏

    评论

    相关推荐

    STM32CubeMX创建工程模板的方法

    STM32CubeMX步骤少、上手快,但生成的工程模板比较臃肿,因此本小结只简单介绍下相关创建操作,后面的实验仍使用前面自定义创建工程模板。读者也无需纠结使用哪一
    发表于 02-14 06:05

    CubeMX如何创建stm32项目

    CubeMX如何创建stm32项目
    发表于 02-14 06:24

    如何导入STM32CubeMX创建项目

    RT-Thread Studio项目下,或STM32CubeMx独立使用 ,创建底层项目,如何和RT-Thread Studio中
    发表于 05-24 15:06

    Wincc如何与PLC进行通讯两种常用的方式介绍

    西门子WINCC与SiemensPLC通讯连接有多种方式,下面介绍两种常用的通讯方式
    的头像 发表于 02-17 09:27 3w次阅读
    Wincc如何与PLC进行通讯<b class='flag-5'>两种</b>常用的<b class='flag-5'>方式</b><b class='flag-5'>介绍</b>

    STM32CubeMx学习之——创建LED灯工程(基于STM32L071KBU)

    STM32CubeMx学习之——创建LED灯工程(基于STM32L071KBU)本文介绍利用STM32CubeMx
    发表于 12-06 20:06 17次下载
    <b class='flag-5'>STM32CubeMx</b>学习之——<b class='flag-5'>创建</b>LED灯工程(基于<b class='flag-5'>STM32</b>L071KBU)

    STM32CubeMX使用串口中断方式实现串口通信

    文章目录一、内容介绍二、CubeMX生成工程1)创建工程2)导出工程三、功能实现1)代码完善2)代码烧录3)结果展示四、总结五、内容参考一、内容介绍完成一个
    发表于 12-07 10:36 10次下载
    <b class='flag-5'>STM32CubeMX</b>使用串口中断<b class='flag-5'>方式</b>实现串口通信

    使用stm32CubeMX,配合Keil,使用寄存器方式或HAL库这两种方式点亮流水灯

    流水灯1.打开CubeMX,点击access to mcu selector创建一个新项目2.选择芯片STM32F 103C83.然后点击System Core,进入里面的SYS,
    发表于 12-07 10:51 1次下载
    使用<b class='flag-5'>stm32CubeMX</b>,配合Keil,使用寄存器<b class='flag-5'>方式</b>或HAL库这<b class='flag-5'>两种</b><b class='flag-5'>方式</b>点亮流水灯

    STM32CubeMX 项目配置窗口介绍(一)

    STM32CubeMX 项目配置窗口介绍(一):介绍了 Pinout & Configuration 和 Clock Configuration 窗口,内附图文。
    发表于 12-07 12:06 10次下载
    <b class='flag-5'>STM32CubeMX</b> <b class='flag-5'>项目</b>配置窗口<b class='flag-5'>介绍</b>(一)

    STM32CubeMX 创建工程模板

    STM32CubeMX 创建工程模板
    发表于 12-08 20:06 20次下载
    <b class='flag-5'>STM32CubeMX</b> <b class='flag-5'>创建</b>工程模板

    Keil MDK STM32系列(五) 使用STM32CubeMX创建项目基础结构

    Keil MDK STM32系列(五) 使用STM32CubeMX创建项目基础结构
    发表于 12-09 13:36 10次下载
    Keil MDK <b class='flag-5'>STM32</b>系列(五) 使用<b class='flag-5'>STM32CubeMX</b><b class='flag-5'>创建</b><b class='flag-5'>项目</b>基础结构

    利用stm32cubemx创建stm32工程

    下面我将为大家分享一我利用stm32cubemx这款工具开发stm32首先介绍STM32
    发表于 12-24 19:14 31次下载
    利用<b class='flag-5'>stm32cubemx</b><b class='flag-5'>创建</b><b class='flag-5'>stm32</b>工程

    使用CubeMX创建STM32WL板子的LoRaWAN应用

    本篇 LAT 介绍使用 CubeMX 创建基于采用 STM32WLE5JC/STM32WL55JC 的
    的头像 发表于 07-08 13:09 3482次阅读

    使用CubeMX创建基于STM32WL的LoRa应用

    本篇 LAT 介绍使用 CubeMX 创建基于 STM32WL 的 LoRa 应用。
    的头像 发表于 07-18 09:05 5650次阅读

    MATLAB/simulink中建模时的两种不同实现方式

    导读:本期文章主要介绍MATLAB/simulink中建模时的两种不同实现方式,一是直接用现成的文件库中的模块进行搭建,一
    的头像 发表于 09-15 10:07 1834次阅读

    获取Git项目仓库的两种方式

    获取 Git 仓库 通常有两种获取 Git 项目仓库的方式: 将尚未进行版本控制的本地目录转换为 Git 仓库; 从其它服务器 克隆 一个已存在的 Git 仓库。 两种
    的头像 发表于 07-22 11:05 954次阅读