实验目的:点亮一颗LED灯,并且让它闪烁
实验现象:
1、打开CubeMX,点“Access to MCU Selector”选择单片机型号。我用的型号是STM32F103ZET6
2、SYS选择调试模式,否则可能会造成代码下载后无法再次下载的问题
3、配置外部时钟(简单的项目也可以不配置外部时钟,使用默认配置就可以)
4、配置GPIO口。
我的开发板led灯的接线图是这样的,大家需要根据自己的开发板的原理图来配置自己的输出引脚。
我的开发板上LED灯是接到PB5口的,所以把PB5引脚设置成输出模式。
5、设置项目名称,这里我就设置成led;然后是选择IDE,用CubeIDE就选STM32CubeIDE,用Keil的话就选MDK-ARM。最后就可以点“Generate Code”生成代码了
找到main函数中的while循环,在其中插入翻转引脚电平和延时的代码:
/* USER CODE BEGIN WHILE */
while (1)
{
//User code begin和end之间是用户可以写代码的地方,代码如果写道其它地方,会在下一次更新项目配置的时候被清除掉
HAL_GPIO_TogglePin(GPIOB, GPIO_PIN_5); //翻转PB5引脚的电平
HAL_Delay(500); //延时500ms
/* USER CODE END WHILE */
/* USER CODE BEGIN 3 */
}
/* USER CODE END 3 */
点CubeIDE里面的“运行”按钮,在弹出来的配置选项里设置下载器的类型,用stlink的话调试探头就选ST-LINK(ST-LINK GDB Server),用jlink的话就选第二项J-LINK。其它选项保持默认即可。