STM32CubMx (一) LED灯控制

1.新建工程
(1)点击File->NewProjec创建新工程
在这里插入图片描述
(2)器件选型,输入芯片型号,选择正确封装,点击Start Project
在这里插入图片描述
2.具体配置过程
(1)点击System Core->RCC分别开启系统时钟,配置如下图所示
在这里插入图片描述
(2)点击System Core->SYS,配置工程的仿真调试方式。使用的是 SWD 接口的仿真器,点击“Debug”下拉列表,选择 “Serial Ware” 选项,配置如下图所示
在这里插入图片描述
(3)Clock Configration时钟树配置
在这里插入图片描述
(4)GPIO配置
LED 引脚接在 PC5 和PI6 上,需要将 PC5 和PI6引脚设置 为 GPIO 输出功能
在这里插入图片描述
(5)工程配置
当把工程的引脚和外设全部配置完成后,点击主界面中的 “Project Manager” 菜单项,进入工程相关的参数配置界面。
输入工程名称和路径,根据编译选择版本,示例中编译器用的是IAR 7.5
在这里插入图片描述
(6)在工程参数配置界面左侧的 “Code Generator” 菜单项中,将 “Generated files” 中的第一项打钩。

生成的工程将会为你配置的每一个外设生成对应的.c 文件和.h 文件。
在这里插入图片描述
(7)点击主界面右上角的 “GENERATE CODE”, 开始生成工程代码
在这里插入图片描述
3.添加代码
在main函数中添加代码,两个led间隔0.5s闪烁

 while (1)
  {
    /* USER CODE END WHILE */
    HAL_GPIO_TogglePin(GPIOI,GPIO_PIN_6);
	HAL_GPIO_TogglePin(GPIOC,GPIO_PIN_5);
	HAL_Delay(500);
    /* USER CODE BEGIN 3 */
  }

4.编译
(1)IAR编译报错
在这里插入图片描述
(2)cubemx 软件生成代码,IAR7.x的代码直接编译会出现错
在这里插入图片描述
问题出在 __RESTRICT这个宏定义上。在这个宏上点右键查看定义的地方,会定位到另一个库文件cmsis_iccarm.h中。如果右键不跳转那就直接去打开这个文件,里面有__RESTRICT的定义
在这里插入图片描述
这里需要将__restrict前的两个下划线删除掉,就可以编译通过了。
在这里插入图片描述
(3)swd下载
选择J-Link/j-Trace
在这里插入图片描述
选择SWD接口
在这里插入图片描述
(4)点击下载,运行
在这里插入图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值