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

电子说

1.2w人已加入

描述

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

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

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

1.创建Embedded Project Wizard项目

STM32

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

STM32

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

STM32

3.配置项目类型

STM32

STM32

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

4.选择模板项目

STM32

5.※调试模式选择

①将调试器连接到电脑

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

STM32

③配置调试选项

STM32采用SWD接口模式

有关Debug Protocol:

STM32

④※硬件连线

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

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

接线图:

STM32

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

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

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

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

1.打开STM32CubeMX

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

STM32

2.选择MCU/开发板

STM32

3.系统配置

①配置引脚

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

STM32

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

②※时钟源的选择

STM32

其中外部时钟的配置可在上一步骤的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:

STM32

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

一种时钟源配置:

STM32

③※项目配置

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

STM32

STM32

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

STM32

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

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

4.创建Embedded Project Wizard项目

STM32

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

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

如图:

STM32

STM32

Debug Method 的选择方式同方法一

STM32

项目即导入成功了。

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

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分