当前位置: 首页 > news >正文

4-DE10-Nano的HDMI方块移动案例——I2C通信协议

1 I2C简介


I2C(Inter-Integrated Circuit)是一种由飞利浦半导体(现为恩智浦半导体)在1980年代初开发的同步、串行、半双工的总线型通信协议。主要用于近距离(同一块印刷电路板(PCB)上的集成电路(IC)之间)、低速(注:标准模式100K,快速模式400K,高速模式3.4M)的芯片之间的通信。

I2C总线有两根信号线,一根数据线SDA用于收发数据,一根时钟线SCL用于通信双方时钟的同步。I2C总线是一种多主机总线,连接在I2C总线上的器件分为主机和从机,主机有权发起和结束一次通信,而从机只能被主机呼叫。每个连接到I2C总线上的器件都有一个唯一的地址(7-bit)。主机通过I2C设备的地址来选择从机。


2 I2C的三态门电路


信息双向传输(方向为inout)的时候需要使用三态门电路。FPGA内部三态门结构:




当sda_out为1时,sda被设置为高阻态(1'bz),即此时sda由外部设备(或上拉电阻)控制。当sda_out为0时,sda被驱动为0。这种设计符合I2C协议的开漏输出特性:I2C设备只能将数据线拉低(输出0)或释放(输出高阻,由上拉电阻拉高)。因此,这个三态设置实现了I2C数据线的双向通信:既可以输出数据(拉低),也可以输入数据(释放总线并读取)。具体的Verilog实现如下:


所以FPGA和外设之间要有个上拉电阻,如下是DE10-Nano的相关电路图:


3 I2C协议的开始与结束信号


开始条件为当SCLK(时钟脚)保持在高电平时, SDIN(数据脚)从高到低,接着会开始进行地址与数据传输;停止的条件是被定义成在 SCLK 在高电平时, SDIN 有一个低到高转换:


4 I2C协议的字节传送与应答


I2C总线通信时每个字节为8位长度,数据传送时,先传送最高位,后传送低位,发送器发送完一个字节数据后,接收器必须发送1位应答位(应答:低电平"0";非应答:没接收到数据或者接收器不想应答,就保持高电平"1")来回应发送器,即一帧共有9位。



5 I2C协议的同步信号


I2C总线在进行数据传送时:
时钟线SCL为低电平时,发送器向数据线上发送1-bit数据,在此期间数据线上的信号允许变化;
时钟线SCL为高电平时,接收器从数据线上读取1-bit数据,在此期间数据线上的信号不允许发生变化,必须保持稳定。



6 I2C协议的写操作

主机先产生一个起始信号ST,再由主机发送出欲控制的器件地址Device Address[6:0],再加上 1 位的 W/R 读写位(设定为 0)。从机收到主机发送出8 位信号后,会回应一个 ACK 信号;接着送出寄存器地址Register Address[7:0](有的寄存器地址是16位,则可分两次发送),从机收到主机发送出8 位信号后,会回应一个 ACK 信号;接着送出 8 位数据 Data[7:0],从机收到主机发送出8 位信号后,会回应一个ACK 信号。传输完成后,会从主机送出停止信号SP。则完成了将数据 Data[7:0] 写入 Device Address[6:0] 设备中的 Register Address[7:0] 寄存器中:


7 I2C协议的读操作

主机先产生一个起始信号ST,再由主机发送出欲控制的器件地址Device Address[6:0],再加上 1 位的 W/R 读写位(设定为 0)。从机收到主机发送出8 位信号后,会回应一个 ACK 信号;接着送出寄存器地址Register Address[7:0],从机收到主机发送出8 位信号后,会回应一个 ACK 信号;接着主机重新送出开始信号SR(restart),再由主机发送出欲控制的器件地址DeviceAddress[6:0],再加上 1 位的 W/R 读写位(设定为 1)。从机收到主机发送出8 位信号后,会回应 一个 ACK 信号。接着读取 8 位数据 Data[7:0],主机收到8 位信号后发送一个NACK给从机,通知从机主机不再需要更多的数据,最后从主机送出停止信号SP:

往期阅读

1-DE10-Nano的HDMI方块移动案例——显示器时序(DMT)标准介绍

2-DE10-Nano的HDMI方块移动案例——HDMI接口介绍(含TMDS)

3-DE10-Nano的HDMI方块移动案例——ADV7513芯片解读

http://www.rkmt.cn/news/115172.html

相关文章:

  • 2025年年终重庆清洁公司推荐:涵盖高空作业与创新技术的5家知名服务商深度评测与综合价值评估 - 品牌推荐
  • 短样本也能克隆音色?EmotiVoice零样本学习能力实测
  • 基于EmotiVoice的语音合成应用实践全攻略
  • 盘点2025年生物反应器市场分析:国内定制生物反应器生产厂家推荐,哪个品牌/供应商值得推荐? - 品牌推荐大师
  • 语音合成用户体验调研:目标人群对EmotiVoice的接受度
  • 安卓/MTK平台日志关键词详解
  • 打卡信奥刷题(2549)用C++实现信奥 P2113 看球泡妹子
  • SCI论文版面费怎么付?(保姆级教程)
  • Hadoop在大数据领域的日志分析实践
  • 《60天AI学习计划启动 | Day 43: 基于 Agent 的任务工作流(巡检 / 定时报表 / 多步任务》
  • 中国A 股上市公司年报管理层语调(1991-2024)
  • 股市估值对跨境数字内容审核的影响
  • 27、杰出贡献者风采展示
  • 17、通过量子计算技术优化供应链效率与透明度
  • 2025年金融科技创新平台推荐:五家优选实力12月最新深度解析 - 速递信息
  • 实验6
  • 安全测试分享!带你掌握安全测试的核心实战技能
  • 从“抗病毒治疗”到“全周期防护”:漱沐坦流感防治新思维 - 速递信息
  • 2025年主流代码托管平台横向评测:本土化与全球化之争
  • 8、硬件与软件RAID构建全解析
  • 【湖南工程学院主办,IEEE出版】第二届无人系统与自动化控制国际学术会议(ICUSAC 2025)
  • Web3和区块链项目的开发
  • 2025-2026 北京十大律师事务所测评:靠谱机构排名与专业解决方案解析 - 苏木2025
  • 2025年12月卧室与客厅吸顶灯买哪个牌子好?五大质量好吸顶灯品牌深度评测家用吸顶灯选购品牌安全可靠、耐用且口碑好(附卧室客厅推荐) - 阿喂嘞lvv
  • jQuery EasyUI 数据网格 - 取得选中行数据
  • 2025年最新电线/防火/矿用/控制/计算机线缆厂家推荐TOP5:津达线缆领衔北方制造,赋能国家级工程 - 深度智识库
  • 基于springboot + vue酒店预订系统(源码+数据库+文档)
  • AA精通BTC第3版精读02
  • 羊驼毛制品的优缺点
  • LobeChat法律咨询原型:专业领域问答系统的构建