voidMX_GPIO_Init(void){GPIO_InitTypeDef GPIO_InitStruct = {0}; 这里定义了一个名为 MX_GPIO_Init 的函数,没有输入参数,也没有返回值。同时创建了一个 GPIO_InitTypeDef 类型的结构体变量 GPIO_InitStruct 并初始化为零。 __HAL_RCC_GPIOD_CLK_E...
在GD32303C_START中的LED管脚配置如下所示。 HAL_GPIO_Init()函数 该函数的作用是根据GPIO_Init中指定的参数初始化GPIOx外设。 由于是对管脚进行初始化定义,一般在mian()函数初始化中。 而在主程序的初始化中,有个注释是初始化所有配置的外设,点击查看这个函数。 在MX_GPIO_Init()可以看到,这里对管脚进行了初...
从生成的代码工程目录中打开keil工程,在MX_GPIO_Init(void)函数中会发现我们新添加的USER_KEY按键初始化代码,其模式为输入模式 3.2.2、添加其他必要代码 在主函数的主循环中添加按键扫描及响应函数,如下图所示 源代码如下 if(HAL_GPIO_ReadPin(USER_KEY_GPIO_Port,USER_KEY_Pin) == GPIO_PIN_SET) { HAL_De...
①void GPIO_EXTILineConfig(uint8_t GPIO_PortSource, uint8_t GPIO_PinSource); //设置IO口与中断线的映射关系 exp: GPIO_EXTILineConfig(GPIO_PortSourceGPIOE,GPIO_PinSource2); ②void EXTI_Init(EXTI_InitTypeDef* EXTI_InitStruct); //初始化中断线:触发方式等 ③ITStatusEXTI_GetITStatus(uint32_t EX...
1.使用STM32Cubemx生成代码时,所有的GPIO初始化均会放gpio.c中。 voidMX_GPIO_Init(void) { GPIO_InitTypeDefGPIO_InitStruct={0}; __HAL_RCC_GPIOA_CLK_ENABLE(); __HAL_RCC_GPIOB_CLK_ENABLE(); /*Configure GPIO pin Output Level */ ...
到这里STM32CubeMx 就配置完成了,之下来分析STM32CubeMx 生成的源码 先看一下GPIO的初始化函数; staticvoidMX_GPIO_Init(void){ GPIO_InitTypeDef GPIO_InitStruct = {0};/* GPIO Ports Clock Enable */__HAL_RCC_GPIOA_CLK_ENABLE();/*Configure GPIOpin Output Level */HAL_GPIO_WritePin(LED1_GPIO_...
2、I2C 接口,若使用400k 波特率,若想把余量留大些,可以选用10M 的GPIO 引脚速度。 3、SPI 接口,若使用18M 或9M波特率,需要选用50M 的GPIO 的引脚速度。 三、HAL库 初始化及重置相关 1. GPIO初始化函数 voidHAL_GPIO_Init(GPIO_TypeDef *GPIOx, GPIO_InitTypeDef *GPIO_Init); ...
当作为输入或者输出时,GPIO有这些属性:输入输出方向;也可以设置速度,上下拉,推挽开漏等电器特性。 在Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_gpio.h中有关于 GPIO属性的 定义。 /** * @brief GPIO Init structure definition */typedefstruct{uint32_tPin;/*!< Specifies the GPIO pins to be con...
使用HAL_GPIO_Init函数初始化GPIO,参数包括选择的GPIO外设(GPIOx)和配置信息(GPIO_Init)。四、操作函数 读取GPIO状态:HAL_GPIO_ReadPin。设置GPIO状态:HAL_GPIO_WritePin。GPIO引脚取反:HAL_GPIO_TogglePin。锁定GPIO状态:HAL_GPIO_LockPin。中断服务函数:HAL_GPIO_EXTI_Callback。总结,GPIO为ST...
以STM32F1 系列芯片为例,通过查阅stm32f1xx_hal_gpio_ex.h文件可以了解 Alternate 的取值范围; 该成员变量的取值一般通过 CubeMX 软件分配,不需要用户手动设置; 引脚电平状态数据类型 端口数据类型:指向端口寄存器组的结构体指针 GPIOA,GPIOB,GPIOC…