FRAGEZEICHEN
Vielleicht hängt das damit zusammen, was im Datenblatt des ATmega128 steht:
Würde bedeuten, dass SCL (Pin#25 PD0) für I2C-Betrieb dann als Open-Drain geschaltet wird und einen externen Pull-UP benötigt(?)SCL, Two-wire Serial Interface Clock: When the TWEN bit in TWCR is set (one) to enable the Two-wire Serial Interface, pin PD0 is disconnected from the port and becomes the Serial Clock I/O pin for the Two-wire Serial Interface. In this mode, there is a spike filter on the pin to suppress spikes shorter than 50ns on the input signal, and the pin is driven by an open drain driver with slew-rate limitation.
Dann hättest Du einen Pull-UP am Pin#25 des ATmega128, wegen dem Open Drain. Der andere Pull-UP am Pin#26 entspräche dann dem R1 im Datenblatt des P82B715, wie unter Figure 5. Single Pullup Buffered Bus gezeigt. Allerdings halte ich 1.5kOhm für ein bißchen wenig. Ich würde es mit größeren Werten versuchen >=4.7kOhm. Dieser R1 wird im Beispiel des P82B715 mit 10kOhm angegeben.
/FRAGEZEICHEN
Beim ATmega328 steht dasselbe drin:
Und beim ATmega16 steht dasselbe drin:SCL/ADC5/PCINT13 – Port C, Bit 5– SCL: 2-wire Serial Interface Clock. When the TWEN bit in TWCR is set (one) to enable the 2-
wire Serial Interface, pin PC5 is disconnected from the port and becomes the Serial Clock I/O
pin for the 2-wire Serial Interface. In this mode, there is a spike filter on the pin to suppress
spikes shorter than 50 ns on the input signal, and the pin is driven by an open drain driver
with slew-rate limitation.
Also wieder keine richtige Erklärung, irgendwie.SCL, Two-wire Serial Interface Clock: When the TWEN bit in TWCR is set (one) toenable the Two-wire Serial Interface, pin PC0 is disconnected from the port andbecomes the Serial Clock I/O pin for the Two-wire Serial Interface. In this mode, there isa spike filter on the pin to suppress spikes shorter than 50 ns on the input signal, and thepin is driven by an open drain driver with slew-rate limitation.
MfG
![]()
Lesezeichen