Forum: Mikrocontroller und Digitale Elektronik Schnell zwischen SPI / I²C umschalten


von Thomas (Gast)


Lesenswert?

Hallo,

ich habe ein Display das ich via SPI ansteuern will und eine RTC, die 
ich über I²C ansteuern muss. Da ich die RTC nur einmal am Anfang 
programmieren muss ist meine Überlegung, kurz den SPI Bus zu 
deaktivieren und stattdessen den I²C Bus anzusteuern. Somit würde ich 
mir einen SOFT I²C Bus sparen!

Haltet ihr das für möglich, hat jemand Erfahrung damit? Wie schnell wäre 
solch eine Umschaltung?


Vielen Dank für Eure Antworten!



Gruß Thomas

von Gast (Gast)


Lesenswert?

Theoretisch ist das kein Problem, aber praktisch könnte der Fall 
eintreten, dass der RTC, welcher ja die ganze Zeit mit am Bus hängt, der 
Meinung ist, er wäre angesprochen worden und sendet seine Daten, obwohl 
die SPI gerade sendet. Geht zwar nichts kaputt aber Datensalat ist es 
trotzdem. Entweder, du deaktivierst den RTC, z.B. über die 
Betriebsspannung, oder baust noch eine Soft-I²C auf.

von Thomas (Gast)


Lesenswert?

Hey, prima, weißt Du was über die Zeiten, die der Kontroller benötigt 
zum umschalten? Lediglich die Zeit, um die Register umzuladen oder noch 
Einschwingzeiten für die Taktleitungen oder ähnliches?
Ich verwende einen 18f452! Im Datenblatt steht, dass man auf den 
Datenleitungen Pull ups braucht. Von der Taktlaeitung ist nicht die 
Rede, allerdings habe ich bislang nur Beispiele gefunden, die auch einen 
Pull up auf der Taktleitung haben. Ist der Nötig? Wenn ja, stört das 
beim SPI Modus nicht?

von Sven P. (Gast)


Lesenswert?

Thomas wrote:
> Ist der Nötig? Wenn ja, stört das
> beim SPI Modus nicht?

Ja, sonst haut das mit dem Multimaster-Zeugs und Clock-Stretching nicht 
mehr hin.
http://www.i2c-bus.org/

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.