你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

I2C2 IO口设置问题

[复制链接]
hxh820-36096 提问时间:2017-2-27 10:56 /
用STM32 的I2C2时碰到问题,PB10,PB11外接4.7K上拉,将IO口配置成为开漏输出后,IO口就拉低了,不知为什么?求高手指点
收藏 1 评论8 发布时间:2017-2-27 10:56

举报

8个回答
hxh820-36096 回答时间:2017-2-27 10:59:23
void GPIO_Configuration(void)
{
  GPIO_InitTypeDef GPIO_InitStructure;
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1 | GPIO_Pin_10 | GPIO_Pin_11;
        GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_OD;
        GPIO_Init(GPIOB, &GPIO_InitStructure);

}
执行完最后一条语句,IO口就拉低了
wdluo 回答时间:2017-2-27 11:45:48
时钟有使能??
hxh820-36096 回答时间:2017-2-27 12:17:02
wdluo 发表于 2017-2-27 11:45
时钟有使能??

使能了
void RCC_Configuration(void)
{
        RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, DISABLE);
  RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOB , ENABLE);
  RCC_APB2PeriphClockCmd( RCC_APB1Periph_I2C2, ENABLE);
  RCC_AHBPeriphClockCmd( RCC_AHBPeriph_DMA1,ENABLE);
  
}
在IO初始化前调用
zoomdy 回答时间:2017-2-27 12:53:03
  1. RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, DISABLE);
复制代码

DISABLE?
五哥1 回答时间:2017-2-28 04:05:40
用cube试下。
hxh820-36096 回答时间:2017-3-2 14:21:14
找到原因了,谢谢各位!!!
zero99 回答时间:2017-5-24 13:44:07
hxh820-36096 发表于 2017-3-2 14:21
找到原因了,谢谢各位!!!

楼主可以分享下原因啊  多多交流学习~
zxcyufei 回答时间:2020-12-10 15:52:02
void GPIO_Configuration(void)
{
   ...
    .
    .
   ...
  I2C_Stop();  //加上这句
}


void I2C_Stop(void)
{
  I2C_SDA_0();
  I2C_SCL_1();
  I2C_Delay();
  I2C_SDA_1();
}

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版