一.IIC总线说明:
      IIC总线时序只有高低电平的持续时间一般是大于多少us/ms。
      iic时序:
            开始:当SCL为高电平时,SDA由高电平状态切换到低电平状态时,会产生一个起始信号。
            停止:当SCL为高电平时,SDA由低电平转换为高电平,产生一个终止信号。
            数据位传输:当SCL为高电平时SDA的状态不能发生改变,在此过程中数据位被传输。
                      当SCL为低电平时SDA的状态可以发生改变,当SCL为高电平状态时被传输。
            应答信号的产生: 主机向从机写数据时,由从机产生应答信号,主机接收
                     主机读数据时,由主机产生应答信号,从机接收。 当第九个时钟信号到来时,SDA为高电平规定为不产生应答信号,低电平为产生应答信号。
      IIC设备读写序列:
            写:  START | SLAVEADDR W | ACK| MEMOMRYADDR| ACK| DATA LSB| ACK| DATA MSB| ACK| STOP|
            读:  START | SLAVEADDR W | ACK| MEMORYADDR | ACK| REPEATED START| MEMORYADDR R|ACK|DATA LSB|ACK|DATA MSB|NACK|STOP|
                     
 二.调试说明:
      确定总线时序没有问题时,应从多方面分析问题。
      对于IIC总线,当读取到的信号全为0XFF时,说明的问题是 :
                                                    时序问题 ,延迟不准确导致
                                                    硬件问题 ,接线是否正确,从机器件信息是否正确,线是否接反。
                                                    上拉电阻 ,因为SDA /SCL只能输出0,所以需要上拉电阻才能产生高电平。1.5K /2.2K /4.7K
     ******************
     **此次调试的问题:**
     ******************
                     确定软件时序没问题后,没能从硬件角度去查找问题。当GPIO引脚复用时,要开启RCC_APB2Periph_AFIO时钟。
                  各种信号都有电平状态,前期可以根据电平值初步估计硬件是否有问题。
                
   
   三、多主机设备 multi host

4.IIC总线的更多相关文章

  1. IIC总线

    一. 概述 1. IIC总线是PHILIPS公司推出的一种串口总线,是具备多主机系统所需的包括总线裁决和高低速器件同步功能的高性能串口总线. 2. IIC总线只有两根双向信号线.一根是数据线SDA,一 ...

  2. IIC总线解析

    IIC简介: IIC 即Inter-Integrated Circuit(集成电路总线),这种总线类型是由飞利浦半导体公司在八十年代初设计出来的,主要是用来连接整体电路(ICS) ,IIC是一种多向控 ...

  3. 十天学会单片机Day5 IIC总线AT2402芯片(EEPROM)应用

    1.采用串行总线技术可以使系统的硬件设计大大简化.系统的体积减小.可靠性提高.同时,系统的更改和扩充极为容易. 常用的串行扩展总线有: IIC (Inter IC BUS)总线.单总线(1-WIRE ...

  4. 用I/O口模拟IIC总线协议遇到的一些问题

    最近做的一个项目,是基于IIC总线通信的传感器系统.由于另外一个传感器使用的是类IIC协议,而不是标准IIC,所以MCU不能与其通信,最后没有办法,只有通过I/O口模拟的方式实现IIC的总线通信.具体 ...

  5. IIC总线协议

    前言:年前给老师做个红外抄表系统,,现在对当中用到的一些模块总结一下. 1.只有在总线空闲时才允许启动数据传送. 2.在数据传送过程中,当时钟线为高电平时,数据线必须保持稳定状态,不允许有跳变.时钟线 ...

  6. IIC总线协议---以存储芯片at24c64为例

    IIC总线协议 前言:年前给老师做个红外抄表系统,,现在对当中用到的一些模块总结一下. 1.只有在总线空闲时才允许启动数据传送. 2.在数据传送过程中,当时钟线为高电平时,数据线必须保持稳定状态,不允 ...

  7. 【接口时序】6、IIC总线的原理与Verilog实现

    一. 软件平台与硬件平台 软件平台: 1.操作系统:Windows-8.1 2.开发套件:ISE14.7 3.仿真工具:ModelSim-10.4-SE .ChipScope 硬件平台: 1. FPG ...

  8. 对 IIC 总线的理解、调用函数以及常见面试问题

    一.IIC 总线概述: IIC 即Inter-Integrated Circuit(集成电路总线) I2C总线是PHLIPS公司推出的一种串行总线, I2C总线只有两根双向信号线.一根是数据线SDA, ...

  9. IIC总线初识

    IIC总线初识 IIC总线的拓扑结构 八位数据分布: 写操作: 读操作: IIC总线的工作频率: IIC总线的时序(重要): 起始位的时序: 用verilog代码描述这一过程: 此处是用来描述SDA信 ...

随机推荐

  1. sublim 配置 用户默认绑定的格式化文本快捷键

      //在绑定用户绑定配置中 加入 激活每个字母提示! "auto_complete": true,"auto_match_enabled": true, &q ...

  2. flask请求上下文

    先看一个例子: #!/usr/bin/env python # -*- coding:utf-8 -*- import threading # local_values = threading.loc ...

  3. 码云git使用五(创建远程分支和更新远程分支)

    1.创建一个与远程分支没有关联的本地分支 2.从远程拉取到本地分支 3.创建远程分支() 4.搞定了.

  4. SpringCloud服务负载均衡实现原理02

  5. angularjs 下滑线滑动

    css: .detail_row { width: 410px; height: 34px; clear: both; border-bottom: 1px solid #eaeeef; font-s ...

  6. Python *Mix_w3

    1.基本数据类型(int,bool,str) int 整数 str 字符串. 一般不存放大量的数据 bool 布尔值. 用来判断. True, False list 列表.用来存放大量数据, []表示 ...

  7. Linux:Ubuntu系统的安装

    好久没更了,今天就更完这一期的Linux系统吧,这次主要安装的是常用Linux系统的之一:Ubuntu(乌班图)系统,这个系统和CentOS 7的安装步骤也是类似的,(我不采取用虚拟机的方法来安装,当 ...

  8. LINUX系统配置

    LINUX系统配置 Linux 安装jdk方法; Linux Tomcat 安装与配置 Linux redis 安装与配置 (例1) Linux redis安装配置(例2) NGINX 安装 Linu ...

  9. Spring3(一) 控制反转(IoC)和依赖注入(DI)

    几个常用框架之间的关系 1       spring框架概述 1.1   什么是spring Spring是一个开源.轻量级的Java 开发框架.框架的主要优势之一就是其分层架构,分层架构允许使用者选 ...

  10. Dubbo的Filter实战--整合Oval校验框架

    前言: 其实很早之前就想写一篇关于oval和具体服务相整合的常见做法, 并以此作为一篇笔记. 趁现在项目中间空闲期, 刚好对dubbo的filter有一些了解. 因此想结合两者, 写一下既结合校验框架 ...