cubeMX新建工程,这里我们假设已经安装好了cubeMX。我们本次使用Clion进行相关操作。
在这里我们使用STM32F407IGHx芯片
在System Core下选择RCC选项,在RCC mode and Configuration中的High Speed Clock(HSE)下选择Crystal/Ceramic Resonator;
在开发型c版中,PH10 ,PH11,PH12对应了三色LED将其选择为output。
在GPIO中可以进行名字定义,此处为随意定义名字
时钟配置如图所示
点击顶部的 Pinout & Configuartion,选择SYS,在Debug下拉框中选择Serial Wire;
点击顶部的 Project Manager,给工程起名,选择存放目录
generated files中选择
最后点击generate
HAL_GPIO_WritePin函数讲解与HAL库提供了用于毫秒级延迟的函数,HAL_Delay函数均可以在大疆官方教程中找到。故直接提供代码因为我们需要流水灯,即顺序亮灯,故在点亮后延时关闭,点亮后延时关闭,即可
当然这是在未学习HAL_GPIO_TogglePin之前的简单办法
在mian函数找到user code begin 3
在之后紧接着写下
HAL_GPIO_WritePin(LED_R_GPIO_Port, LED_R_Pin, GPIO_PIN_SET);
HAL_Delay(500);
HAL_GPIO_WritePin(LED_R_GPIO_Port, LED_R_Pin, GPIO_PIN_RESET);
HAL_GPIO_WritePin(LED_G_GPIO_Port, LED_G_Pin, GPIO_PIN_SET);
HAL_Delay(500);
HAL_GPIO_WritePin(LED_G_GPIO_Port, LED_G_Pin, GPIO_PIN_RESET);
HAL_GPIO_WritePin(LED_B_GPIO_Port, LED_B_Pin, GPIO_PIN_SET);
HAL_Delay(500);
HAL_GPIO_WritePin(LED_B_GPIO_Port, LED_B_Pin, GPIO_PIN_RESET);
构建运行即可
从而发现流水灯亮起