Forum: Mikrocontroller und Digitale Elektronik I2C Totaler Anfänger


von Sebastian N. (sebastian_neusch)


Lesenswert?

Hallo an alle,

Ich bin totaler Anfänger in Sachen in I2C, und deshalb die 
wahrscheinlich dumme Frage:
Ich habe ein 7-Segment treiber für IIC, und ein IIC Master(µC) und nun 
die Frage, wenn ich dem 7-Segment Daten schicken will, muss ich diese 
jetzt ja an eine bestimmte adresse schicken, die Frage nun, wie finde 
ich heraus welche Adresse der 7-Seg-Treiber hat, wenn er nicht das 
einzige IIC, gerät in dem BUS Netzwerk ist.??

Mit freundlichen Grüßen

Sebastian Neusch

von Timmo H. (masterfx)


Lesenswert?

Die Adresse steht im Datenblatt

von Achim S. (achims)


Lesenswert?

Such mal diese Seite. Dort gibt es viele Beispiele und Anwendungen für 
I2C Bus

http://playground.boxtec.ch/doku.php/tutorials/start

von Sebastian N. (sebastian_neusch)


Lesenswert?

Vielen Dank, Also kann ich nicht einfach so mehrere SAA1064 anschliessen 
?

von Sebastian (Gast)


Lesenswert?

Sebastian N. schrieb:
> Also kann ich nicht einfach so mehrere SAA1064 anschliessen ?

Wie du die Adresse einstellst, falls das möglich ist, steht auch im 
Datenblatt.

von Sebastian N. (sebastian_neusch)


Lesenswert?

Ehh ja hab mal wieder den Überblick über das Datenblatt verloren, habe 
gerade gesehen, wie man über eine Psannungseinstellung die Adress 
verstellen kann

von Martin B. (martin_b97)


Lesenswert?

Sebastian schrieb:
> Sebastian N. schrieb:
>> Also kann ich nicht einfach so mehrere SAA1064 anschliessen ?

Doch, 4 Stück, siehe DB Seite 5 
(http://www.fortito.mx/wp-content/uploads/technical/SAA1064.pdf). Wenns 
noch mehr sein sollen musst du halt zusätzliche CS (Chip Select) 
Leitungen legen.

Grüße,
Martin

von holger (Gast)


Lesenswert?

>Ehh ja hab mal wieder den Überblick über das Datenblatt verloren

Das hier steht auf der zweiten Seite

It features an I2C-Bus slave transceiver interface
with the possibility to program four different SLAVE
ADDRESSES

So viel mal zu deinem Datenblattstudium.

von Sebastian N. (sebastian_neusch)


Lesenswert?

Ja habe ich ja geschreiben, steht ja n satz später das was ihr 
geschriebn ahbt

von Thinksilicon (Gast)


Lesenswert?

Sebastian N. schrieb:
> Vielen Dank, Also kann ich nicht einfach so mehrere SAA1064 anschliessen

Doch, wozu glaubst du ist der Address-Pin?
1
Four different slave addresses can be chosen by connecting ADR either to
2
VEE,
3
3/8 VCC,
4
5/8 VCC
5
or VCC
6
7
This results in the corresponding valid addresses HEX 70, 72, 74 and 76 for writing and 71, 73, 75 and 77 for reading.
8
All other addresses cannot be acknowledged by the circuit.

von Martin B. (martin_b97)


Lesenswert?

Und vergiss die Pullups nicht. Ich empfehle 4k7.

Martin

von Sebastian N. (sebastian_neusch)


Lesenswert?

Wie funktioniert das bei dem EEPROM 24C64, ich habe schon gesehen dass 
man das irg wie über die A0,A1,A2 Pins machen kann, aber ich kann nicht 
allzugut englisch, kann mir da jemand helfen ?
Ich möchte recht viel Speicherplatz per IIC verfügbar haben, dies wenn 
möglich nicht über Portexpander sonder chips die direkt am I2C arbeiten.

Mit freundlichen Grüßen

Sebastian Neusch

PS:
Vielen Dank für eure bisherige Hilfe

von Achim S. (achims)


Lesenswert?

Erschlagt den Anfänger nicht gleich mit zu viel wissen. Langsam 
anfangen, überblick verschaffen und (ganz wichtig) einige Tuts lesen 
über den Aufbau und Funktion I2C Bus

von Thinksilicon (Gast)


Lesenswert?

1
Up to eight devices may be connected to the same bus
2
by using different chip select bit combinations. These
3
inputs must be connected to either VCC or VSS

Auf gut Deutsch: Adresspins entweder mit 5V oder GND verbinden. Gibt 
eine logische 1 oder 0 an den Pins und entsprechend lassen sich 8 
verschiedene Adressen kodieren, die alle von der Basisadresse 1010 
ausgehen (Figure 3-2 
http://ww1.microchip.com/downloads/en/DeviceDoc/21189f.pdf )

(Nächsten Urlaub machst dann aber bitte im englisch sprachigen Ausland 
und nicht am Baggeree :D )

von Easylife (Gast)


Lesenswert?

Martin B. schrieb:
> Wenns
> noch mehr sein sollen musst du halt zusätzliche CS (Chip Select)
> Leitungen legen.

CS gibts bei SPI, nicht bei I2C.
Mehr als 4 von den Dingern an einem Bus geht nur mit Bus-Multiplexer.

von Martin B. (martin_b97)


Lesenswert?

Easylife schrieb:
> Martin B. schrieb:
>> Wenns
>> noch mehr sein sollen musst du halt zusätzliche CS (Chip Select)
>> Leitungen legen.
>
> CS gibts bei SPI, nicht bei I2C.
> Mehr als 4 von den Dingern an einem Bus geht nur mit Bus-Multiplexer.

Ok, my Fault.

von ein Gast (Gast)


Lesenswert?

Easylife schrieb:
> Martin B. schrieb:
>> Wenns
>> noch mehr sein sollen musst du halt zusätzliche CS (Chip Select)
>> Leitungen legen.
>
> CS gibts bei SPI, nicht bei I2C.
> Mehr als 4 von den Dingern an einem Bus geht nur mit Bus-Multiplexer.

Oder die Chip Select Leitung geht auf einen bzw. die Adresspins des I2C 
Slaves und ändert dessen Adresse dynamisch ...

von Gerald G. (gerald_g)


Lesenswert?

Easylife schrieb:
> CS gibts bei SPI, nicht bei I2C.
> Mehr als 4 von den Dingern an einem Bus geht nur mit Bus-Multiplexer

Ich denke er meinte mehrere ICs die z.b. mit 2bit angesteuert werden, 
einfach alle auf 0b00 legen, und an das Bit0 eine Chipselect Leitung 
anschließen.
So kann man einfach ein Paket an die Adresse 0b01 schicken, sofern man 
vorher den ausgewählten "CS" auf 1 eingestellt hat.

Edit: Oje, sollte lernen schneller am Handy zu tippen ^^

: Bearbeitet durch User
von Easylife (Gast)


Lesenswert?

Hm... funktioniert das im laufenden Betrieb?
Hat das mal einer ausprobiert?
Ich hätte ja vermutet, dass der Adresspin einmalig beim hochfahren 
ausgewertet wird, und spätere Änderungen des Pins ignoriert werden...

von Marc V. (Firma: Vescomp) (logarithmus)


Lesenswert?

Easylife schrieb:
> Hm... funktioniert das im laufenden Betrieb?
 Klar geht das.

> Hat das mal einer ausprobiert?
 Ja, ich.

: Bearbeitet durch User
von Sebastian N. (sebastian_neusch)


Lesenswert?

Thinksilicon schrieb:
> Up to eight devices may be connected to the same bus
> by using different chip select bit combinations. These
> inputs must be connected to either VCC or VSS
> Auf gut Deutsch: Adresspins entweder mit 5V oder GND verbinden. Gibt
> eine logische 1 oder 0 an den Pins und entsprechend lassen sich 8
> verschiedene Adressen kodieren, die alle von der Basisadresse 1010
> ausgehen (Figure 3-2
> http://ww1.microchip.com/downloads/en/DeviceDoc/21189f.pdf )
>
> (Nächsten Urlaub machst dann aber bitte im englisch sprachigen Ausland
> und nicht am Baggeree :D )

Dazu: ich mach immer Downhill Urlaub im Schwarwald

Vielen Dank habe begriffen was ich wissen wollte.

Habe mir den USB to IIC Interface von ELV zum Lernen geholt,
dann kann ich daran direkt n bisschen mit meinen IIC geräten rumtesten

von Sebastian N. (sebastian_neusch)


Lesenswert?

Was gibts den für große speichermöglichkeiten für den IIC Bus also schon 
eher annähernd an 1Mbyte

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.