新闻中心

EEPW首页 > EDA/PCB > 设计应用 > 基于CPLD的I2C总线接口设计

基于CPLD的I2C总线接口设计

作者:时间:2011-03-21来源:网络收藏

3 应用实例
该模块工作于主模式,主要应用于没有专用接口的CPU通过并口方便地与具有接口的外设连接并交换信息。
图4给出了CPU通过该模块与X24C04E2PROM接口的例子。

本文引用地址:http://www.eepw.com.cn/article/191294.htm


在图中,PC104 CPU通过数据、地址、读、写信号线与接口模块相连,I2C接口模块则通过SDL、SDA与X24C04相连,PC104CPU输出的并行数据,经过I2C接口模块转换后变成符合I2C模式要求的串行数据输出到X24C04,X24C04输出的串行数据经过I2C接口模块转换后,变成并行数据供PC104CPU读取。使用该模块后CPU操作I2C总线就像操作并口一样方便。该电路的控制软件流程如图5所示。


通过上述应用实例可以看出,本文设计的接口模块只能工作于主机模式,并且在整个系统中只能有一个主机工作。在从机因处理其他工作而暂不能响应主机时,模块没有设计等待功能,只能发送总线结束信号结束当前操作,待从机空闲时再重新开始通信。

4 结论
本设计的创新点在于:通过实现并口到I2C总线接口的转换,可以使不具备I2C总线接口的CPU通过并口方便地控制I2C总线设备,使用该模块可以简化控制软件的编程,加快系统设计的实现,在I2C总线操作过程中,转换模块自动发出开始信号、结束信号,不需要CPU干预。
本文设计的I2C接口模块只能工作于主模式,只能应用于主机系统;在模块的设计中,没有考虑多主机的情况,对多主机的总线竞争没有设计仲裁功能;模块的页面读写数据数不能超过32个字节,在32个字节之内,CPU可以通过主动设置工作模式为“110”而终止当前操作,达到连续读写小于32个字节数据的目的,超过32个字节的连续数据读写操作将使模块工作错误。


上一页 1 2 3 4 下一页

关键词: CPLD I2C 总线 接口设计

评论


相关推荐

技术专区

关闭