STM32 mit mehreren I2C Verbindungen zu Sensoren

(Firma: Raich Gerätebau & Entwicklung) #6741931
Lesenswert?
• ▲
▼
4 I2C  könnte es bei manchen Modellen schon geben(Pinanzahl >100). 8 
sicher nicht.
Du könntest ja das auch "zu Fuß" programmieren mittels Pin toggling. Hab 
ich schon gemacht, hat problemlos funktioniert. Allerdings sollten die 
Datenmengen überblickbar sein, sonst hast du womöglich ein Zeitproblem.
 Grüsse
Gast #6741977
Lesenswert?
• ▲
▼
Bei meinem STM32H7 habe ich 4 mal I2C.
Benutze aber nur einen, denn die 4 benötigten LM73 gehen auch an einem 
Bus. Es gibt Adress-Decoder Pins am LM37, und es gibt noch den LM73-1 
mit geändertem Adressbereich.

Sag einfach mal, was du 8fach benötigst, und wir schauen nach Ersatz, 
der an einem Bus geht.
#6741980
Lesenswert?
• ▲
▼
I2C single Master läßt sich auch sehr gut in Software machen.
Das läßt sich auch leicht erweitern für mehrere Master, indem man SCK 
gemeinsam verwendet und den aktiven Master per Maskenbyte auswählt.
1
  I2C_SDA_OUT = 0;       // prepare low level
2
  mask = 1<<0;           // select master 0
3
  I2C_SDA_DIR |= mask;   // set SDA0 to low
4
  I2C_SDA_DIR &= ~mask;  // set SDA0 to high impedance
5
  if (I2C_SDA_IN & mask) // read SDA0 in

Sind die Ports 32Bit breit, lassen sich mit einer Maske bis zu 32 I2C 
Master auswählen.
#6741986
Lesenswert?
• ▲
▼
Ja genau: ich hatte I2C Lichtsensoren RGB zu verwalten. Drei Stück. alle 
Adresse 0x21. Hab dann, weil ich es nicht besser wusste, einen PCA9548A 
davor geschaltet. Geht ganz gut. Der kann acht verschiedene Bausteine 
mit gleicher Adresse ansprechen. Mutiplexer eben.

Peter D. schrieb:
> Das läßt sich auch leicht erweitern für mehrere Master, indem man SCK
> gemeinsam verwendet und den aktiven Master per Maskenbyte auswählt.

Darauf bin ich nicht gekommen, nice ... ;)

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.