这个设计使用一个EEPROM放置在应用部分上。用约一米长的电缆与主机相连,可以带电拔插。用于记录应用部分的使用状况。
为尽量减少连接线数量,EEPROM使用SCL SDA和GND三根线与主机相连。由以往的经验,主机直接对EEPROM供电,如果设计不当,在热拔插时容易损坏接口。严重时会引起两侧的电路永久性损坏。
在这个设计中,两侧的SCL SDA线路上都串联510Ω电阻并使用双二极管作保护,利用二极管箝位的功能,将输入端电压箝位到安全电压。
EEPROM的供电使用SCL 或SDA的线路供电,当SCL为高电平时,可以通过二极管连接到VEE的一端,对接到EEPROM供电端的电容充电,达到供电的目的。VEE端连接一个5V的TVS管,防止拔插瞬间尖峰电压超标。
图中是主机端读取EEPROM 0x04位置的数据。I2C总线速度约为50Khz,先发出I2C地址写0xA0,得到EEPROM的ACK回应,再发出地址0x04,得到ACK回应。发出I2C地址读0XA1,随后读出1字节。在ACK位置以及最后输出的字节的低电平均比GND略高,这是因为线路上串联的两个510Ω的保护电阻及主机端的10KΩ上拉电阻分压引起的。
带电拔插不会损坏器件。但如果在做写入操作时拔插,有可能会写入失败。
当然可以用1-WIRE总线的EEPROM器件完成相同的工作。且只需要两根线即可。不过1-WIRE总线的EEPROM成本较高。所以弃之不用。
全部0条评论
快来发表一下你的评论吧 !