Frage i2c bus aufgaben?

2 Antworten

Ich habe die passenden Zuordnungen mal farbig markiert...

Bild zum Beitrag

Im konkreten Fall hast du einen EEPROM 24C01 mit einem „...01“ hinten. Dementsprechend sind die von mir rot markierten Teile relevant. Die Information aus dem Datenblatt liest sich dann also auf den vorliegenden Fall reduziert folgendermaßen...

Description
The AT24C 01A provides 1024 bits of serial electrically erasable and programmable read-only memory (EEPROM) organized as 128 words of 8 bits each. [...]
Device Address
1K [ 1 | 0 | 1 | 0 | A2 | A1 | A0 | R/W]

=============

Das „provides 1024 bits“ ist die Lösung zu Aufgabe 6.1.

Bzw. wird auch genannt, wie der Speicher aufgeteilt ist... „128 words of 8 bits“, also 128 Wörter mit je 8 Bits, was dann zusammen 128 × 8 = 1024 ergibt. [Zu deiner Frage also... Die 128-mal 8 Bit stehen im Datenblatt als „128 words of 8 bits“.]

============

Zu Aufgabe 6.2... Für die Adressierung der EEPROMS hast du mit A2, A1, A0 dann 3 Bit zur Verfügung, was 2³ = 8 mögliche Zustände angibt, womit 2³ = 8 EEPROMS dieses Typs angesteuert werden können.

Die „1010“ vorne ist festgelegt. [Das kennzeichnet hier beim I²C-Bus übrigens, dass es sich vom Typ des Gerätes her um einen Speicher handelt.] Diese 4 Bit „1010“ können also nicht für die Adressierung verschiedener EEPROMS variiert werden.

Das „R/W“ hinten kann auch nicht frei für die Adressierung genutzt werden, sondern wird dafür genutzt, ob vom Speicher gelesen werden soll, oder ob in den Speicher geschrieben werden soll.

Übrig bleiben nur die 3 Bit A2, A1, A0 für die Adressierung mit dann 2³ = 8 unterschiedlichen Möglichkeiten, also für die Adressierung von bis zu 2³ = 8 EEPROMS diesen Typs.

[Übrigens... Wenn du hingegen beispielsweise 4K-EEPROMS statt 1K/2K-EEPROMS verwenden würdest, hättest du nur die beiden Bit A2 und A1 zur Adressierung von bis zu 2² = 4 EEPROMS diesen Typs zur Verfügung. Das P0 wird nicht zur Adressierung der EEPROMS verwendet, sondern als Erweiterung zur Adressierung der Wörter in einem EEPROM. Denn da man für die Addressierung von 512 = 2⁹ Wörtern dann 9-bit benötigt, erweitert man die 8-bit lange eigentliche Wortadressierung mit einem weiteren Bit P0 aus der Geräteadressierung. Aber dann steht das P0 eben nicht mehr für die Addressierung weiterer EEPROMS zur Verfügung.]

 - (Mathematik, Elektronik, Elektrotechnik)
Mmmmm71 
Fragesteller
 13.03.2024, 12:44

Hey, vielen lieben Dank. Hat mir echt weiter geholfen

0

Du hast den 24C01. Der Speicherbereich ist 128 Wörter breit. Hier 1 Wort = 8 bit. Deshalb hast du 1024 Bits an Speicher.

Im Kasten drunter (Device Address) wird dir aufgezeigt, dass die Adressierung 8-Bit breit ist. Das letzte Bit ist reserviert für den Lese- bzw. Schreibbefehl, sodass für die Device Address selbst nur noch 7-Bit übrig bleiben.

D.h. dass du bis zu 127 I2C Teilnehmer an den Bus anbinden kannst.
Allerdings hat das EEPROM die Kennung (vom MSB beginnend)
1 0 1 0

Die restlichen 3 Bits A2, A1 und A0 bilden somit die Adressierung unterhalb der EEPROMs ab. Somit kannst du nur 8 EEPROMs des gleichen Typs an den Bus anbinden (Adresse 0 bis 7 in Dezimal).