概述
1、I2C总线GPIO初始化设置:
void I2C_GPIO_Init(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_GPIOB|
RCC_APB2Periph_GPIOC);
RCC_APB1PeriphClockCmd(RCC_APB1Periph_I2C1,ENABLE);
GPIO_InitStructure.GPIO_Pin=I2C_SCL | I2C_SDA;
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AF_OD;
GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
GPIO_Init(I2CPORT,&GPIO_InitStructure);
}
代码注释:
GPIO_InitTypeDef 一种复合数据类型(利用结构体);
RCC 设置MCU不同功能模块的时钟源和工作频率,通过RCC_APB2PeriphClockCmd(…)函数使能APB2总线对GPIOA、GPIOB、GPIOC端口的时钟配置;
通过RCC_APB2PeriphClockCmd(…)函数使能APB1总线I2C1的时钟和频率配置
通过GPIO_InitStructure结构体选择SCL和SDA端口,设置模式为复用开漏输出,I/O转换速度为50MHz,接着通过GPIO_Init()函数将相关初始化配置写入I2CPORT端口。
最后
以上就是清新镜子为你收集整理的I2C总线GPIO初始化设置的全部内容,希望文章能够帮你解决I2C总线GPIO初始化设置所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复