发新帖我要提问
12
返回列表
打印

求助!I2C器件的热插拔问题!

[复制链接]
楼主: kuliuyisi
手机看帖
扫描二维码
随时随地手机跟帖
21
chunyang| | 2007-5-10 13:25 | 只看该作者 回帖奖励 |倒序浏览

你前面应该先说清楚

    从你前面的描述可以推知一个事实:你已经采用了物理上支持热插拔的器件,那就不会因热插拔行为本身导致器件的异常,只是因I2C主设备发出的通讯指令未获响应而导致软件死锁。而单向设备的情况完全不同,你不说就不要指望别人能自动获知你的条件和前提。
    I2C接口本身不支持热插拔,其本质不是因为物理方面的原因而是因为通讯本身引起。热插拔先要通知主机从设备的接入,然后由主设备发起连接,I2C无此设计,故才需反复查询从设备的响应来判别热插拔行为的有无。单向通讯比较简单,但仍需侦测从设备的连接,这时当然不能靠响应而是得靠诸如电源监测、端口状态等手段辅助实现,然后才能发起通讯。当然,更简单的方法是不管是否存在从设备,主设备自己单独操作就是,但这样很容易出错,只适合特殊应用,USB端的固件程序也得因此修改配合。
    正确的提问非常重要,前提、条件等要给足,否则将徒然浪费时间。

使用特权

评论回复
22
kuliuyisi|  楼主 | 2007-5-10 21:28 | 只看该作者

谢谢chuangyang,确实是我没有说清楚!

不过从前面chuangyang及他人的回答中我也学习了不少东西!

使用特权

评论回复
23
kuliuyisi|  楼主 | 2007-5-11 12:29 | 只看该作者

像我这种情况到底如何解决呢?

在每个从部件的边缘和AN2131的接口处各加缓冲器的方案行吗?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则