目录
四、STM32F407VE中所用到的引脚以及STM32CubeMX的配置
在stm32f407ve原理图中默认的led指示灯为PA6和PA7
找到PA6和PA7,进行以下配置,时钟源默认为外部时钟80mhz即可
面向小白
LED的闪烁:
需要掌握的知识点
一、GPIO的工作模式:
#define GPIO_MODE_INPUT MODE_INPUT /*!< Input Floating Mode */
#define GPIO_MODE_OUTPUT_PP (MODE_OUTPUT | OUTPUT_PP) /*!< Output Push Pull Mode */
#define GPIO_MODE_OUTPUT_OD (MODE_OUTPUT | OUTPUT_OD) /*!< Output Open Drain Mode */
#define GPIO_MODE_AF_PP (MODE_AF | OUTPUT_PP) /*!< Alternate Function Push Pull Mode */
#define GPIO_MODE_AF_OD (MODE_AF | OUTPUT_OD) /*!< Alternate Function Open Drain Mode */
#define GPIO_MODE_ANALOG MODE_ANALOG /*!< Analog Mode */
#define GPIO_MODE_IT_RISING (MODE_INPUT | EXTI_IT | TRIGGER_RISING) /*!< External Interrupt Mode with Rising edge trigger detection */
#define GPIO_MODE_IT_FALLING (MODE_INPUT | EXTI_IT | TRIGGER_FALLING) /*!< External Interrupt Mode with Falling edge trigger detection */
#define GPIO_MODE_IT_RISING_FALLING (MODE_INPUT | EXTI_IT | TRIGGER_RISING | TRIGGER_FALLING) /*!< External Interrupt Mode with Rising/Falling edge trigger detection */
#define GPIO_MODE_EVT_RISING (MODE_INPUT | EXTI_EVT | TRIGGER_RISING) /*!< External Event Mode with Rising edge trigger detection */
#define GPIO_MODE_EVT_FALLING (MODE_INPUT | EXTI_EVT | TRIGGER_FALLING) /*!< External Event Mode with Falling edge trigger detection */
#define GPIO_MODE_EVT_RISING_FALLING (MODE_INPUT | EXTI_EVT | TRIGGER_RISING | TRIGGER_FALLING) /*!< External Event Mode with Rising/Falling edge trigger detection */
二、HAL库中操作GPIO的主要函数
void HAL_GPIO_WritePin(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin, GPIO_PinState PinState);
//设置GPIO的高低电平(默认低电平及低电平点亮)
//其中GPIO_PinState的所对应的分别是GPIO_PIN_SET(亮)和GPIO_PIN_RESET(灭)
void HAL_GPIO_TogglePin(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin);
//反转GPIO的高低电平
void HAL_Delay(uint32_t Delay)
//delay函数
HAL_StatusTypeDef HAL_GPIO_LockPin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin);
//锁定引脚状态
三、点灯示例代码
在while循环内加入以下代码即可
HAL_GPIO_TogglePin(GPIOA, LED1_Pin);//led亮灭翻转
HAL_Delay(1000);//延迟1000毫秒即一秒
或
HAL_GPIO_WritePin(GPIOA,LED1_Pin, GPIO_PIN_SET);//设置led亮
HAL_Delay(500);//延迟半秒
HAL_GPIO_WritePin(GPIOA,LED1_Pin, GPIO_PIN_RESET);//设置led灭
HAL_Delay(500);//延迟半秒
效果相同,实现了led闪烁效果
四、STM32F407VE中所用到的引脚以及STM32CubeMX的配置
官方开源的原理图找到led所对应引脚
在stm32f407ve原理图中默认的led指示灯为PA6和PA7
STM32cubx的芯片引脚配置图
找到PA6和PA7,进行以下配置,时钟源默认为外部时钟80mhz即可
cubx中对LED所对应引脚的定义
默认选定的时钟源(72或80MHZ均可)
输入后右键会自动设置
配置RCC