STM32 硬件I2C初始化 I2C1_GPIO_AF_Config

void I2C1_GPIO_AF_Config(void)// I2C1 : SCL->B8     SDA->B9
{
    //GPIO端口设置
    GPIO_InitTypeDef GPIO_InitStructure;
    
    RCC_APB1PeriphClockCmd(RCC_APB1Periph_I2C1, ENABLE);
    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB | RCC_APB2Periph_AFIO, ENABLE);    //使GPIOB时钟以及复用功能时钟
    GPIO_PinRemapConfig(GPIO_Remap_I2C1,ENABLE);
    
    //I2C1_SCL->PB8    //I2C1_SDA->PB9
    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8 | GPIO_Pin_9; //PD.5
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_OD;    //复用推挽输出
    GPIO_Init(GPIOB, &GPIO_InitStructure);
}

 

posted @ 2016-07-14 22:17  mrsandstorm  阅读(2736)  评论(0编辑  收藏  举报