STM32CubeMX代码生成和点亮LED

所需工具STM32CubeMX和Keil5

1、先打开STM32CubeMX软件,点击New Project新建工程;

2.在搜索框中搜索你的项目芯片;

3、搜索出来有两个不同封装的芯片,写程序没区别,但是这个软件可以生成IO说明文档,可能会导致文档与实际封装差异。选择确定后双击~;

4、创建完工程,简单介绍一下功能;

5、先配置时钟树,我使用的F429最大支持180M时钟,我配置为最大时钟。

6、我的板子LED是接在PA11上的,在搜索栏上搜索PA11,芯片PA11会一闪一闪的。

7、点击PA11引脚,会出现下面画面,我们选择GPIO_Output

8、当PA11选择作为输出时,外设USB功能会无法使用,软件会通过红色的叉号提示引脚冲突;

9.点击Configuration>>GPIO,进行详细的外设配置。

10.详细参数配置,如下图,完成后点击OK.

11.工程设置,填好工程名、工程路径;最重要的是选择编程工具,如果忘了选可以点击project>>settings重新选择。

12.打开工程,根据你在工程设置中选择的编程工具打开。

13.图片第三点是十分重要,很多新手没注意,以为可以在工程里面随便找个空白的地方就可以写自己的代码,当通过STM32CubeMX重新生成代码的时候,就发现自己辛辛苦苦写的代码没有了,找不回来了,一瞬间回到解放前欲哭无泪(我何尝不是这样过来的,哎...~!)。通过STM32CubeMX生成的模板代码必需按照模板的规范写,打开工程你就看到有很多的地方写着 

/* USER CODE BEGIN 2 */

添加自定义代码

  /* USER CODE END 2 */

所有的自定义代码一定要放在这中间。避免代码重生成删除,代码添加在BEGIN和END间就好了。

没吃过这种亏的同学可以自己做一下测试,毕竟我说的再多不如自己随便在BEGIN和END外写点代码试试效果。(hahaha...)

14.在main函数的while中添加如下代码:

  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
  while (1)
  {
  /* USER CODE END WHILE */

  /* USER CODE BEGIN 3 */
	  HAL_GPIO_TogglePin(LED_GPIO_Port, LED_Pin);	//LED取反
	  HAL_Delay(1000);				//延时1秒
	
  }
  /* USER CODE END 3 */

15.请测试,把代码写在BEGIN和END外,如下:

  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
  while (1)
  {
  /* USER CODE END WHILE */
	  HAL_GPIO_TogglePin(LED_GPIO_Port, LED_Pin);	//LED取反
	  HAL_Delay(1000);				//延时1秒
  /* USER CODE BEGIN 3 */

	
  }
  /* USER CODE END 3 */

然后关闭KEIL5;打开STM32CubeMX点击完毕后open project;最后看看while内的代码变化(手动滑稽);

16.赶着下班差点忘了,每次做完一个项目写文档都是一个十分痛苦的过程,可意会不可言传。这个软件可以生成一下我们使用外设的相关信息文档适当减轻我们的压力,嘻嘻...(我也是一个热爱写文档的三好程序员)。

  全篇完。

本人是一个嵌入式未入门小白,博客仅仅代表我个人主观见解,记录成长笔记。
笔记是以最简单的方式,只展示最核心的原理。
若有与 大神大大 见解有歧义,我绝对坚信 大神大大 见解是对的,我的是错的。
若无积分等无法下载源码,可加入QQ群657407920下载交流经验。感谢~!

 

 

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值