• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

iic中起始信号最后时钟变低是为啥

huihui163 2017-10-19 浏览量:1839
SDA_OUT();     //sdaÏßÊä³ö
IIC_SDA=1;    
IIC_SCL=1;
delay_us(4);
  IIC_SDA=0;//START:when CLK is high,DATA change form high to low 
delay_us(4);
IIC_SCL=0;//ǯסI2C×ÜÏߣ¬×¼±¸·¢ËÍ»ò½ÓÊÕÊ
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • I2C协议规定,CLK为高时,拉低SDA表示起始位,数据只允许在SCK为底时变化,CLK为高时,数据锁存;此时拉低CLK是开始写数据。
    • 发布于 2017-10-20
    • 举报
    • 评论 1
    • 0
    • 0
电子老工程师 回复了 : 回复

其他答案 数量:5
  • 程序前面部分已经发送起始信号,最后的时钟线拉低应该是准备传送数据。
    • 发布于2017-10-19
    • 举报
    • 评论 0
    • 1
    • 0

  • 只是你这个程序是这么写的,总体时序符合IIC的要求就好。

    多看看例程,还有开始信号时钟没有拉低的。

    不过拉低时,可以表示IIC总线处于非空闲状态

    • 发布于2017-10-19
    • 举报
    • 评论 0
    • 0
    • 0

  • 防止时钟线拉高,数据线电平变化引起别的信号
    • 发布于2017-10-22
    • 举报
    • 评论 0
    • 0
    • 0

  • 模拟scl时钟
    • 发布于2017-10-25
    • 举报
    • 评论 1
    • 0
    • 0
电子老工程师 回复了  :两型号区别是产地,TJA1043T,118不用于新设计, TJA1043T/1J该料量产。 回复

相关问题

问题达人换一批

iic中起始信号最后时钟变低是为啥