GPIO_SetBits(GPIOB,GPIO_Pin_10|GPIO_Pin_2)改为STM32G030F6P6单片机初始化I2C总线的GPIO引脚
时间: 2023-07-22 16:23:45 浏览: 265
GPIO.zip_STM32 IAR例程_stm32 IAR 例程
5星 · 资源好评率100%
对于STM32G030F6P6单片机,I2C总线的GPIO引脚初始化可以参考以下代码:
```
// 初始化GPIO引脚
GPIO_InitTypeDef GPIO_InitStruct = {0};
GPIO_InitStruct.Pin = GPIO_PIN_10 | GPIO_PIN_2; // I2C总线的SCL和SDA引脚
GPIO_InitStruct.Mode = GPIO_MODE_AF_OD; // 开漏输出模式
GPIO_InitStruct.Pull = GPIO_PULLUP; // 上拉电阻
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH; // 高速模式
GPIO_InitStruct.Alternate = GPIO_AF1_I2C1; // 复用为I2C1功能
// 使能GPIO时钟
__HAL_RCC_GPIOB_CLK_ENABLE();
// 应用GPIO初始化配置
HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
```
这段代码将GPIOB端口的引脚10和2作为I2C总线的SCL和SDA引脚,使用开漏输出模式,上拉电阻,高速模式,并将其复用为I2C1功能。
阅读全文