1.新建工程
1.1 打开CubeMX软件,点击File中的New Project选项创建一个新工程
1.2 搜索stm32f407zgt6,双击选择该型号
1.3 在Project Manager选项配置工程信息,工程名称和工程路径不能有中文,Toolchain / IDE选择MDK-ARM,版本可以选择更高,这里我选择V5。
1.4 Code Generator选项卡配置如图,仅复制必要的库文件,并将外设初始化生成一对.c/.h文件,方便管理各外设,其他选项保持默认即可
2.系统时钟配置
2.1 点击System Core中的RCC,HSE选项中选择外部晶振作为时钟源
2.2 Clock Configuration如图中配置,1选项根据自己板子晶振频率选择,选项4中将时钟设置为168,按回车完成时钟配置
3.GPIO配置
根据开发板电路选择接到led上的IO口,选择GPIO_Output。GPIO output level选择High,输出高电平,GPIO Mode选择Output Push Pull推挽输出,选择Pull-up上拉,最大输出速度选择Very High。
点击右上角的generate code按钮, 在弹出的对话框中点击Open Project打开生成的新项目
4.编写代码
4.1 打开gpio.c文件可以看到CubeMX已经初始化了GPIO,直接对GPIO进行操作即可。
while (1)
{
/* USER CODE END WHILE */
/* USER CODE BEGIN 3 */
// //11111111111111111111111111111
// HAL_GPIO_WritePin(GPIOF,GPIO_PIN_9,GPIO_PIN_RESET);
//22222222222222222222222222222
HAL_GPIO_WritePin(GPIOF,GPIO_PIN_9,GPIO_PIN_RESET);
HAL_Delay(500);
HAL_GPIO_WritePin(GPIOF,GPIO_PIN_9,GPIO_PIN_SET);
HAL_Delay(500);
// //33333333333333333333333333333
// HAL_GPIO_TogglePin(GPIOF,GPIO_PIN_9);
// HAL_Delay(500);
}