搜索
bottom↓
回复: 11

用CPLD做多路I2C选择器中的双向端口问题求解

[复制链接]

出0入0汤圆

发表于 2009-4-8 18:03:47 | 显示全部楼层 |阅读模式
使用EPM240做多路i2c器件间的总线选择,如M8用两条线连到CPLD,而CPLD用8条线分别连接到四组I2C总线上,如何实现这个功能?
SPI很简单,因为所有商品的方向都是固定的,但I2C的SDA线方向是动态的,即便是用inout方式下的端口也不容易控制方向(因为要用CPLD动态抓包来分析数据流向),各位高手有什么办法吗?

阿莫论坛20周年了!感谢大家的支持与爱护!!

知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)

出0入4汤圆

发表于 2009-4-8 18:28:08 | 显示全部楼层
另外用m8的io做总线选择信号和读写方向控制

出0入0汤圆

 楼主| 发表于 2009-4-8 18:35:45 | 显示全部楼层
但这样以来所有的驱动都要修改了,比较麻烦了,能不能通过某种方法直接修改PIA连接呢?

出0入0汤圆

 楼主| 发表于 2009-4-9 09:50:30 | 显示全部楼层
up下,继续求解

出0入4汤圆

发表于 2009-4-9 09:57:49 | 显示全部楼层
ALTERA上有类似的代码  你下载个参考下

出0入0汤圆

 楼主| 发表于 2009-4-9 10:19:16 | 显示全部楼层
AP中没有类似的范例,早就找过啦
记得是有什么方法直接把两个IO给连到一起的,而不受其它部件影响,只不过是静态,不能动态修改

出50入0汤圆

发表于 2009-4-9 10:32:12 | 显示全部楼层
用连续赋值:assign sda = write? write_data[7] :1'bz

在读入数据时:read_data[7] <= sda

出0入0汤圆

发表于 2009-4-9 10:36:00 | 显示全部楼层
赞一下研究精神。
别费这个劲了,基本上cpld要把I2C的协议都实现,用的宏单元一大把,稳定性还是未知数呢。
用现成的吧。NXP的pca9544,一扩4路I2C,才不到8元。

出0入0汤圆

 楼主| 发表于 2009-4-9 10:54:23 | 显示全部楼层
7楼正解啊!
感谢6楼,不过这种方法仍然需要预先知道数据流向的

不过还是幻想能用什么方法直接修改PIA连接,不过貌似是不可能的,因为240是eeprom型,烧好后连接也就定了,呵呵

出0入0汤圆

发表于 2009-4-15 20:40:30 | 显示全部楼层
个人觉得应该不难,例如USB的HUB,所传的数据也是双向的。其实电路并不复杂,只用一些触发器加少量的逻辑电路就行了。在这里假设共有5个IIC接口,不分主从(IIC本身是双向,而且应该都有地址识别功能,就算发给别的设备的数据出现在数据线上,如果地址不同,也不会响应),5个端口默认工作在查询状态(都为输入),任何一个端口检测到有数据线的变化,就向剩余的4个端口转发。然后在ACK位停止转发,又回到查询状态。假设其中的一个端口发送ACK状态,则又会检测到数据线的变化,并进行转发。重复此过程就行了。

出0入0汤圆

 楼主| 发表于 2009-5-30 02:46:27 | 显示全部楼层
这个方法好!哈哈,多谢dickhou的方法

后来发现把问题想复杂了,IIC本来就是总线,还是直接连到一起,然后用CPLD去控制其地址和选通来得方便,最终采用了这个办法

出0入0汤圆

发表于 2013-6-6 20:07:35 | 显示全部楼层
Totry 发表于 2009-5-30 02:46
这个方法好!哈哈,多谢dickhou的方法

后来发现把问题想复杂了,IIC本来就是总线,还是直接连到一起,然后 ...

我现在也遇到这人问题,请教“用CPLD去控制其地址和选通”中的用CPLD去控制其地址怎么实现?谢谢
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-7-24 05:13

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表