IIC 开始函数问题

void I2C_Start(void)
{
    SDA_Out();
    
    SDA_H;
    SCL_H;
    I2C_Delay(100);
    
    SDA_L;
    I2C_Delay(100);
    
    SCL_H; // 视频里说此处拉低 SCL,但是代码却是 SCL_H,是讲错了还是代码错了?
    I2C_Delay(100);
}


另外,对于讲解的开始和停止函数,暂时还没法和时序图对应上,能在详细说说对应关系吗?

attachments-2021-09-36fzkLVo6141ac58f3389.jpg

请先 登录 后评论

最佳答案 2021-09-17 16:49

1.代码错误,仓库已更新

2.以开始信号为例,看时序图,就是在SCL保持高的情况下,SDA有高变低,就表示了开始信号。

而代码,也就对应实现了这个效果,有哪里不明白呢?

请先 登录 后评论

其它 0 个回答

  • 1 关注
  • 0 收藏,132 浏览
  • stickmind 提出于 2021-09-15 14:38

相似问题