Rush ... schrieb:
> Mir stellt sich auch die Frage ob den externe Pullups im I2C-Mode
> zwingend erforderlich sind oder ob das USCI-Modul bei Aktivierung der
> I2C-Einheit automatisch die internen Pullups einschaltet.
Externe Pullups sind notwendig, weil die internen lt. Kapitel 8.2 im
Family Guide nur dann verwendbar sind, wenn der Betriebsmodus Digital
"I/O" ist. Wenn USCI aktiviert ist, dann ist das aber kein "Digital I/O"
mehr, deshalb sagt 20.3 im FUG auch ganz explizit:
"Both SDA and SCL are bidirectional and must be connected to a positive
supply voltage using a pullup resistor."
Macht auch Sinn, denn der interne Pullup hat lt. Datasheet typisch 35
kOhm, typisch nimmt man für I2C jedoch 4k7.
> Laut LogicAnalyzer ändern sich nämlich die Pegel der mit
> P1REN |= BIT6 + BIT7 konfigurierten Pullups nicht.
> Ist das so korrekt? Sie bleiben immer auf LOW.
Vermutung: Solange das Peripheriemodul USCI aktiviert ist, ist es ihm
egal, was Du in PxREN reinschreibst, kümmert ihn nicht, da nicht
"Betriebsart Digital I/O".
> Könnte eventuell jeman den Code bei sie ausprobieren und mir Feedback
> geben? Das wäre wirklich super....
Mit dem Code kenne ich mich leider nicht aus, erstens verstehe ich C
noicht wirklich großartig, zweitens bin ich generell Anfänger und
drittens hab' ich mit dem MSP430 real noch nie was gemacht, hab' nur vor
ein paar Wochen mal ein paar Datasheets überflogen. Und jetzt
nachgeguckt :-)
LG, NOR
PS: Alles ohne Gewähr, hab' ich mir nur auf die schnelle
zusammengereimt.