zoukankan      html  css  js  c++  java
  • STM32 IIC 时序

    起始信号:当SCL为高期间,SDA由高到低的跳变;启动信号是一种电平跳变时序信号,而不是一个电平信号。
    停止信号:当SCL为高期间,SDA由低到高的跳变;停止信号也是一种电平跳变时序信号,而不是一个电平信号。

    //产生IIC起始信号
    void IIC_Start(void)
    {
        SDA_OUT();  //sda线输出
        IIC_SDA=1;   // 拉高数据线        
        IIC_SCL=1;   // 拉高时钟线
        delay_us(4); //延迟 ,延迟是有必要的,参照I2C协议写的
         IIC_SDA=0; //START:when CLK is high,DATA change form high to low ,触发通讯
        delay_us(4);
        IIC_SCL=0; / / ?钳住I2C总线,准备发送或接收数据,方便数据线上的数据变化
    }     

    //产生IIC停止信号
    void IIC_Stop(void)
    {
        SDA_OUT();//sda线输出
        IIC_SCL=0; // ?
        IIC_SDA=0;//STOP:when CLK is high DATA change form low to high
         delay_us(4);
        IIC_SCL=1;
        IIC_SDA=1;//发送I2C总线结束信号
        delay_us(4);                                   
    }

    REF

    https://zhuanlan.zhihu.com/p/338377414

  • 相关阅读:
    columns布局应用场景
    flex速记
    css属性选择器模糊匹配
    ydui的rem适配方案
    vscode搜索失效问题
    ESP8266 超声波测距模块HC-SR04
    树莓派PICO Wifi 无线网卡 esp82666接线图
    查看数据库容量大小
    面试官问我JVM内存结构,我真的是
    深入浅出Java内存模型
  • 原文地址:https://www.cnblogs.com/emanlee/p/14265008.html
Copyright © 2011-2022 走看看