GPIO模拟I2C应用设计说明书 1 简介 1
1 目的 介绍I2C的特性,工作原理以及通过GPIO(GeneralPu rpose Inpu t /Ou tpu t)模拟I2C总线的时序实现数据传输;该文档描述的设计思想可供GPIO驱动开发者进行设计参考
本文以Hi3510为例,通过具体的应用实例来描述GPIO模拟I2C实现数据传输,本文的读者假定是对GPIO的特点以及工作方式等非常熟悉,涉及到GPIO的内容请参考相关的文档
2 I2C 2
1 概述 I2C总线(The Inter-Integrated Circu it)是一种通用的串行总线,是用于IC器件之间连接的二线制总线
他通过串行数据或者地址线(Serial Data Line,SDA)及串行时钟线(Serial ClockLine,SCL)两线在连接到总线上的器件之间传送信息,并根据地址识别每个器件
一个或多个微控制器以及外围器件可以通过I2C总线接口非常方便的连接在一起构成系统
这种总线结构的连线和连接引脚少,器件间总线简单
结构紧凑,因此其构成系统的成本较低;并且在总线上增加器件不会影响系统的正常工作,所有的IC器件共用一套总线,因此其系统修改和可扩展性好
即使有不同时钟速度的器件连接到总线上,时间同步机制也能够很方便地确定总线时钟,在Hi3510中,I2C仅支持Master功能 ,遵 守I2C总线协议2
1版本,在Hi3510中可用于Video Encoder、Video Decoder、Digital Camera的控制接口
2 特点 I2C接口有以下特点: I2C接口在I2C总线上可以作为接收器,也可以作为发送器,具体由数据的传输方向确定 支持标准传输模式和快速传输模式 提供TX FIFO 、RX FIFO,支持DMA数据传输 支持中断上报和初始化中断状态 ,屏蔽后中断状态的查询 2