微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 请教一个问题,51单片机模拟I2C

请教一个问题,51单片机模拟I2C

时间:10-02 整理:3721RD 点击:
void stop()
{       
        SDA = 0;    //先拉低SDA//
        delay();
        SCL = 1;
        delay();
        SDA = 1;
        delay();
}
我之前编译的时候,把SDA拉低放在SCL = 1的后面,结果是单片机只能读写
一次数据,后面即使改变数据, LED灯也没有反应。 我弄不懂是为什么?能
给点提示吗

我认真看了时序图, 按我自己的理解,停止信号是时钟线SCL高电平维持一段时间, 数据线SDA由低电平到高电平
的一个跳变。 产生停止信号。     还有起始信号SDA = 1放在SCL = 1前面对程序效果没有影响。 希望
能给提示,或者是资料。   

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top