如题,
STM32F429使用IIC
通信的时候,是否需要外加上拉电阻?
看过很多资料,都说是需要上拉电阻,让人郁闷的是,这次设计硬件的时候,偏偏忘记了加,于是乎我进行了测试,
- //使能IO引脚时钟
- RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOB,ENABLE);
- //打开复用功能
- GPIO_PinAFConfig(GPIOB,GPIO_PinSource6,GPIO_AF_I2C1);
- GPIO_PinAFConfig(GPIOB,GPIO_PinSource7,GPIO_AF_I2C1);
- //配置GPIO
- GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6 | GPIO_Pin_7;
- GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
- GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;
- GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;//GPIO_PuPd_NOPULL;
- GPIO_InitStructure.GPIO_OType = GPIO_OType_OD;
- GPIO_Init(GPIOB, GPIO_InitStructure);
发现,使用内置的上拉,
单片机可以正常IIC通信,如果使用NOPULL,则IIC工作不正常...
是否可以说,只要使用内部的上拉就可以省掉外部上拉?
有人做过这样的测试不?