PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : I²C an AT89LS52 (Port 2)



Winne
10.02.2007, 20:07
hallo 51er

ich bin dabei eine DS3231 ()I²C Uhr an Port 2 anzustricken



RST BIT P2.2 ;PIN20
SDA BIT P2.1 ;PIN19 I2C serial data line
SCL BIT P2.0 ;PIN18 I2C serial clock line





Port 2 is an 8-bit bidirectional I/O port with internal pull-ups. The Port 2 output buffers can sink/source four TTL inputs. When 1s are written to Port 2 pins, they are pulled high by the inter-nal pull-ups and can be used as inputs. As inputs, Port 2 pins that are externally being pulled low will source current (IIL) because of the internal pull-ups.



bekannt:
AVR besitzen je Port 3 Register ein Din ein Dout und ein Richtungsregister.

52er für mich Neuland:
beim 52er scheint es für den Port 2 nur ein Register zu geben? Eine 1 im Portregisterbit bedeutet das der Ausgang über ein internes Pullup high gezogen wird und nur eine 0 darin, per Opendrain, einen festen Pegel gibt.

und hier die Frage:
Ist es also richtig, dass bei einer 1 im Portbit das externe low_ziehen zulässig ist und so der Port als Eingang funktioniert?

Rudo
10.02.2007, 20:17
und hier die Frage:
Ist es also richtig, dass bei einer 1 im Portbit das externe low_ziehen zulässig ist und so der Port als Eingang funktioniert?Ja

Winne
10.02.2007, 20:49
Danke Rudo,

diese Bestätigung wollte ich haben bevor ich 2 Chips himmele weil ich einen nicht ausreichend gut kenne, dies auszuschließen. Ich habe nämlich in den Datasheet vergeblich das Richtungsregister gesucht. ;)

Ronnie (Snoop)
11.02.2007, 01:58
Morgen allerseits..
Winne
Wenn I²C dann aber extra Pullup's!
Die internen sind zu "weak" !

Ronnie

Winne
11.02.2007, 08:46
Morgen allerseits..
Winne
Wenn I²C dann aber extra Pullup's!
Die internen sind zu "weak" !

Ronnie


jou

HW ist nicht von mir und schon fertig ich muss die neue SW machen.

Habe sowas sowas schon mit nem Atmega128 am laufen, aber Du hast recht da sind meine Pullups auch nen bisserl weich (steigende Flanke stark verwischt- nicht vorhanden..... e_Funktion ), und ich sollte sie härter machen.