你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【STM32CubeMX】新建工程点亮LED灯

[复制链接]
神圣雅诗人 发布时间:2020-6-16 22:02
前言
在配置好CubeMX之后,就是新建工程的开始了,那么首先我们需要一些准备,本片博客我们会很详细的介绍STM32CubeMx的基本使用和如何创建一个新的工程并且点亮LED灯  面向初学者   如果您想着快速实现工程的创建,可以直接跳过功能介绍,观看工程创建一栏
并且,在新建工程时,我们分为了具体流程1~7 如果您不想看每部分的讲解,直接按照流程操作即可,5分钟即可成功点亮LED灯

* R8 i2 V$ z( M' u$ o
前期准备:
1、STM32硬件(我的是STM32F407ZE和STM32F103ZE)
2、STM32CubeMx软件、 IDE   Keil(MDK-ARM)软件
3、STM32F4xxHAL库   
新建工程
1在主界面选择File-->New Project   或者直接点击ACCEE TO MCU SELECTOR   
# a8 s" n4 ]& I, ^
出现芯片型号选择  一般我们直接搜索自己芯片的型号即可   
如果你是设计产品想要选择一款芯片  在搜索栏的下面,提供的各种查找方式,可以选择芯片内核,型号,等等,帮助你找到适合的芯片
具体流程1:
  • 1 搜索芯片型号
  • 2选择芯片
  • 3创建工程9 V: S$ h: l4 E! t
那么接下来就是我们整个流程的重头戏了
这里我们分成三大块来讲解
1MCU外设资源选择
在这里可以选择MCU的各种资源和外设
提供两种方式
  • Categories  种类选择
    * S3 o3 V5 [$ k4 _; w+ E9 y
将MCU的各种外设和资源分类,供用户选择使用
  • A-Z  顺序选择, \3 B7 f% `. h. {, _
MCU的外设资源按A-Z 排序,供用户选择使用
2外设配置
这里可以设置你所选择外设的各种功能
这里以串口1为例   我们可以选择串口的模式(异步,同步,半双工)   串口接收中断,和串口DMA传输等等
和我们配置库函数的时候基本一样,但是  STM32CubeMx将这些转换为了图形和选项  ,我们配置的时候不用再去配置各种东西,只需要傻瓜式操作便可以配置我们需要的外设   这便是CubeMx的核心所在
3预览界面
这里分为引脚预览 和系统预览
引脚预览就是可以查看那个引脚配置了什么功能,和各个引脚位置  

  H) ^$ O- H  c! N; q! I/ R
随便点击一个引脚,即可设置该引脚的各种功能
4 J5 ~3 j- S' L1 q: P) G
      这种颜色表示不可配置引脚  电源专用引脚以黄色突出显示。其配置不能更改
这种颜色表示你配置了一个I/O口的功能,但是没有初始化相对应的外设功能  引脚处于no mode 状态  

7 I- S% W% w9 K8 _; N! b1 W
  绿色表示配置成功
4 [5 D0 d% a* I) V4 h
系统预览
系统预览就是查看配置的各种外设和GPIO的状态
表示没有问题
表示警告,对应配置出现问题  点击该选项即可外设配置界面查看

# @0 @3 C# Q3 J5 g9 j
具体各个功能的配置(UATR/DMA/ADC/TIM...)我们再接下来的文章会一一讲解,这里就不再过多介绍了
具体流程2:
这里只需要把我们的LED对应引脚设置为GPIO_Output即可
2时钟源设置
其实也就是32的时钟树框图让你配置  默认时钟是使用内部RC振荡器(HSI)
具体流程3:
或者先按照图中方式配置为72MHz即可
2 p8 h2 l+ R/ ?9 w- q; j; h" E
  • 需要配置RCC才能够使用外部时钟源
    ! r! x3 i0 l% M+ j- C
3.工程管理
设置完MCU的各个配置之后,第三个就是工程文件的设置了
具体流程4:
这里就是工程的各种配置 我们只用到有限几个,其他的默认即可  IDE我们使用的是 MDK5
  • 存储目录不可以有中文  o* a4 H, d6 G! u8 `8 d& q& T
然后点击Code Generator,进行进一步配置   (重点)
将HAL库的所有.C和.H都复制到所建工程中
优点:这样如果后续需要新增其他外设又可能不再用STM32CubeMX的时候便会很方便
缺点: 体积大,编译时间长(很长)
只复制所需要的.C和.H   (推荐)
优点:体积相对小,编译时间短,并且工程可复制拷贝
缺点: 新增外设时需要重新用STM32CubeMX导入   
不复制文件,直接从软件包存放位置导入.C和.H
优点:体积小,比较节约硬盘空间
缺点: 复制到其他电脑上或者软件包位置改变,就需要修改相对应的路径   
自行选择方式即可
具体流程5:
然后点击GENERATE CODE  创建工程
创建成功,打开工程
具体流程6:while循环添加下面两行代码即可

  • 2 `8 W/ @7 z( P- L, w
    , [* c8 r! Y4 A    HAL_Delay(500);
  • , B' l/ ~# y. U) G- z$ m- ~) Z9 c% P

    ! G' M7 Q* [2 q: t# x2 R! }  C9 r    HAL_GPIO_TogglePin(GPIOE, GPIO_PIN_15);/ |$ k$ B  P; S! ?- w3 f. B
# J3 m6 g5 `/ D) E5 |5 O. l
配置下载工具
具体流程7:
新建的工程所有配置都是默认的  我们需要自行选择下载模式,勾选上下载后复位运行
所有自己编写的代码请放在/* USER CODE BEGIN XXX */   /* USER CODE END XXX */之间
这样我们修改工程的时候你自己写的代码就不会被删除

' Q* |3 B7 {8 V; E5 T, `
到此,STM32CubeMX的基本使用介绍完了 ,接下来会更新CubeMX和HAL库配置STM32的UART ADC DMA 定时器 PWM 等等
赞 收藏 评论2 发布时间:2020-6-16 22:02

举报

2个回答
desk1983 回答时间:2020-6-16 22:29:22
- h4 k7 G; e! n% W$ R1 T
非常好的资料,对初学者很有帮助;6 S, g1 F# G$ g; l: s. w
希望楼主多多分享,赠人玫瑰,手有余香,念念不忘,必有回响;." ]* h/ F8 ?8 }
非常好的资料,对初学者很有帮助;
. @$ ^7 u& h) h希望楼主多多分享,赠人玫瑰,手有余香,念念不忘,必有回响;.
aiherong 回答时间:2020-6-17 01:56:47
敢问楼主6.99.1版本右上角没有"GENERATE CODE"字样,该如何生成代码?
IMG_20200617_023926.jpg

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版