Forum: Mikrocontroller und Digitale Elektronik Auch 2wire an ATmega8 möglich?


von dommes (Gast)


Lesenswert?

Hi Leute!

Hab mal ne Frage zum ATmega8. Der hat ja an PortC einen SDA und einen 
SCL Pin für den Anschluss eines 2-wire-Buses. Daran kann ich zum 
Beispiel, einen oder mehrere SHT Sensor(en) anschliessen und 
kommunizieren.

Meine Frage: Müssen die Dataleitungen und die Clockleitung des Sensors 
an genau diesen Pins des AVR angeschlossen werden oder geht das auch an 
beliebigen 2 anderen Pins?
Oder anders gefragt: Kann ich neben dem 2-wire bus mit den SHT Sensoren 
auch noch einen zweiten 2-wire-bus mit anderen Sensoren (z.B: DS16S21) 
einrichten. Dieser zweite BUS kann nicht mit dem ersten vereint werden, 
weil die Protokolle unterschiedlich sind!

Also nochmal allgemein: Muss ich einen 2-wire-bus an die SDA(PC4)und 
SCL(PC 5) des ATmega8 anschliessen oder geht das an allen anderen Pins 
genauso und kann ich an den ATmega8 2 unterschiedliche 2-wire-busse 
anschliessen und verarbeiten?

...doppelt hält besser... ;)

gruß dommes

von Robert (Gast)


Lesenswert?

Hallo Dommes

Wenn du Hard I2C (= 2 Wire) vom Mega8 verwenden willst musst du an diese 
Pins deine Sensoren anschließen.

Du kannst aber auch 2 Wire softwaremäßig programmieren. Dann kannst du 
die Sensoren an beliebeigen Pins anschließen.

Gruß Robert

von dommes (Gast)


Lesenswert?

Danke für die Antwort Robert,

Was ist der Unterschied zwischen software- und hardwaremäßigem I²C?Bei 
Codevision z.B.kann ich einen I²C Bus mit dem Wizard initialisieren, da 
muss ich nur die SDA und SCL Pins angeben.Was ist das dann?

Also geht das mit den zwei 2-wire-busses an einem ATmega8?

gruß dommes

von Thomas K. (thkais)


Lesenswert?

Wenn man SDA und SCL-Pins im Compiler beliebig definieren kann, dann ist 
das ein Software-I²C. Wenn der Compiler es her gibt, dann kann man so 
viele 2-Wire-Busse realisieren, wie es Pins gibt.
Was mich nun irritiert: Unterstützt Dein Codevision auch die 
Implementierung eines anderen Protokolls? Wenn beide Protokolle I²C 
sind, ist eine Teilung unnötig, da nur die I²C-Bausteine sich 
angesprochen fühlen, die auch adressiert wurden.

von Tom (Gast)


Lesenswert?

Die SHT Sensoren sind nicht I2C kompatibel !!!

von Jörg B. (manos)


Lesenswert?

Tom wrote:
> Die SHT Sensoren sind nicht I2C kompatibel !!!

Dann wird man die dann wohl über Software realisieren müssen, da das 
Hardware-TWI wahrscheinlich nur I2C kann.

von johnny.m (Gast)


Lesenswert?

Der Code Generation Wizard der CodeVision-IDE kann einerseits (bei AVRs, 
die ein entsprechendes Hardware-Interface haben, z.B. ATMega8) eine 
Hardware-I²C (das ist der Tab "2-Wire (I2C)") und eine Software-I²C (Tab 
"I2C")...

von dommes (Gast)


Lesenswert?

ok thx
@johnny.m: das war genau das was ich wissen wollte...

> Die SHT Sensoren sind nicht I2C kompatibel !!!
@tom: Ja des stimmt,mein fehler,die busse sind nicht wirklich I²C, 
sondern halt so pseudo I²C, den man softwaremäßig machen muss...

Es gehen also mehrere verschiedene 2-wire busse!

gruß dommes

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.