
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
||
|
Hallo Alex, > Scheinbar bekommt der IC über diese Leitungen Spannung. An Vdd-Vss kann ich bei Ausfall immernoch 3.3 Volt messen, vor den beiden Wiederständen jeweils 5V. die genaue Beschaltung ist mir unbekannt. Aber ich vermute stark, die beiden (oder eine der beiden) Leitungen werden vom Controller per Push-Pull angesprochen, statt wie vorgeschrieben per Open-Drain (bzw. Open-Collector). Dadurch fließt in Deinem Fall der Strom von VDD des Kontrollers über den Porttransistor (SCL und/oder SDA), den 330-Ohm-Widerstand und die Schutzdiode am Eingangsport des I²C-Bus-Bausteins zu dessen VDD-Leitung. Da auf dem Weg 1,7 Volt verloren gehen und an der Diode rund 0,7 Volt abfallen, beträgt der Spannungsabfall am Widerstand rund 1 Volt. Den fließenden Strom kann man damit berechnen zu I = U/R = 1 Volt/330 Ohm = 3 mA. Genaueres kannst Du im Datenblatt des Kontrollers nachlesen, aber ich kann mir nicht denken, daß der Porttransistor mit diesen 3 mA überlastet ist. Da Du aber schreibst, daß noch mehr Geräte am Bus hängen kann ich mir gut vorstellen, daß auch diese Strom aus dem Bus ziehen. Diese I²C-Bus-Bausteine benötigen zum Funktionieren wahrscheinlich mehr Spannung als der PCF8591. Deshalb reagieren sie nicht. Um den Spuk zu beendet sollte man den I²C-Bus per Open-Drain ansprechen. Über den relativ hochohmigen Pull-Up-Widerstand würde soviel Spannung abfallen, daß die Restspannung zum Betrieb der I²C-Bausteine nicht mehr ausreicht. Open-Drain ist ohnehin günstiger, denn bei Push-Pull kommt es üblicherweise zu einem Kurzschluß an SDA, wenn der Slave das ACK-Signal sendet und der Master als letztes ein High-Bit übertragen hat. Gruß Dietmar Meine Homepage: http://ccintern.dharlos.de |
| Antwort schreiben |